如何使用Excel VBA在InnerText中复制或插入多个范围数据

时间:2019-04-11 10:58:12

标签: excel vba

我正在尝试使用Internet Explorer通过VMA通过VMA发送电子邮件。 我在Range(“ A1:AL4”)中有数据,我想将此数据放入gmail的撰写正文中。如果我尝试像在A1上那样使用单个范围,则我的代码可以工作,但不适用于多个单元格。

'Insert Email content
IE.document.querySelector("div[class*= LW-avf]").innerText = Sheets("Sheet1").Range("A1:AL4").Value

我想要电子邮件正文中从A1到AL4的全部数据。

1 个答案:

答案 0 :(得分:0)

您可以尝试这样的事情:

Dim cell As Range
Dim sht As Worksheet
Dim emailBody As String
emailBody = ""
Set sht = ThisWorkbook.Worksheets("Sheet1")
For Each cell In sht.Range("A1:AL4").cells
    emailBody = emailBody & cell.Value
Next cell

因此,基本上,您可以连接范围内的所有字符串,并形成一个大字符串,然后可以将其分配给电子邮件的正文。

当然,如果在每个单元格的内容之间需要空格或换行符,则可以这样做:

emailBody = emailBody & " " & cell.Value

emailBody = emailBody & vbNewLine & cell.Value