将活动单元格地址保存在变量中 vba
save active cell address in a variable vba
以下代码没有将选择的地址存储在变量 sek 中,即使 sek 被声明为范围。它正在获取所选单元格的值。我需要将单元格的地址存储为范围而不是字符串。
Range(zro(fm)).Select
Set sek = Selection
我试过了
set sek=Cells(application.address)
无法获得解决方案。
我是这样写的
For fm = 1 To tmp
Range(zro(fm)).Select
Dim sek As Range: Set sek = Selection
Range(zro(fm + 1)).Select
Dim sel As Range: Set sel = Selection
Sheets("extract").Cells((5 * a) + 1, fm).Value = Application.WorksheetFunction.max(Range("sek:sel"))
Sheets("extract").Cells((5 * a) + 2, fm).Value = Application.WorksheetFunction.Min(Range("sek:sel"))
Next
你需要的是
Application.WorksheetFunction.Max(Range(sek.Address & ":" & sel.Address))
这将合并范围。
此外,您无需激活范围即可分配它。你可以替换
Range(zro(fm)).Select
Set sek = Selection
和
Set sek = Range(zro(fm))
希望对您有所帮助。
For fm = 1 To tmp
Range(zro(fm)).Select
Dim sek As Range: Set sek = Selection
Range(zro(fm + 1)).Select
Dim sel As Range: Set sel = Selection
Sheets("extract").Cells((5 * a) + 1, fm).Value = Application.WorksheetFunction.max(Range(sek,sel))
Sheets("extract").Cells((5 * a) + 2, fm).Value = Application.WorksheetFunction.Min(Range(sek,sel))
Next
以下代码没有将选择的地址存储在变量 sek 中,即使 sek 被声明为范围。它正在获取所选单元格的值。我需要将单元格的地址存储为范围而不是字符串。
Range(zro(fm)).Select
Set sek = Selection
我试过了
set sek=Cells(application.address)
无法获得解决方案。 我是这样写的
For fm = 1 To tmp
Range(zro(fm)).Select
Dim sek As Range: Set sek = Selection
Range(zro(fm + 1)).Select
Dim sel As Range: Set sel = Selection
Sheets("extract").Cells((5 * a) + 1, fm).Value = Application.WorksheetFunction.max(Range("sek:sel"))
Sheets("extract").Cells((5 * a) + 2, fm).Value = Application.WorksheetFunction.Min(Range("sek:sel"))
Next
你需要的是
Application.WorksheetFunction.Max(Range(sek.Address & ":" & sel.Address))
这将合并范围。
此外,您无需激活范围即可分配它。你可以替换
Range(zro(fm)).Select
Set sek = Selection
和
Set sek = Range(zro(fm))
希望对您有所帮助。
For fm = 1 To tmp
Range(zro(fm)).Select
Dim sek As Range: Set sek = Selection
Range(zro(fm + 1)).Select
Dim sel As Range: Set sel = Selection
Sheets("extract").Cells((5 * a) + 1, fm).Value = Application.WorksheetFunction.max(Range(sek,sel))
Sheets("extract").Cells((5 * a) + 2, fm).Value = Application.WorksheetFunction.Min(Range(sek,sel))
Next