【VBA初學者教程】- 第一章 VBA入門知識:相對引用單元格
今天的文章標題比較拗口,但也很容易理解,就是給定一個單元格,選定的單元格或單元格區域相對於給定的單元格的偏移。處理位於相對於其他單元格的某一位置單元格的常用方法是使用Offset屬性。
其實在VBA中使用相對引用,和Offset函數的使用方法類似,沒學習過Offset函數的可以移步【Excel技巧】- 辦公常用的十大函數@OFFSET函數進行學習哦。
既然前期已經為大家介紹了Offset函數,有了基礎,再來通過動態演示Offset公式,相必大家就能更好的掌握了。具體動態圖演示如下:
其實如上動態圖中的動態效果,很好實現,就是通過輸入不同的起始單元格,加上相應的偏移和高度以及寬度,就可以使用函數計算出開始和終止的行列數了。至於如何在左側A1:I15動態顯示區域,就用到了VBA代碼了。有能力的小夥伴可以直接參照上圖效果,自己製作一個哦。
設置單元格(區域)背景色的代碼如下:
Sub SetColor()n Range("C5:F8").Interior.Color = 192n 清空底色n Range("A1:I15").Interior.Pattern = xlNonen 高度和寬度小於等於0,不設置底色n If [M10].Text <= 0 Or [M11].Text <= 0 Then Exit Subn 設置底色n Range([M7].Text).Offset([M8].Text, [M9].Text).Resize([M10].Text, [M11].Text).Interior.Color = 192nEnd Subn
在VBA代碼中,使用Offset結合Resize來設置單元格區域,區域找到後,就可以設置背景色了。
在使用宏錄製的時候,也是可以選擇相對引用的哦,可能大家平時很少用到,所以也就忽略它的存在了,使用方法演示如下:
在錄製宏之前記得勾選【開發工具】→【代碼】→【使用相對引用】哦。然後錄製宏就會發現錄製的代碼都是使用Offset進行相對引用了。
有的小夥伴就要問了,既然相對引用那麼麻煩,究竟什麼情況下才會使用到呢?舉個栗子,當希望把內容填充到滑鼠選擇的地方,具體請見我的VBA課程視頻截取片段,視頻如下(建議在Wifi下觀看,土豪隨意):
https://www.zhihu.com/video/882190689151098881
看完上面的視頻,我想大家對Offset相對引用單元格有了一定的了解。視頻通過騰訊轉碼後清晰度下降好多,如果想觀看清晰視頻或想要素材的小夥伴可以在公眾號回復「20170704」得到哦~後期文章附帶的素材,大家都可以通過在公眾號回復該文檔發送的日期得到,歡迎下載學習^_^Written by Steven in 20170704^_^
微信公眾號:SaveUTime
SUT學習交流群:615356012,入群審核人:Steven
關注公眾號,提高效率,節約您的時間!
推薦閱讀: