Cercando di aggiungere confini a questo intervallo e terminare l'ultima fila di dati. Tuttavia i confini corrono alla linea 2050 o alla lunghezza della pagina

Ho provato a utilizzare il formato R1C1 e altri per avere i bordi fermati all'ultima row di dati della colonna A, questo leggerà "Totale – Totale".

Sub Sumif_BD_Prem_Until_LastRow() Dim LastRow As Long Dim wb1 As Workbook Set wb1 = Workbooks("macro all client v.01.xlsm") LastRow = wb1.Sheets("CGIBill").Range("A:A").Find("Overall - Total", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row LastRow1 = wb1.Sheets("CGIBill").Range("A:A").Find("Overall - Total").Row For i = 21 To LastRow Cells(i, 19) = Application.SumIfs(wb1.Sheets("Detail").Range("T:T"), w wb1.Sheets("Detail").Range("K:K"), Cells(i, 3), wb1.Sheets("Detail").Range("M:M"), Cells(i, 9)) Next With Sheets("CGIBill").Range("A20:V20" & LastRow1).Borders .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = xlAutomatic End With End Sub 

Il problema è come / where stai applicando il LastRow. Devi sostituire il valore 20 con quello che hai calcolato come.

Quindi, se cambia

 With Sheets("CGIBill").Range("A20:V20" & LastRow1).Borders 

a

 With Sheets("CGIBill").Range("A20:V" & LastRow1).Borders 

Dovresti get i tuoi risultati attesi.