Excel 如何使用VBA将特定数据与多列(而不是一列)进行比较?

Excel 如何使用VBA将特定数据与多列(而不是一列)进行比较?,excel,vba,Excel,Vba,我有一些VBA代码,允许我根据同一工作簿中另一工作表的一列中的所有行的数据搜索特定单元格中的给定数据。我想将搜索扩展到第2列和第3列(B和C)。我尝试过不同的方法来扩大搜索范围,但我总是出错。我对使用VBA还不熟悉,所以请对我放松点。我确信我只是错过了一些简单的东西 Option Explicit Sub ItemID() Dim SearchPage As Worksheet Dim AllORingData As Worksheet Dim dashnumber As String Di

我有一些VBA代码,允许我根据同一工作簿中另一工作表的一列中的所有行的数据搜索特定单元格中的给定数据。我想将搜索扩展到第2列和第3列(B和C)。我尝试过不同的方法来扩大搜索范围,但我总是出错。我对使用VBA还不熟悉,所以请对我放松点。我确信我只是错过了一些简单的东西

Option Explicit

Sub ItemID()

Dim SearchPage As Worksheet
Dim AllORingData As Worksheet
Dim dashnumber As String
Dim finalrow As Integer
Dim i As Integer

Set SearchPage = Sheet2
Set AllORingData = Sheet6
dashnumber = SearchPage.Range("C4").Value

SearchPage.Range("A10:F500").ClearContents

AllORingData.Select
finalrow = Cells(Rows.Count, 1).End(xlUp).Row

For i = 2 To finalrow
    If Cells(i, 1) Like dashnumber Then
    Range(Cells(i, 1), Cells(i, 6)).Copy
    SearchPage.Select
    Range("A500").End(xlUp).Offset(1, 0).PasteSpecial xlPasteFormulasAndNumberFormats
    AllORingData.Select
    End If

Next i

SearchPage.Select

Range("C4").Select

End Sub
如果我替换:

If Cells(i, 1) Like dashnumber Then
与:

我得到了错误

运行时错误“13”:类型不匹配


我已经读了一些关于这个错误的书,我理解的是它正在寻找一个整数或一个字符串,它得到了错误的东西。我正在搜索的数据包含冒号、分号、逗号、破折号和数字。

使用
如果单元格(I,1)喜欢dashnumber,单元格(I,2)喜欢dashnumber,单元格(I,3)喜欢dashnumber,那么非常感谢。我用过或者像你建议的那样,它正是我所需要的。我会支持你的评论,但看起来我需要更多的代表。
If Range(Cells(i, 1), Cells(i, 3)) Like dashnumber Then