Excel求最后一行的代码和公式
2009-01-08 09:19
429 查看
Excel求最后一行的代码和公式
×××××××××××××××××××××××××××××××××××××××
求最后一行的代码:
Sub ls()
a = [b65536].End(xlUp).Row
‘application.ExecuteExcel4Macro("get.document(10)")
End Sub
‘i = Sheet2.[a1].CurrentRegion.Rows.Count + 1 这句代码有用
=LOOKUP(2,1/(A1:A65535<>""),A1:A65535) ‘找任何列的列的最后一行
=MATCH(9E+307,B:B) ‘找数字列的最后一行
=INDEX(B:B,MATCH("*",B:B,-1))
公式能够支持整列非连续单元格, 可以容忍中间空白,只对文字有效
=OFFSET(B1,COUNTA(B:B)-1,)
公式使用在连续的数据, 不能容忍中间空白。
=index(a:a,counta(a:a)) (A列中间不能有空格)
如果有空格用数组公式:=index(a:a,max((a1:a1000<>"")*row(a1:a1000)))
×××××××××××××××××××××××××××××××××××××××××××××
快速定位到有数据的最后一行:Ctrl+end
快速定位到最后一行:ctrl + ↓
双击工作表下框线,快速移动到该列最后一行无数据的地方单元格
=MAX(NOT(ISBLANK(A1:A65535))*ROW(A1:A65535)) ‘用数组的方法
×××××××××××××××××××××××××××××××××××××××××××××
'取得所有列中最后一行的行标,无论中间有无空行,但包括已删除的信息记录,若要获得实际有数据的最后一行则必须保存。
'Dim Mylast As Integer
'Mylast = ActiveCell.SpecialCells(xlLastCell).Row
'MsgBox Mylast
'取得到最后一行的行标,包括已删除的信息记录,但若把已删除的行删除的话,即可获得实际有数据的最后一行(不用保存)。
'LastRow = ActiveSheet.UsedRange.Rows.Count
'MsgBox LastRow
'取得所有列中最后一行的行标,无论中间有无空行,不包括已删除的信息记录。
'LastRow = Cells.Find(What:="*", SearchDirection:=xlPrevious, SearchOrder:=xlByRows).Row
'MsgBox LastRow
'该句同上一句相同
'LastRow = Cells.Find(What:="*", After:=[a1], Searchdirection:=xlPrevious).Row
'定位到A列中最后一行,无论中间有无空行。(注意代码中的A63356是指A列)不包括已删除的信息记录。
'Range("A63356").End(xlUp).EntireRow.Select
'同上
'Range("a65536").End(xlUp).Offset(0).Select
'取得所有列中最后一行的上一行的行标,无论中间有无空行,但包括已删除的信息记录。
't = ActiveSheet.UsedRange.Rows.Count
'MsgBox t
'xlDown
'xlToRight
'xlToLeft
'xlUp
'取得A列最上一行的行标,无论中间有无空行。
'MsgBox [a1].End(xlDown).Row
'取得A列最上一行的行标,无论中间有无空行。
'Range("a1").Select
'ActiveCell.End(xlDown).Activate
'MsgBox ActiveCell.Row
'定位到最后一行及最后一列交叉的单元格,但包括已删除的信息记录。
'Range("A1").Select
'ActiveCell.SpecialCells(xlLastCell).Select
'r = ActiveCell.Row
'MsgBox r
'同上
'MsgBox ActiveCell.SpecialCells(xlLastCell).Address
'定位到最后一行及最后一列交叉的单元格,但包括已删除的信息记录。
'Dim a, b
'Selection.SpecialCells(xlCellTypeLastCell).Select
'a = ActiveCell.Row '获得行号
'b = ActiveCell.Column '获得列号
'MsgBox a & b
'定位到最后一行的最后一列单元格,不包括已删除的信息记录。
'Dim Rng As Range
'Set Rng = ActiveSheet.Cells.SpecialCells(xlCellTypeConstants)
'Rng.Areas(Rng.Areas.Count).Cells(Rng.Areas(Rng.Areas.Count).Cells.Count).Select
'选择B2单元格至最后一行及数据最多一列交叉的单元格区域,不包括已删除的信息记录。
'Dim Rng As Range, c As Integer, r As Integer
'c = Cells.Find(What:="*", After:=[A1], SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column
'r = Cells.Find(What:="*", After:=[A1], SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
'Set Rng = ActiveSheet.Cells.SpecialCells(xlCellTypeConstants)
'Range(Rng.Cells(1, 1), Cells(r, c)).Select
'定位到当前单元格所在列连续数据的最后一行数据下的空格行。
'Do While Selection <> ""
'ActiveCell.Offset(1, 0).Range("a1").Select
'Loop
'Rows(ActiveCell.Row).Select
'========================================================================
'列
'ActiveCell.SpecialCells(xlLastCell).Column
'行
'ActiveCell.SpecialCells(xlLastCell).Row
'Rows(ActiveCell.Row).Select
'Worksheets("Sheet1").Activate
'ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Activate
'Cells(65536, 1).End(xlUp).Row
'ActiveSheet.UsedRange.Rows(ActiveSheet.UsedRange.Rows.Count).Row
'========================================================================
'补充及复制上一行。
'Range("A2").End(xlDown).EntireRow.Copy Range("A2").End(xlDown).Offset(1, 0)
'补充及复制上一行。
' Application.ScreenUpdating = False
' With Range("A2").End(xlDown)
' .Resize(1, 8).Copy .Offset(1, 0)
' End With
' Application.ScreenUpdating = True
'========================================================================
'数据区域的最大的列号与最大的行号,不包括删除信息。
c = ActiveSheet.UsedRange.Columns.Count
r = ActiveSheet.UsedRange.Rows.Count
Cells(r, c).Select
MsgBox c & " , " &
来致:http://hi.baidu.com/liuhoubin168/blog/item/e18c6864aa5401f5f73654e6.html
×××××××××××××××××××××××××××××××××××××××
求最后一行的代码:
Sub ls()
a = [b65536].End(xlUp).Row
‘application.ExecuteExcel4Macro("get.document(10)")
End Sub
‘i = Sheet2.[a1].CurrentRegion.Rows.Count + 1 这句代码有用
=LOOKUP(2,1/(A1:A65535<>""),A1:A65535) ‘找任何列的列的最后一行
=MATCH(9E+307,B:B) ‘找数字列的最后一行
=INDEX(B:B,MATCH("*",B:B,-1))
公式能够支持整列非连续单元格, 可以容忍中间空白,只对文字有效
=OFFSET(B1,COUNTA(B:B)-1,)
公式使用在连续的数据, 不能容忍中间空白。
=index(a:a,counta(a:a)) (A列中间不能有空格)
如果有空格用数组公式:=index(a:a,max((a1:a1000<>"")*row(a1:a1000)))
×××××××××××××××××××××××××××××××××××××××××××××
快速定位到有数据的最后一行:Ctrl+end
快速定位到最后一行:ctrl + ↓
双击工作表下框线,快速移动到该列最后一行无数据的地方单元格
=MAX(NOT(ISBLANK(A1:A65535))*ROW(A1:A65535)) ‘用数组的方法
×××××××××××××××××××××××××××××××××××××××××××××
Sub 测文件开启() Dim mN, mfn As String Application.ScreenUpdating = False mfn = InputBox("请输入文件名:") If Not theFileIsOpen(mfn) Then Workbooks.Open Filename:="D:/报表/" & mfn, UpdateLinks:=0 Else Workbooks(mfn).Activate End If End Sub Function theFileIsOpen(myFileName As String) Dim myWindow As Window For Each myWindow In Application.Windows If myWindow.Caption = myFileName Then theFileIsOpen = True End If Next End Function |
'Dim Mylast As Integer
'Mylast = ActiveCell.SpecialCells(xlLastCell).Row
'MsgBox Mylast
'取得到最后一行的行标,包括已删除的信息记录,但若把已删除的行删除的话,即可获得实际有数据的最后一行(不用保存)。
'LastRow = ActiveSheet.UsedRange.Rows.Count
'MsgBox LastRow
'取得所有列中最后一行的行标,无论中间有无空行,不包括已删除的信息记录。
'LastRow = Cells.Find(What:="*", SearchDirection:=xlPrevious, SearchOrder:=xlByRows).Row
'MsgBox LastRow
'该句同上一句相同
'LastRow = Cells.Find(What:="*", After:=[a1], Searchdirection:=xlPrevious).Row
'定位到A列中最后一行,无论中间有无空行。(注意代码中的A63356是指A列)不包括已删除的信息记录。
'Range("A63356").End(xlUp).EntireRow.Select
'同上
'Range("a65536").End(xlUp).Offset(0).Select
'取得所有列中最后一行的上一行的行标,无论中间有无空行,但包括已删除的信息记录。
't = ActiveSheet.UsedRange.Rows.Count
'MsgBox t
'xlDown
'xlToRight
'xlToLeft
'xlUp
'取得A列最上一行的行标,无论中间有无空行。
'MsgBox [a1].End(xlDown).Row
'取得A列最上一行的行标,无论中间有无空行。
'Range("a1").Select
'ActiveCell.End(xlDown).Activate
'MsgBox ActiveCell.Row
'定位到最后一行及最后一列交叉的单元格,但包括已删除的信息记录。
'Range("A1").Select
'ActiveCell.SpecialCells(xlLastCell).Select
'r = ActiveCell.Row
'MsgBox r
'同上
'MsgBox ActiveCell.SpecialCells(xlLastCell).Address
'定位到最后一行及最后一列交叉的单元格,但包括已删除的信息记录。
'Dim a, b
'Selection.SpecialCells(xlCellTypeLastCell).Select
'a = ActiveCell.Row '获得行号
'b = ActiveCell.Column '获得列号
'MsgBox a & b
'定位到最后一行的最后一列单元格,不包括已删除的信息记录。
'Dim Rng As Range
'Set Rng = ActiveSheet.Cells.SpecialCells(xlCellTypeConstants)
'Rng.Areas(Rng.Areas.Count).Cells(Rng.Areas(Rng.Areas.Count).Cells.Count).Select
'选择B2单元格至最后一行及数据最多一列交叉的单元格区域,不包括已删除的信息记录。
'Dim Rng As Range, c As Integer, r As Integer
'c = Cells.Find(What:="*", After:=[A1], SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column
'r = Cells.Find(What:="*", After:=[A1], SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
'Set Rng = ActiveSheet.Cells.SpecialCells(xlCellTypeConstants)
'Range(Rng.Cells(1, 1), Cells(r, c)).Select
'定位到当前单元格所在列连续数据的最后一行数据下的空格行。
'Do While Selection <> ""
'ActiveCell.Offset(1, 0).Range("a1").Select
'Loop
'Rows(ActiveCell.Row).Select
'========================================================================
'列
'ActiveCell.SpecialCells(xlLastCell).Column
'行
'ActiveCell.SpecialCells(xlLastCell).Row
'Rows(ActiveCell.Row).Select
'Worksheets("Sheet1").Activate
'ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Activate
'Cells(65536, 1).End(xlUp).Row
'ActiveSheet.UsedRange.Rows(ActiveSheet.UsedRange.Rows.Count).Row
'========================================================================
'补充及复制上一行。
'Range("A2").End(xlDown).EntireRow.Copy Range("A2").End(xlDown).Offset(1, 0)
'补充及复制上一行。
' Application.ScreenUpdating = False
' With Range("A2").End(xlDown)
' .Resize(1, 8).Copy .Offset(1, 0)
' End With
' Application.ScreenUpdating = True
'========================================================================
'数据区域的最大的列号与最大的行号,不包括删除信息。
c = ActiveSheet.UsedRange.Columns.Count
r = ActiveSheet.UsedRange.Rows.Count
Cells(r, c).Select
MsgBox c & " , " &
来致:http://hi.baidu.com/liuhoubin168/blog/item/e18c6864aa5401f5f73654e6.html
相关文章推荐
- easypoi 一行代码搞定excel导入导出
- 用asp实现读取文件的最后一行的代码
- Python对excel写入数据操作实例代码(改进无法合并最后一组数据的问题)
- 如何确定excel中的最后一行行号
- php一行代码获取本周一,本周日,上周一,上周日,本月一日,本月最后一日,上月一日,上月最后一日日期
- asp.net导出excel-一行代码实现excel、xml、pdf、word、html、csv等7种格式文件导出功能而且美观-SNF快速开发平台
- JQuery分别取得每行最后一列和最后一行的示例代码
- php一行代码获取本周一,本周日,上周一,上周日,本月一日,本月最后一日,上月一日,上月最后一日日期
- 利用KVO实现 UITextView 通过代码方式设置内容后,自动滚动到最后一行
- [小技巧] Excel 里快速跳到表格的首行或最后一行
- 提取EXCEL工作表中公式的单元格的代码
- 删除excel最后一行数据
- Python对excel写入数据操作实例代码(改进无法合并最后一组数据的问题)
- 显示excel最后一行
- php一行代码获取本周一,本周日,上周一,上周日,本月一日,本月最后一日,上月一日,上月最后一日日期
- NPOI取得Excel 的最后一行和最后一列
- php一行代码获取本周一,本周日,上周一,上周日,本月一日,本月最后一日,上月一日,上月最后一日日期
- 扩展NPOI,一行代码导出二进制Excel(下)
- C++ - 删除文本的最后一行 代码(C++)
- Jquery实现的table最后一行添加样式的代码