Todos os dias eu corro uma lista, é sempre diferente. Ele terá diferentes quantidades de linhas com valores diferentes todos os dias.
Eu codifiquei para que eu tenha bordas horizontais exatamente como eu quero, mas agora eu preciso das bordas verticais (laterais - esquerda e direita). Eu gostaria de bordas finas em todas as células que contenham texto ou um valor de algum tipo, em todas as colunas e todas as linhas após incluir a linha 1. Novamente, a quantidade de linhas e colunas variará todos os dias, por isso é importante que o código possa contabilizar por isso.
Option Explicit
Sub Borders()
Dim WS As Worksheet
Dim dataRange As Range
Dim v As Variant, I As Long
Set WS = ActiveWorkbook.Worksheets("Sheet1")
With WS
Set dataRange = Range(.Cells(2, 1), Cells(.Rows.Count, 10).End(xlUp))
Set dataRange = dataRange.Resize(rowsize:=dataRange.Rows.Count + 1)
With dataRange
v = .Columns(10)
For I = 1 To UBound(v) - 1
If v(I, 1) <> v(I + 1, 1) Then
With .Rows(I).Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Color = vbBlack
.Weight = xlMedium
End With
Else
.Rows(I).Borders(xlEdgeBottom).LineStyle = 1 'Default Border
End If
Next I
End With
End With
'This is where I'd like the code for the vertical borders to go
End Sub
Isso define bordas verticais para todas as células no intervalo usado após a linha 1.