Saltar al contenido

Líneas Horizontales en Tablas


Ir a la solución Solucionado por Antoni,

Recommended Posts

publicado

Buenas tardes amigos espero estén bien

Hasta hace poco utilizaba esta macro para guardar mis datos: 

Private Sub CommandButton5_Click()
    
    ' Guardar en Matriz
    If TextBox1 = "" Then MsgBox "Datos Incompletos: La Casilla Nombres y Apellidos Esta Vacia", vbExclamation: Exit Sub
    Dim uf As Integer
    With Sheet10
    uf = .Range("B" & Rows.Count).End(xlUp).Row + 1
    .Cells(uf, 2) = TextBox1
    .Cells(uf, 3) = TextBox2
    .Cells(uf, 4) = ComboBox1
    .Cells(uf, 5) = TextBox3
    .Cells(uf, 6) = ComboBox2
    .Cells(uf, 7) = ComboBox3
    .Cells(uf, 8) = ComboBox4
    .Cells(uf, 9) = TextBox4
    .Cells(uf, 10) = ComboBox5
    .Cells(uf, 11) = TextBox5
    .Cells(uf, 15) = ComboBox9
    .Cells(uf, 16) = TextBox9
    .Cells(uf, 17) = TextBox10
    .Cells(uf, 18) = TextBox11
    .Cells(uf, 19) = TextBox12
    
End With
End Sub

Por cuestiones de practicidad y presentación de datos la cambie a esta: 

Sheets("MATRIZ").Rows("3:3").Select
With Sheet10
Selection.Insert Shift:=xlDown, COPYORIGIN:=xlFormatFromRightOrBelow
    Range("B3").Value = Me.TextBox1.Value
    Range("C3").Value = Me.TextBox2.Value
    Range("D3").Value = Me.ComboBox1.Value
    Range("E3").Value = Me.TextBox3.Value
    Range("F3").Value = Me.ComboBox2.Value
    Range("G3").Value = Me.ComboBox3.Value
    Range("H3").Value = Me.ComboBox4.Value
    Range("I3").Value = Me.TextBox4.Value
    Range("J3").Value = Me.ComboBox5.Value
    Range("K3").Value = Me.TextBox5.Value
    Range("L3").Value = Me.ComboBox6.Value
    Range("M3").Value = Me.ComboBox7.Value
    Range("N3").Value = Me.ComboBox8.Value
    Range("O3").Value = Me.ComboBox9.Value
    Range("P3").Value = Me.TextBox9.Value
    Range("Q3").Value = Me.TextBox10.Value
    Range("R3").Value = Me.TextBox11.Value
    Range("S3").Value = Me.TextBox12.Value
    Range("B2").Select

End With
End Sub

Sin embargo  he notado que luego que  comienzo a guardar los datos no aparecen las líneas horizontales que delimitan  la parte inferior de las filas y las celdas  ¿Qué podría estar pasando, faltado o sobrando para que suceda esto?

Mucho les abre agradecer en lo que me puedan ayudar.

Imagen1.jpg

publicado

Lo que estás experimentando podría deberse a la forma en que insertas las nuevas filas. Cuando usas el método Insert, desplazas las celdas existentes hacia abajo y puede que no copie los bordes de las celdas desplazadas.

Podrías necesitar agregar un código adicional para aplicar los bordes después de insertar una nueva fila. Así que con lo que podría participar en tu consulta sería con este ejemplo:

With Sheets("MATRIZ").Rows(3).Borders(xlEdgeBottom)
    .LineStyle = xlContinuous
    .ColorIndex = 0
    .TintAndShade = 0
    .Weight = xlThin
End With

 

  • Solution
publicado

Utiliza Selection.ListObject.ListRows.Add (1)  en lugar de Selection.Insert Shift:=xlDown, COPYORIGIN:=xlFormatFromRightOrBelow

Conéctate para comentar

Podrás dejar un comentario después de conectarte



Conéctate ahora
×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.