有没有办法使用 Cells.Address 作为范围 ("A1:Cells.Address") 的一部分作为函数的输入?
Is there a way to use Cells.Address as part of a range ("A1:Cells.Address") for an input to a function?
我似乎无法完成这项工作。我有一行查找数据 table 中最后一个单元格的地址。
r = Range(Range("A2"), Range("A2").End(xlDown)).Rows.Count
Range("A1", Cells(r + 1, 5).Address(RowAbsolute:=False, ColumnAbsolute:=False)).Select
然后利用这个信息,后面我需要输入E35对应的范围A1:E35:
Cells(r + 1, 5).Address(RowAbsolute:=False, ColumnAbsolute:=False))
使用 Ron de Bruin 的 CopyRangeToJPG 函数,
Function CopyRangeToJPG(NameWorksheet As String, RangeAddress As String) As String
'Ron de Bruin, 25-10-2019
Dim PictureRange As Range
With ActiveWorkbook
On Error Resume Next
.Worksheets(NameWorksheet).Activate
Set PictureRange = .Worksheets(NameWorksheet).Range(RangeAddress)
If PictureRange Is Nothing Then
MsgBox "Sorry this is not a correct range"
On Error GoTo 0
Exit Function
End If
它没有通过验证检查。 RangeAddress 字段应该是什么?我需要它是动态的,因为在这种情况下它不会总是 A1:E35 。我原以为以下方法可能有效,但我想这不是正确的方法。
CopyRangeToJPG("Sheet2", "A1:(Cells(r + 1, 5).Address(RowAbsolute:=False, ColumnAbsolute:=False))").
谢谢
CopyRangeToJPG("Sheet2", _
"A1:" & Cells(r + 1, 5).Address(RowAbsolute:=False, ColumnAbsolute:=False))
我似乎无法完成这项工作。我有一行查找数据 table 中最后一个单元格的地址。
r = Range(Range("A2"), Range("A2").End(xlDown)).Rows.Count
Range("A1", Cells(r + 1, 5).Address(RowAbsolute:=False, ColumnAbsolute:=False)).Select
然后利用这个信息,后面我需要输入E35对应的范围A1:E35:
Cells(r + 1, 5).Address(RowAbsolute:=False, ColumnAbsolute:=False))
使用 Ron de Bruin 的 CopyRangeToJPG 函数,
Function CopyRangeToJPG(NameWorksheet As String, RangeAddress As String) As String
'Ron de Bruin, 25-10-2019
Dim PictureRange As Range
With ActiveWorkbook
On Error Resume Next
.Worksheets(NameWorksheet).Activate
Set PictureRange = .Worksheets(NameWorksheet).Range(RangeAddress)
If PictureRange Is Nothing Then
MsgBox "Sorry this is not a correct range"
On Error GoTo 0
Exit Function
End If
它没有通过验证检查。 RangeAddress 字段应该是什么?我需要它是动态的,因为在这种情况下它不会总是 A1:E35 。我原以为以下方法可能有效,但我想这不是正确的方法。
CopyRangeToJPG("Sheet2", "A1:(Cells(r + 1, 5).Address(RowAbsolute:=False, ColumnAbsolute:=False))").
谢谢
CopyRangeToJPG("Sheet2", _
"A1:" & Cells(r + 1, 5).Address(RowAbsolute:=False, ColumnAbsolute:=False))