Excel VBA 求不定列數的和

問題如下:

如下圖:

Excel VBA 求不定列數的和

可以看到。需要求和的列,下面有一空行(即底色為黃色的列),空行與空行之間的相隔數據是不同的,有3列、有4列、有5列。那麼公式求和,就沒有那麼方便。需採用VBA一鍵操作。

代碼運行的結果如下:

Excel VBA 求不定列數的和

代碼如下:

Excel VBA 求不定列數的和

代碼解析及思路:

1:把數據區所有的數據放入數組arr。

為什麼nRow後面的數字進行了+1.是因為不加+的表達式為最後一個非空單位格,而本例最後非空單元格下方還有一列數據需要求和,所有加1

2:用for 循環遍歷數組,當為非空時,用計數器原理m=m+arr(i,1)用m求非空列的和。

3:當數組為空時,把求和的m賦值給值為空的數組,然後再初始化m。

4:在相應的區域,再寫入arr數組,此時arr數組的空列,已經有求和的值了。

點擊關注,可以閱讀更多與VBA 相關的文章

私信 VBA 可以獲取文章中含VBA代碼的Excle文件


分享到:


相關文章: