Sub ADD_DATA()
Dim rng As Range
Dim temp As Variant
Dim i As Long
Dim a As Long
Dim rng_dest As Range, flg As Boolean '★
Application.ScreenUpdating = False
i = 1
Set rng_dest = Sheets("Data").Range("D:I")
' Find first empty row in columns D:G on sheet Invoice data
Do Until WorksheetFunction.CountA(rng_dest.Rows(i)) = 0
i = i + 1
Loop
'Copy range B19:G28 on sheet Bill to Variant array
Set rng = Sheets("Bill").Range("B19:G28")
' Copy rows containing values to sheet Data
For a = 1 To rng.Rows.Count
If WorksheetFunction.CountA(rng.Rows(a)) <> 0 Then
If Not flg Then '★
'Copy Company name
Sheets("Data").Range("A" & i).Value = Sheets("Bill").Range("C3").Value
flg = True
End If '★
rng_dest.Rows(i).Value = rng.Rows(a).Value
'Copy Invoice number
Sheets("Data").Range("B" & i).Value = Sheets("Bill").Range("F5").Value
'Copy Date
Sheets("Data").Range("C" & i).Value = Sheets("Bill").Range("F7").Value
' DESPATCHED THROUGH
Sheets("Data").Range("V" & i).Value = Sheets("Bill").Range("F9").Value
' DESPATCHED FROM
Sheets("Data").Range("W" & i).Value = Sheets("Bill").Range("F11").Value
' TRANSPORT
Sheets("Data").Range("T" & i).Value = Sheets("Bill").Range("F13").Value
' VAT NO
Sheets("Data").Range("Y" & i).Value = Sheets("Bill").Range("B7").Value
' CST NO
Sheets("Data").Range("Z" & i).Value = Sheets("Bill").Range("B9").Value
' P.O. NO.
Sheets("Data").Range("P" & i).Value = Sheets("Bill").Range("C16").Value
' S.B. NO.
Sheets("Data").Range("O" & i).Value = Sheets("Bill").Range("D16").Value
' FROM
Sheets("Data").Range("AD" & i).Value = Sheets("Bill").Range("E16").Value
' LR NO.
Sheets("Data").Range("S" & i).Value = Sheets("Bill").Range("F16").Value
' MAKE
Sheets("Data").Range("Q" & i).Value = Sheets("Bill").Range("G16").Value
' ADDRESS
Sheets("Data").Range("X" & i).Value = Sheets("Bill").Range("B4").Value
' Vat 4%
Sheets("Data").Range("J" & i).Value = Sheets("Bill").Range("G30").Value
' Add. Vat 1%
Sheets("Data").Range("K" & i).Value = Sheets("Bill").Range("G31").Value
' Freight
Sheets("Data").Range("AA" & i).Value = Sheets("Bill").Range("G32").Value
i = i + 1
End If
Next a
Application.ScreenUpdating = True
End Sub