CSS*_*rmy 5 excel vba excel-vba
我已经看过几个关于使用宏查找电子表格中最后一行/单元格的线程,我有几个问题.
首先,以下代码是仅返回行值还是整个单元格值("1"或"A1")?
Dim TOS As Long
TOS = Range("A1").Row
Run Code Online (Sandbox Code Playgroud)
或者,除了显而易见的事实(它们从底部开始并找到最后一个单元加1),这些其他代码之间是否存在差异(如何显示或拉出数据)?我只需要最简单的(或者最好的,如果你有一个好的参数)一个只返回行(不是单元格).
一个.)
Dim TOS As Long
TOS = Range("A65536").End(xlUp).offset(1,0).Row
Run Code Online (Sandbox Code Playgroud)
B.)
Dim TOS As Long
With Application.Workbooks("Test").Sheets(1)
If WorksheetFunction.CountA(Cells) > 0 Then
TOS = Cells.Find(What:="*", After:=[A1], SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
End If
Run Code Online (Sandbox Code Playgroud)
C.)
Dim TOS As Long
TOS = Range("A65536").End(xlUp).Row + 1
Run Code Online (Sandbox Code Playgroud)
只拉动该行的重点是我有两个不同的表,我已经在同一个工作表上取消合并.我需要删除包含数据的列之间的空白列.它不会让我只使用"删除空白单元格"代码删除空白单元格.我假设是因为在顶部表中,列可能有空白单元格,但在底部表格中,同一列可能包含数据.如果你能解释一下如何"删除空白单元格"代码的工作,那很可能会更容易,但,我也只需要删除空白单元格列,不列,因为我需要保持分离表.
我需要回答的第二个问题是,如果我把一列和行一起,一个使用从公式(行),另一个我假设为一个字符串值,我怎么会去这样做?
前).
Range("B" & TOS:"B" & TOE).Select
Run Code Online (Sandbox Code Playgroud)
TOS和TOE是我的行值,我需要为B列中的那些行选择所有单元格.
帮助系统确认Row
返回范围中第一个区域的第一行的编号。
所以它只是一个(长)数字。
如果您想获取对行本身的引用,那么:
Dim rng As Range
Set rng = Range("A1").EntireRow
Run Code Online (Sandbox Code Playgroud)
A) 和 C) 相同,但它们查找 A 列的最后一行,而 B) 查找工作表的最后使用的行(不仅仅是 A 列)。
你的代码应该是:
Range("B" & TOS & ":B" & TOE).Select
Run Code Online (Sandbox Code Playgroud)
引号内有冒号“:”(和另一个&符号)。(不过还有其他方法可以写这个。)
要删除单元格而不是整行:
Range("A1").Delete xlShiftUp
Run Code Online (Sandbox Code Playgroud)