2016-02-25 61 views
0

我在第28行(如果語句)出現「」錯誤。我不確定是什麼問題,因爲我已經正確地定義了一切,並確保路徑得到更正。有人可以幫忙嗎?我試圖從一張紙到另一張紙上爲每個用戶抓取相應的組。這裏是我的代碼:對於excel,vbscript未知運行時錯誤

for each ColValue1 in objWorksheet1.Range("A1:A" & intlastrow1) 
    introw1= introw1+1 
    for each ColValue2 in objWorksheet2.Range("A1:A" & intLastRow2) 
     introw2 = introw2+2 
     if ColValue1 = ColValue2 then 
      ... 
+1

ColValue1和ColValue2聲明爲什麼?如果您將它們聲明爲範圍,請嘗試使用ColValue1.Value = ColValue2.Value,然後使用 – MatthewD

+0

VBScript或VBA?我認爲它是VBA,VBS是不同的。另外,錯誤是什麼意思? – vacip

+2

您無法比較對象,只能對這些對象的屬性進行比較。如果這些是範圍,請嘗試比較它們的.Value或.Address屬性,具體取決於您的需要。 – vacip

回答

1

您正在循環的單元應該被聲明爲一個範圍。然後比較它們的值。

Dim ws As Excel.Worksheet 
Set ws = ActiveWorkbook.Sheets("Sheet1") 

Dim ColValue1 As Range 
Dim ColValue2 As Range 

Set ColValue1 = ws.Range("A1") 
Set ColValue2 = ws.Range("A2") 

If ColValue1.Value = ColValue2.Value Then 
    MsgBox "They are the same" 
Else 
    MsgBox "They are not the same" 
End If