'====================================================================================
'1.从录制一个宏开始。操作:(ctrl+向上键、ctrl+向下键、ctrl+向左键、ctrl+向右键)
'2.看代码
'Range.End 属性
'返回一个 Range 对象,该对象代表包含源区域的区域尾端的单元格。
'等同于按键 (End+向上键、End+向下键、End+向左键、End+向右键)
'语法
'表达式.End (Direction)
'表达式 一个代表 Range 对象的变量。
'方向 写法 值
'向上 xlUp - 4162
'向下 xlDown - 4121
'向左 xlToLeft - 4159
'向右 xlToRight - 4161
'=========================================================================
方向 | 写法 | 值 |
向上 | xlup | -4162 |
向下 | xldown | -4121 |
向左 | xltoleft | -4159 |
向右 | xltoright | -4161 |
Sub test()
i = Cells(Rows.Count, 3).End(xlUp).Row
j = Cells(Rows.Count, 3).End(xlUp).Address
Range("a1", j).Select
Range("a1", Cells(i, 3)).Select
End Sub
Sub 分期付款最后月()
i = Cells(Rows.Count, 1).End(xlUp).Row '找到A列的最后一行的行号
Range("n2", Cells(i, "n")) = "" '将最后付款月下的区域清空
For j = 2 To i
k = Cells(j, "n").End(xlToLeft).Column '找到最后付款月所在的列号
Cells(j, "n") = Cells(1, k) '将对应的月份填入对应的单元格
Next j
End Sub
案例
'---------------------------------------------------------------
'这里讨论怎样找到最后一个单元格!
'不考虑最后量个单元格是:是公式,错误值,隐藏之类的特殊情况。
'以最后是一个常规的值为准。且以A列的最后一个单元格为准
'---------------------------------------------------------------
Sub 最后的单元格()
a = Cells(Rows.Count, 1).End(xlUp).Row 'end属性
b = Columns(1).Find("*", , , , , xlPrevious).Row 'find方法
c = Cells.SpecialCells(xlCellTypeLastCell).Row 'specialcells方法
d = Sheet1.UsedRange.Rows.Count 'usedrange属性
e = [a1].CurrentRegion.Rows.Count 'currentregion属性
f = WorksheetFunction.CountA([a:a]) '工作表函数counta
g = Application.CountIf([a:a], "<>") '工作表函数countif
End Sub