【发布时间】:2021-11-15 11:57:55
【问题描述】:
我有一个问题,我正在寻找的是制作一个自适应的代码(唯一修改的是行数,而不是列数),我需要给它一个名字,因为我将使用list 作为高级过滤器选项中的列表范围,列整数作为标准范围,这是我的代码,如果您提出其他建议,我接受建议。
Dim sht As Worksheet
Dim LastRow As Long
Dim LastColumn As Long
Dim StartCell As Range
Set sht = Worksheets("Sheet1")
Set StartCell = Range("A1")
LastRow = sht.Cells(sht.Rows.Count, StartCell.Column.End(xlUp).Row)
LastColumn = sht.Cells(StartCell.Row, sht.Columns.Count.End(xlToLeft).Column)
sht.Range(StartCell, sht.Cells(LastRow, LastColumn).Select)
P.s:我是 VBA 的新手
【问题讨论】:
-
值是否在连续范围内,即没有空列或空行?然后你可以使用 Currentregion - 这让一切变得更容易:
sht.range("A1").currentregion会给你你所需要的 - 无论行数如何 (docs.microsoft.com/en-us/office/vba/api/…)