excel vba 實例(11)-拆分單元格並自動填充

之前介紹過快速合併相同單元格的實例,傳送門在這裡:

Excel vba 實例(5) - 快速合併n多個相同值的單元格

前幾天後臺有夥伴提出,能不能來個逆的操作,拆分合並的單元格並填充。

還是之前的那個圖如下,ABCDE組已經合併好了。

excel vba 實例(11)-拆分單元格並自動填充

現在的要求就是拆分合並的這幾組,然後要把組名對應的填充進去。

同樣也不難,把代碼放上來

Sub ubMergeRange()
Dim Rng As Range
Dim i&, Col&, Fist, Last
Set Rng = Application.InputBox("請選擇單列數據列!", Type:=8)
'用戶選擇數據列
Set Rng = Intersect(Rng.Parent.UsedRange, Rng)
'intersect語句避免用戶選擇整列造成無謂運算
On Error Resume Next
Rng.Parent.Select '激活Rng對象所在的工作表,避免跨工作表操作問題
Rng.UnMerge
Rng.SpecialCells(xlCellTypeBlanks) = "=" & Rng.SpecialCells(xlCellTypeBlanks)(1, 1).Offset(-1).Address(0, 0)
Rng.Copy: Rng.PasteSpecial xlPasteValuesAndNumberFormats
Application.CutCopyMode = False
Rng.VerticalAlignment = xlCenter '格式上下居中
Application.ScreenUpdating = True
Application.DisplayAlerts = True
MsgBox "拆分填充完成。"
End Sub

效果如下:

excel vba 實例(11)-拆分單元格並自動填充

同樣的,永恆君把上面實例VBA的文件分享出來,需要的就直接使用吧。

wx公號(圖片上有)後臺回覆拆分填充即可。


不少人對VBA代碼有牴觸心理,其實沒有那麼複雜,把他看成一個稍微複雜點的函數即可。

當然如果並不打算深入學習VBA,只是臨時使用下,那隻要會複製黏貼就好了!

至於怎麼用VBA代碼,可以參考之前的文章:

Excel vba 實例(1) - 批量製作工資表頭

Excel vba 實例(2) - 批量將工作表拆分為單獨文件

Excel vba 實例(3) - 多個工作簿批量合併

Excel vba 實例(4) - 根據已有名稱,批量新建表格

Excel vba 實例(5) - 快速合併n多個相同值的單元格

Excel vba 實例(6) - 一鍵彙總多個sheet數據到總表

Excel vba 實例(7)-一鍵批量打印工作簿

Excel vba 實例(8)- 利用正則表達式進行定向提取

Excel vba 實例(9)- 批量插入、刪除表格中的空行

Excel vba 實例(10)- 統計同一列中出現次數並標註


Excel VBA功能很強大,但是要熟練的運用起來還是有一定的難度,好在永恆君幫大家蒐集了幾套關於VBA的視頻教程,非常的實用。

需要的話,後臺回覆“VBA”獲取吧~~

excel vba 實例(11)-拆分單元格並自動填充

excel vba 實例(11)-拆分單元格並自動填充

excel vba 實例(11)-拆分單元格並自動填充

歡迎交流!


分享到:


相關文章: