Option Explicit
Sub TEST()
Dim Brr, Crr, A, i&, j%, M%
'↑宣告變數
Brr = Range([A2], [A65536].End(3))
'↑令Brr變數是 二維陣列,以A欄儲存格值帶入
ReDim Crr(1 To UBound(Brr), 1 To 100)
'↑令Crr變數是 二維空陣列,縱向範圍同Brr陣列,橫向1~100
For i = 1 To UBound(Brr)
'↑設順迴圈!逐列執行
If InStr(Brr(i, 1), "fee$") = 0 Then GoTo i01 Else: A = Split(Brr(i, 1), "fee$")
'↑如果Brr陣列值不包含 "fee$"就跳到標示i01位置繼續執行,
'否則就令A變數是 一維陣列,以"fee$" 分割Brr陣列值帶入A陣列裡
If M < UBound(A) Then M = UBound(A)
'↑如果M變數小於A陣列的最大索引號,就令M變數是 A陣列的最大索引號
For j = 1 To UBound(A): Crr(i, j) = Val(A(j)): Next
'↑設順迴圈!將A陣列值轉化為數值後寫入Crr陣列裡
i01: Next
[B2].Resize(UBound(Brr), M) = Crr
'↑令Crr陣列值從[B2]開始寫入匡列的儲存格中,超過範圍的陣列值忽略
Erase Brr, Crr, A
'↑令釋放變數
End Sub
'==================================================
'補充:以下另一種情況
Sub TEST_1()
Dim Brr, Crr, A, i&, j%, M%
Brr = Range([A2], [A65536].End(3))
ReDim Crr(1 To UBound(Brr), 1 To 100)
For i = 1 To UBound(Brr)
If InStr(Brr(i, 1), "fee") = 0 Then GoTo i01 Else: A = Split(Brr(i, 1), "fee")
If M < UBound(A) Then M = UBound(A)
For j = 1 To UBound(A): Crr(i, j) = Val(Replace(A(j), "$", "")): Next
i01: Next
[B2].Resize(UBound(Brr), M) = Crr
Erase Brr, Crr, A
End Sub