发送 HTML 电子邮件范围
Send HTML Email Range
我有下面的脚本,它设置了一个复制到电子邮件的范围,但是我要求这个范围从第 1 列到第 13 列,同时删除第 7 列(“1:6”,“8:13”)
我已尝试各种方法来纠正此问题,但每次尝试都会导致错误。
这是我使用的代码
Set RangeCopy = Sheets("Applications").Range(Cells(1, 1), Cells(R, 13)).SpecialCells(xlCellTypeVisible)
感谢任何帮助。
谢谢。
您有几个选择 -- 通过逗号连接范围地址或构建单独的范围并使用 Union
方法。查看 Microsoft 帮助中的 How to: Refer to Multiple Ranges 文章。
使用 Union
是一种非常简洁的方法。请参阅下面的代码示例,了解您的代码。
Dim unionrng As Range
Set unionrng = Application.Union(Sheets("Applications").Range(Cells(1, 1), Cells(r, 6)), _
Sheets("Applications").Range(Cells(1, 8), Cells(r, 13)))
Sheets("Applications").Range(unionrng.Address).SpecialCells (xlCellTypeVisible)
您可以尝试在这样的循环中使用 Union。
Dim x As Long
Dim y As Long
For y = 1 To 13
For x = 1 To r
If y <> 7 Then
If RangeCopy Is Nothing Then
Set RangeCopy = cells(x, y)
Else
Set RangeCopy = Application.Union(RangeCopy, cells(x, y))
End If
End If
Next x
Next y
我有下面的脚本,它设置了一个复制到电子邮件的范围,但是我要求这个范围从第 1 列到第 13 列,同时删除第 7 列(“1:6”,“8:13”) 我已尝试各种方法来纠正此问题,但每次尝试都会导致错误。
这是我使用的代码
Set RangeCopy = Sheets("Applications").Range(Cells(1, 1), Cells(R, 13)).SpecialCells(xlCellTypeVisible)
感谢任何帮助。 谢谢。
您有几个选择 -- 通过逗号连接范围地址或构建单独的范围并使用 Union
方法。查看 Microsoft 帮助中的 How to: Refer to Multiple Ranges 文章。
使用 Union
是一种非常简洁的方法。请参阅下面的代码示例,了解您的代码。
Dim unionrng As Range
Set unionrng = Application.Union(Sheets("Applications").Range(Cells(1, 1), Cells(r, 6)), _
Sheets("Applications").Range(Cells(1, 8), Cells(r, 13)))
Sheets("Applications").Range(unionrng.Address).SpecialCells (xlCellTypeVisible)
您可以尝试在这样的循环中使用 Union。
Dim x As Long
Dim y As Long
For y = 1 To 13
For x = 1 To r
If y <> 7 Then
If RangeCopy Is Nothing Then
Set RangeCopy = cells(x, y)
Else
Set RangeCopy = Application.Union(RangeCopy, cells(x, y))
End If
End If
Next x
Next y