我已經爲此寫了一些代碼,具有以下目的:用戶必須在Sheet1上選擇一個範圍,然後按下一個指定宏的按鈕。然後,宏將檢查用戶選擇的範圍是否等於預定範圍,也在Sheet1上。如果兩個範圍相同,則宏將選擇Sheet2並完成其他任務。如果範圍不相等,則宏將停止。下面是代碼:檢查選擇是否等於預定範圍
Sub Example_1()
Dim OriginalSelection As Range
Set OriginalSelection = Selection
If Worksheets("Sheet1").Range("S8:AC8") = OriginalSelection Then
Sheets("Sheet2").Select
'The macro will do other things here
Else
Exit Sub
End If
End Sub
這就是說,每當我試圖運行宏,我得到以下錯誤:
Run-time error '13': Type Mismatch
有誰知道問題出在哪裏?我仍然試圖繞過VBA的頭腦!
謝謝:)
如果「兩個範圍相同」意味着什麼? – SJR
例如,如果預定範圍是Sheet1上的S8:AC8,並且如果用戶在Sheet1上選擇範圍S8:AC8,那麼這兩個範圍是相同的。我不是在說這裏的細胞內容。對不起,如果它是模棱兩可的,我仍然在學習適當的行話! – YesHelloThisIsDog
好吧,試試這個'If Worksheets(「Sheet1」)。Range(「S8:AC8」)。address = OriginalSelection.address'。 – SJR