Macro crear bordes izquierdo en columnas con ciclo for

Tengo la necesidad de crear una función en macro para bordes en columnas, pero con un salto cada 3 columnas, como lo siguiente si mi borde se genera en la columna C el siguiente borde seria en la columna F.

Respuesta
1

Este ejemplo el siguiente ejemplo, para dar formato recuerda

Left da borde izquierdo, right borde derecho, Top - superior, Bottom - inferior, inside vertical son las líneas interiores verticales e inside horizontal las horizontales

Range("C2:E4").Borders(xlEdgeLeft).LineStyle = xlContinuous
Range("C2:E4").Borders(xlEdgeLeft).Weight = xlThin
Range("C2:E4").Borders(xlEdgeTop).LineStyle = xlContinuous
Range("C2:E4").Borders(xlEdgeTop).Weight = xlThin
Range("C2:E4").Borders(xlEdgeBottom).LineStyle = xlContinuous
Range("C2:E4").Borders(xlEdgeBottom).Weight = xlThin
Range("C2:E4").Borders(xlEdgeRight).LineStyle = xlContinuous
Range("C2:E4").Borders(xlEdgeRight).Weight = xlThin
Range("C2:E4").Borders(xlInsideVertical).LineStyle = xlContinuous
Range("C2:E4").Borders(xlInsideVertical).Weight = xlThin
Range("C2:E4").Borders(xlInsideHorizontal).LineStyle = xlContinuous
Range("C2:E4").Borders(xlInsideHorizontal).Weight = xlThin

https://www.youtube.com/watch?v=V0Iydbc2aSc&list=PLdK9H5dMIfQhn9waYbEdu3DYAuBdSCIBx

1 respuesta más de otro experto

Respuesta
1

B ienvenido a todoexpertos!

Responde lo siguiente y ese orden:

1. ¿Y cuál sería la fila inicial y cuál la fila final?

2. ¿Si empieza en la columna C en cuál columna quieres que termine?

3. Y qué borde quieres, ¿el sencillo?

4. Puedes poner una imagen de lo que necesitas.

¡Gracias! 

1. fila inicial A y llegar al final hacia abajo hasta donde encuentre la data

y fila final a la derecha hasta donde se tengan datos

2. en la columna que se termine la data con un fin de columna que sepa a donde detenerse

3. borde sencillo

Prueba esta macro

Sub Macro1()
  Dim lr As Long, lc As Long, i As Long
  lr = Range("A" & Rows.Count).End(3).Row
  lc = Cells(1, Columns.Count).End(1).Column
  Range("A1", Cells(lr, lc)).Borders.LineStyle = xlNone
  For i = 3 To lc Step 3
    Range(Cells(1, i), Cells(lr, i)).Borders(xlEdgeRight).LineStyle = xlContinuous
  Next
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas