Sub 債券貼()
Dim rng As Range, rng1 As Range, TP As Range, TP1 As Range
Dim D(1) As Object
Set D(1) = CreateObject("scripting.dictionary")
Sheets("工作表1").Select
With Range("a1:a50")
Set TP = .Find(what:="交易部位", LookIn:=xlValues, lookat:=xlWhole, searchdirection:=xlNext)
End With
Set rng = TP.Offset(2)
Do While rng <> ""
With rng
D(1)(rng.Value) = Array(Val(.Offset(, 8)), Val(.Offset(, 9)), Val(.Offset(, 10)), Val(.Offset(, 11)), Val(.Offset(, 12)))
End With
Set rng = rng.Offset(1)
Loop
Sheets("債券-已交割部位(台幣)").Select
With Range("a1:a50")
Set TP1 = .Find(what:="交易部位", LookIn:=xlValues, lookat:=xlWhole, searchdirection:=xlNext)
End With
Set rng1 = TP1.Offset(1)
Do While rng1 <> ""
With rng1
.Offset(, 8) = D(1)(rng1.Value)(0) '這裡出現錯誤
.Offset(, 9) = D(1)(rng1.Value)(1)
.Offset(, 10) = D(1)(rng1.Value)(2)
.Offset(, 11) = D(1)(rng1.Value)(3)
.Offset(, 12) = D(1)(rng1.Value)(4)
End With
Set rng1 = rng1.Offset(1)
Loop