vba:end属性

'====================================================================================
'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

vba:end属性_第1张图片


案例

'---------------------------------------------------------------
'这里讨论怎样找到最后一个单元格!
'不考虑最后量个单元格是:是公式,错误值,隐藏之类的特殊情况。
'以最后是一个常规的值为准。且以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
vba:end属性_第2张图片

 

你可能感兴趣的:(VBA,excel,学习)