Excel VBA宏:在一个工作表中查找/匹配单元格到另一个工作表中的列

Jongscx

好的,所以我有一本包含多张纸的工作簿。工作表的名称为:

输入输出硬件

输入和输出是与实际IP地址匹配的序列ID。
输入1:192.168.0.1输入2:192.168.0.2 ...等等

硬件有3列。第一列具有设备,第二列具有输入序列号和第三列输出序列号。

烤面包机:输入1:输出3搅拌机:输入2:输出2 ...等

现在,通常,我将使用Vlookup(A1,Inputs!A:B,2)和Vlookup(A1,Outputs!A:B,2),但是我必须将其合并到我们拥有的VBA宏中不知道如何。

Sub TrackHardware()

'~~~~~~~~~~~~~~~~~~~~~
'Activating Device
'~~~~~~~~~~~~~~~~~~~~~
currentOutputRow = 2
Dim test As String


For currentRow = 2 To 32768 'The last row of your data
'For Loop to go through contents of Hardware individually

    If Not (IsEmpty(Worksheets("Hardware").Range("A" & currentRow).Value)) Then
        'To Skip the empty cells 

            HWID=Worksheets("Hardware").Range("a" & currentvalue).Value
            'HWID is the search term coming from Sheet:'Hardware'

            Desc=Worksheets("Hardware").Range("D" & currentvalue).Value
            'Desc is the Plain Text description coming from Sheet:'Hardware'



            inputrow={Match pseudocode that didn't work(HWID, "Inputs", Range:= "A:B", 2) }
            outputrow={Match pseudocode that didn't work(HWID, "Outputs", Range:= "A:B", 2) }
            'trying to find the row # of search term in Sheets 'Input' and 'Output'

            Worksheets("Inputs").Range("C" & inputrow).Value = Desc
            Worksheets("Outputs").Range("C" & outputrow).Value = Desc
             'Pastes The Device Description to Input and Output Sheets



    End If
Next currentRow
'And on to the next line in 'Hardware'

End Sub

我还想解决类似同一输入/输出或空白单元格上的2个设备的错误,但我想我可以自己找出这些错误。该查找功能确实给我带来了很多麻烦。

戴维·泽门斯

首先,如果您无法调用该Application.Match函数,则似乎存在问题我不确定为什么会丢失它,但是我知道有些Office / Excel“有限”版本没有完整的VBA功能。我不确定您的安装是否是这种情况。

现在,就您的问题了...

要使用该Application.Match功能:

Match函数采用单行或单列范围输入。您尝试传递范围内的值"A:B",这将始终引发错误。改为更改为单个行/列范围。

此外,2第三个参数不是选项,可以是-1(小于),0或False(精确)或1(大于)。我不确定仅此一项会引发错误,但是无论如何您都应该修复它。

inputRow = Application.Match(HWID, Worksheets("Inputs").Range("A:A"), False)

如果找不到完全匹配的内容,则会引发错误,您可以像这样捕获该错误:

inputRow = Application.Match(HWID, Worksheets("Inputs").Range("A:A"), False)
If IsError(inputRow) Then
    'Do something like:
    MsgBox HWID & " not found!", vbInformation
    Exit Sub
End If

注意如果您实际上需要检查列,则可以将Match函数加倍,也可以使用range.Find方法。

Dim foundRange as Range
Set foundRange = Range("A:B").Find(HWID)
If Not foundRange Is Nothing Then
    inputRow = foundRange.Row
Else
    MsgBox HWID & " not found!", vbInformation
End If

处理错误 WorksheetFunction.Match

错误陷阱Application.WorksheetFunction.Match应类似于:

inputRow = Empty
On Error Resume Next
inputRow = Application.WorksheetFunction.Match(HWID, Worksheets("Inputs").Range("A:A"), False)
If Err.Number <> 0 Then
    MsgBox "Match not found", vbInformation
    Exit Sub
End If
On Error GoTo 0

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在另一个工作表中粘贴单元格的位置 - Excel VBA

来自分类Dev

根据另一个工作表中的单元格隐藏一个工作表中的列-Excel VBA

来自分类Dev

在Excel中引用另一个工作表中的单元格

来自分类Dev

如何将一个Excel工作表中的单元格与另一个Excel工作表中的多个单元格相乘

来自分类Dev

Excel VBA 宏 - 找到两列中的单元格与另一个工作簿中的行和列匹配的单元格位置,然后粘贴一个值

来自分类Dev

在Excel中将某些特定单元格从一个工作表复制到另一个工作表的VBA是什么?

来自分类Dev

Excel-复制选定的单元格并粘贴到另一个工作表中列的末尾

来自分类Dev

Excel VBA代码将数据从4个特定的单元格移动到下一个可用行中的另一个工作表

来自分类Dev

Excel Macro VBA基于活动单元格内容创建到另一个工作表的超链接

来自分类Dev

Excel VBA:动态更改工作表中其名称在另一个单元格中引用的单元格值

来自分类Dev

Excel宏(VBA)对照另一个工作簿中的列表检查单元格值

来自分类Dev

如何根据值excel VBA将多行复制到特定单元格中的另一个工作表

来自分类Dev

Excel Chart范围基于另一个工作表中单元格中的值

来自分类Dev

Excel VBA-创建一个宏,将活动工作表名称插入另一个工作表单元的论坛中

来自分类Dev

如何使用参考单元格的值对另一个工作表中的excel数据求和

来自分类Dev

excel VBA,在将多个CSV文件复制到一个工作簿中的单元格中创建带有工作表或文件名的列

来自分类Dev

excel VBA,在将多个CSV文件复制到一个工作簿中的单元格中创建带有工作表或文件名的列

来自分类Dev

Excel / VBA如何在上次使用的单元格之后将数据从一个工作表移动到另一个工作表?

来自分类Dev

将特定范围的excel单元格从一个工作表复制到另一个工作表

来自分类Dev

Excel VBA,如何使用一个工作表上的下拉列表中的选择格式(颜色)另一工作表上的一系列单元格

来自分类Dev

当另一个工作表的另一个对应单元格填充相同的值时,如何使Excel自动填充工作表的单元格中的值?

来自分类Dev

如何将单元格的分隔字符串与Excel中另一个工作表的内容匹配

来自分类Dev

Excel:如何让IF函数从另一个工作表返回单元格的值

来自分类Dev

将数据复制到Excel中另一个工作表上的特定单元格区域

来自分类Dev

Excel:如果某个单元格不为空,则将行复制到另一个工作表

来自分类Dev

Excel 2016-如何检测另一个工作表中列上的最后一个单元格?

来自分类Dev

如何使用这个使用另一个值查找行的复杂逻辑从另一个 Excel 工作表中检索特定的单元格值?

来自分类Dev

参考另一个工作表VBA在Excel中重命名工作表

来自分类Dev

Excel VBA如何使用超链接将信息从一个单元格复制到工作表之间的另一个单元格

Related 相关文章

  1. 1

    在另一个工作表中粘贴单元格的位置 - Excel VBA

  2. 2

    根据另一个工作表中的单元格隐藏一个工作表中的列-Excel VBA

  3. 3

    在Excel中引用另一个工作表中的单元格

  4. 4

    如何将一个Excel工作表中的单元格与另一个Excel工作表中的多个单元格相乘

  5. 5

    Excel VBA 宏 - 找到两列中的单元格与另一个工作簿中的行和列匹配的单元格位置,然后粘贴一个值

  6. 6

    在Excel中将某些特定单元格从一个工作表复制到另一个工作表的VBA是什么?

  7. 7

    Excel-复制选定的单元格并粘贴到另一个工作表中列的末尾

  8. 8

    Excel VBA代码将数据从4个特定的单元格移动到下一个可用行中的另一个工作表

  9. 9

    Excel Macro VBA基于活动单元格内容创建到另一个工作表的超链接

  10. 10

    Excel VBA:动态更改工作表中其名称在另一个单元格中引用的单元格值

  11. 11

    Excel宏(VBA)对照另一个工作簿中的列表检查单元格值

  12. 12

    如何根据值excel VBA将多行复制到特定单元格中的另一个工作表

  13. 13

    Excel Chart范围基于另一个工作表中单元格中的值

  14. 14

    Excel VBA-创建一个宏,将活动工作表名称插入另一个工作表单元的论坛中

  15. 15

    如何使用参考单元格的值对另一个工作表中的excel数据求和

  16. 16

    excel VBA,在将多个CSV文件复制到一个工作簿中的单元格中创建带有工作表或文件名的列

  17. 17

    excel VBA,在将多个CSV文件复制到一个工作簿中的单元格中创建带有工作表或文件名的列

  18. 18

    Excel / VBA如何在上次使用的单元格之后将数据从一个工作表移动到另一个工作表?

  19. 19

    将特定范围的excel单元格从一个工作表复制到另一个工作表

  20. 20

    Excel VBA,如何使用一个工作表上的下拉列表中的选择格式(颜色)另一工作表上的一系列单元格

  21. 21

    当另一个工作表的另一个对应单元格填充相同的值时,如何使Excel自动填充工作表的单元格中的值?

  22. 22

    如何将单元格的分隔字符串与Excel中另一个工作表的内容匹配

  23. 23

    Excel:如何让IF函数从另一个工作表返回单元格的值

  24. 24

    将数据复制到Excel中另一个工作表上的特定单元格区域

  25. 25

    Excel:如果某个单元格不为空,则将行复制到另一个工作表

  26. 26

    Excel 2016-如何检测另一个工作表中列上的最后一个单元格?

  27. 27

    如何使用这个使用另一个值查找行的复杂逻辑从另一个 Excel 工作表中检索特定的单元格值?

  28. 28

    参考另一个工作表VBA在Excel中重命名工作表

  29. 29

    Excel VBA如何使用超链接将信息从一个单元格复制到工作表之间的另一个单元格

热门标签

归档