- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
2#
發表於 2020-4-27 12:57
| 只看該作者
回復 1# free72921
試試看- Option Explicit
- Sub Ex()
- Dim AR As Variant, i As Integer, E As Variant
- With Sheets("分類表")
- i = 2 '第二列開始
- Do While .Cells(i, "A") <> "" '執行一直到沒資料
- AR = AR & IIf(AR <> "", vbLf, "") & .Cells(i, "A") & "," & .Cells(i, "B") ' 接合 分類"," 物品
- '**讀取物品資料 vbLf 燦列 '**AR的型態為自串
- i = i + 1 '下一列
- Loop
- If AR <> "" Then AR = Split(AR, vbLf) '將型態為自串 轉為陣列
- End With
- With Sheets("工作頁")
- i = 2
- Do While .Cells(i, "A") <> ""
- For Each E In AR '陣列 的每一元素
- If InStr(E, .Cells(i, "A")) Then 'InStr 比對元素中是否有指定的物品
- .Cells(i, "B") = Mid(E, 1, InStr(E, ",") - 1) '寫入分類
- Exit For
- End If
- Next
- i = i + 1
- Loop
- End With
- End Sub
複製代碼 |
|