首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用VBA选择整个带范围的excel工作表?

如何使用VBA选择整个带范围的excel工作表?
EN

Stack Overflow用户
提问于 2013-07-31 02:50:45
回答 11查看 322K关注 0票数 30

我在c# How to Select all the cells in a worksheet in Excel.Range object of c#?中找到了这个问题的类似解决方案。

在VBA中执行此操作的过程是什么?

我通常通过使用"ctrl+shift over arrow,down arrow“来选择整个单元格区域来选择数据。例如,当我在宏中运行它时,它会输出A1:Q398247930。我需要它只是

代码语言:javascript
复制
.SetRange Range("A1:whenever I run out of rows and columns")

没有宏,我可以很容易地自己完成,但我正在尝试使整个过程成为宏,而这只是其中的一部分。

代码语言:javascript
复制
Sub sort()
    'sort Macro
    Range("B2").Select
    ActiveWorkbook.Worksheets("Master").sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Master").sort.SortFields.Add Key:=Range("B2"), _
      SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("Master").sort
        .SetRange Range("A1:whenever I run out of rows and columns")
        .Header = xlNo
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
End Sub

编辑:

还有其他部分,我可能想使用相同的代码,但范围是说“C3:行和列的结尾”。在VBA中有没有办法获得文档中最后一个单元格的位置?

EN

回答 11

Stack Overflow用户

回答已采纳

发布于 2013-07-31 03:17:41

我相信你想要找到A1的当前区域和周围的单元格-不一定是工作表上的所有单元格。如果是这样的话-只需使用...Range("A1").CurrentRegion

票数 29
EN

Stack Overflow用户

发布于 2013-07-31 03:11:26

您可以简单地使用cells.select选择工作表中的所有单元格。你可以通过说Range(Cells.Address)来获取一个有效的地址。

如果您想要查找在其中进行了一些格式更改或输入值的最后一个Used Range,您可以调用ActiveSheet.UsedRange并从那里选择它。希望这能有所帮助

票数 23
EN

Stack Overflow用户

发布于 2015-04-15 19:47:36

您可以将所有单元格用作对象,如下所示:

代码语言:javascript
复制
Dim x as Range
Set x = Worksheets("Sheet name").Cells

X现在是一个包含整个工作表的range对象

票数 15
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17955030

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档