Вы можете использовать цикл For для построения тела вашего сообщения по одной строке за раз. Заменить следующую строку:
ebody = "Please see below a" & vbNewLine & Range("A5") & " " & Range("B5") & vbCrLf & "Best regards" & vbCrLf & "Your Partner"
со следующим кодом:
ebody = "Please see below a" & vbNewLine
For i = 5 To 100
If Range("A" & i) <> "" or Range("B" & i) <> "" Then
ebody = ebody & Range("A" & i) & " " & Range("B" & i) & vbCrLf
End If
Next i
ebody = ebody & "Best regards" & vbCrLf & "Your Partner"
Обратите внимание на два различных способа конкатенации (оператор &
), один для добавления новых строк в существующее тело:
ebody = ebody & "more text to add..."
и еще один, чтобы создать ссылку на ячейку в каждой строке. Range("A" & i)
внутри цикла приведет к добавлению к сообщению ячеек от A5 до A100 (и, аналогично, от B5 до B100).
Наконец, оператор If гарантирует, что в вашу электронную почту будут добавлены только строки, содержащие данные в ячейке A или B.