2013-09-27 48 views
1

基本上我在做什麼是我有數據在列AI,我試圖複製出數據[列DG]的D值。在這個循環中,我正在尋找什麼時候在D中輸入「1CME Cash-Settled Butter」。運行時錯誤'13'類型不匹配IF值=然後語句循環

然後我開始在列K(= 11)我粘貼它。然後我堆疊行。

循環重新開始並開始尋找不同的值。

我的問題是我已經運行了很多次運行的代碼。自從我沒有改變代碼,但現在我得到運行時錯誤類型'13'不匹配。有沒有辦法解決這個問題或寫新的代碼?

我剛剛學習VBA!

謝謝!

iRow = 2 
For Each i In Range("D2:D200") 
    If i.Value = "1CME Cash-Settled Butter" Then 
     Range(i.Offset(0, 0), i.Offset(0, 3)).Copy 
     Cells(iRow, 11).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False 
     iRow = iRow + 1 
    End If 
Next i 

iRow = 30 
For Each i In Range("D2:D200") 
    If i.Value = "-1CME Cash-Settled Butter" Then 
     Range(i.Offset(0, 0), i.Offset(0, 3)).Copy 
     Cells(iRow, 11).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ 
      :=False, Transpose:=False 
     iRow = iRow + 1 
    End If 
Next i 
+0

'cstr(i.Value)=「1CME現金結算黃油」試試這個 – Santosh

+0

檢查是否有任何單元格有公式錯誤? –

+0

@Santosh,它工作!!!!!!!!你真棒。非常感謝!你認爲你可以簡單解釋爲什麼Cstr()更好?我應該用Cstr替換我的其他循環嗎? – favoritewordgoeshere

回答

2

變化i.Value變爲i.Text。你不需要Value,因爲你將它與一個整數進行比較。你想檢查字符串,並使用i.Text將做到這一點。

您也可以cstr(i.Value),但這不是最好的方法。

相關問題