大家好, 今天和大家分享“這樣的資料處理, 你絕對搞不定”, 這個標題只是一個標題, 有些朋友肯定可以搞定, 但是大部分還是搞不定, 不信, 你自己思考5分鐘, 看你什麼快速方法處理它, 把A列, B列的資料處理成C列, D列這樣, 如下圖
一、解決方法
1、動畫效果
2、代碼
Option Explicit
Sub 處理()
Dim arr1, arr2, arr3(1 To 10000, 1 To 2), x, y, k
Range("D1").CurrentRegion.Clear '把原有的資料清空
arr1 = Range("A1").CurrentRegion '把資料裝入陣列arr1
For x = 2 To UBound(arr1) '迴圈陣列arr1
arr2 = VBA.Split(arr1(x, 2), ", ") '按中文狀態下逗號分隔, 再裝入陣列arr2
For y = 0 To UBound(arr2) '迴圈陣列arr2
k = k + 1 '計數
arr3(k, 1) = arr1(x, 1) '把產品名稱裝入arr3
arr3(k, 2) = arr2(y) '把拆分出來的顏色裝入arr3
Next y
Next x
[d1] = "名稱": [E1] = "顏色"
[D2].Resize(k, 2) = arr3 '讀出結果
Range("D1").CurrentRegion.Borders.LineStyle = 1 '添加邊框
End Sub
Sub 清空()
Range("D1").CurrentRegion.Clear
End Sub
3、具體操作方法
第1步:複製上面的代碼
第2步:快速鍵alt+F11打開vbe後臺, 插入功能表, 模組
第3步:Ctrl+V粘貼代碼
第4步:把游標定位任意一個行代碼中, 快速鍵F5運行代碼