今日繼續(xù)講VBA實(shí)用代碼的第十講,相信大家通過這系列的文章學(xué)到了很多,今日著重講解OFFSET函數(shù)在VBA中的利用。
1 Range("A32", Range("A32").End(xlUp)).Select
Range(ActiveCell, ActiveCell.End(xlUp)).Select
語句說明:執(zhí)行上述代碼后選擇當(dāng)前活動(dòng)單元格向上至第一個(gè)非空單元格:
備注:ActiveCell是指當(dāng)前活動(dòng)單元格。
2 Range("A1", Range("A1").End(xltoRight)).Select
Range(ActiveCell, ActiveCell.End(xltoLeft)).Select
語句說明:執(zhí)行上述代碼后選擇當(dāng)前活動(dòng)單元格向右至第一個(gè)非空單元格。
備注:是 "xlTORight"而不是 "xlRight"
3 Range("A2", Range("A2").Offset(0, 10)).Select
Range(ActiveCell, ActiveCell.Offset(0, 10)).Select
語句說明:執(zhí)行上述代碼后選擇當(dāng)前活動(dòng)單元格向右至第10個(gè)單元格。
備注: OFFSET函數(shù)的意義與EXCEL函數(shù)中的意義有所不同。可以把他看做一個(gè)單元格的屬性,即Range.Offset 屬性。返回 Range 對象,它代表位于指定單元格區(qū)域的一定的偏移量位置上的區(qū)域。
表達(dá)式:Offset(RowOffset, ColumnOffset)
其中參數(shù):RowOffset, ColumnOffset代表偏移行,列。數(shù)字可以是正數(shù),負(fù)數(shù),零值
RowOffset 可選 Variant 區(qū)域偏移的行數(shù)(正數(shù)、負(fù)數(shù)或0(零))。正數(shù)表示向下偏移,負(fù)數(shù)表示向上偏移。默認(rèn)值是 0。
ColumnOffset 可選 Variant 區(qū)域偏移的列數(shù)(正數(shù)、負(fù)數(shù)或0(零))。正數(shù)表示向右偏移,負(fù)數(shù)表示向左偏移。默認(rèn)值是 0。
4 Range("A20", Range("A20").Offset(0, -10)).Select
Range(ActiveCell, ActiveCell.Offset(0, -10)).Select
語句說明:執(zhí)行上述代碼后選擇當(dāng)前活動(dòng)單元格向左至第10個(gè)單元格。
備注:ColumnOffset 代表 Variant 區(qū)域偏移的列數(shù),負(fù)數(shù)表示向左偏移。
5 Range("a2", Range("a2").Offset(10, 0)).Select
Range(ActiveCell, ActiveCell.Offset(10, 0)).Select
語句說明:執(zhí)行上述代碼后,選擇當(dāng)前活動(dòng)單元格向下至第10個(gè)單元格。
備注:RowOffset 代表Variant 區(qū)域偏移的行數(shù),正數(shù)表示向下偏移,負(fù)數(shù)表示向上偏移。默認(rèn)值是 0。
6 Range("A1").End(xlDown).Offset(1, 0).Select
語句說明:執(zhí)行上述代碼后,選擇該行中第一個(gè)空單元格
備注:End(xlDown)是指向下移動(dòng)
7 Range("A1").End(xltoRight).Offset(0,1).Select
語句說明:執(zhí)行上述代碼后,選擇該列中第一個(gè)空單元格:
備注:End(xltoRight)是向右移動(dòng)。
8 ActiveCell.Offset(0, -ActiveCell.Column + 1).Select
語句說明:執(zhí)行上述代碼后,移至當(dāng)前行的第一個(gè)單元格的動(dòng)作(即你按下“Home”鍵的動(dòng)作)
ActiveCell.Offset( -ActiveCell.Row + 1,0).Select
語句說明:執(zhí)行上述代碼后,移至當(dāng)前列的第一個(gè)單元格:
備注:充分利用OFFSET函數(shù),實(shí)現(xiàn)單元格的選擇。
看下面的代碼:
運(yùn)行:
9 ActiveCell.Offset(13, 14).Select
Selection.Offset(-3, -4).Select
語句說明:執(zhí)行上述代碼后,單元格間移動(dòng)。
備注:你可以定義一變量,并且用offset來實(shí)現(xiàn),
例如:varFreightRowsCount = Range("A1").CurrentRegion.Rows.Count
ActiveCell.Offset(varFreightRowsCount, 0).Select
今日內(nèi)容回向:
1 OFFSET函數(shù)在VBA和EXCEL中有什么不同?
2 OFFSET函數(shù)在VBA中有哪些精彩利用
我從事管理工作多年,這一系列文章是根據(jù)多年的經(jīng)驗(yàn)編寫的,也是一直在利用的工具,非常方便好用?,F(xiàn)在分享出來,希望能對同樣在職場打拼的朋友有些許的幫助。
我的公眾號“NZ_9668”和“VBA學(xué)習(xí)交流社群”里有更多的內(nèi)容分享。對數(shù)據(jù)分析有需要的公司、組織或個(gè)人可以直接聯(lián)系我,為你提供專業(yè)的技術(shù)支持。朋友們有問題請隨時(shí)提出來,我們一起探討學(xué)習(xí)。目的是能更好地利用Excel和VBA,提高工作效率,能有更多的時(shí)間和精力享受生活。
聯(lián)系客服