Range("A1").Select
For C0 = 1 To 500
For i = 1 To 12
If (Mid(Range("C" & C0), 1, 2) = "單號") Then
Range("A" & i) = Mid(Range("C" & C0), 8, 8)
If (Range("A" & i) <> "") Then
Range("A" & i + 1).Select
End If
End If
Next
Next
我不要單號:及採購日期那些
所以用Mid 把它先放到A1 所以正常的話
應該A1的儲存格是122600001
A2的儲存格是找到單號並擷取的結果
但是一直跑出最後一個A12並且a1~a11也被a12的值取代
請高手們告訴我 要怎改 圖片是有問題的結果
樓主程式是同樣單號填12次,填完以後再選取欄位。
第二個迴圈太外層,選取欄位慢了一拍。
Range("A1").Select'起始選取
'從C1到C500尋找單號
For C0 = 1 To 500
'A1到A12(填入單號值、選取)
For i = 1 To 12
'發現單號後,A1到A12儲存格全部填入一樣單號
If (Mid(Range("C" & C0), 1, 2) = "單號") Then
Range("A" & i) = Mid(Range("C" & C0), 8, 8)
'這格有值的話,選取下格
If (Range("A" & i) <> "") Then
Range("A" & i + 1).Select
End If
End If
Next
Next
看的出來有努力過
選取A1
從指定欄位逐列尋找單號for
找到單號if
然後現在選取儲存格有值嗎?if
有,選取下一格(Selection.Offset(1, 0).Select)
現在選取格填入單號=
試試看合不合用
Dim i as Integer
i = 0
For C0 = 1 To 500
If (Mid(Range("C" & C0), 1, 2) = "單號") Then
Range("A1").Offset(i).Value = Mid(Range("C" & C0), 8, 8)
i = i + 1
End If
Next C0