Macros 宏来查找一列中的值和另一列中的值,以便在前两个值均为真时返回不同列中的值
我有一个工作表,需要从另一个文件中提取数据。我需要一个宏来分别获取活动工作表每一行中a列和D列中的值,并将这些值分别与其他文件a列和F列中的值进行比较。如果在此工作表的行中找到匹配项,则我希望它获取B列和C列中的值,并将它们放入第一个工作表的B列和C列中。我对构建宏还不熟悉,而这一次让我在如何获取所需的方面遇到了难题。有人能帮忙吗 工作表示例: 第一份工作表 第二工作表Macros 宏来查找一列中的值和另一列中的值,以便在前两个值均为真时返回不同列中的值,macros,comparison,Macros,Comparison,我有一个工作表,需要从另一个文件中提取数据。我需要一个宏来分别获取活动工作表每一行中a列和D列中的值,并将这些值分别与其他文件a列和F列中的值进行比较。如果在此工作表的行中找到匹配项,则我希望它获取B列和C列中的值,并将它们放入第一个工作表的B列和C列中。我对构建宏还不熟悉,而这一次让我在如何获取所需的方面遇到了难题。有人能帮忙吗 工作表示例: 第一份工作表 第二工作表 我想出了一个解决办法。我结合了顶部组件和组件项,并对两个列进行了VLOOKUP。这是草率的,因为它能工作 Columns("
我想出了一个解决办法。我结合了顶部组件和组件项,并对两个列进行了VLOOKUP。这是草率的,因为它能工作
Columns("B:B").Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Sheets("Potential Issues").Select
Range("B1").Select
ActiveCell.FormulaR1C1 = "Unique Top Assembly Comp Item Number"
Range("C1").Select
ActiveCell.FormulaR1C1 = "NHA Item"
Range("D1").Select
ActiveCell.FormulaR1C1 = "NHA User Item Type"
With ActiveSheet.Range("A2").CurrentRegion
If .Columns(1).SpecialCells(xlCellTypeVisible).Count > 1 Then
With .Columns(2)
.Resize(.Rows.Count - 1).Offset(1).SpecialCells(xlCellTypeVisible).FormulaR1C1 = "=RC[-1]&RC[3]"
End With
End If
End With
Cells.Select
Selection.Copy
Range("A1").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("A1").Select
With ActiveSheet.Range("A2").CurrentRegion
If .Columns(1).SpecialCells(xlCellTypeVisible).Count > 1 Then
With .Columns(3)
.Resize(.Rows.Count - 1).Offset(1).SpecialCells(xlCellTypeVisible).FormulaR1C1 = _
"=VLOOKUP(C[-1],'B2.0 Buys Exploded BOM'!C2:C4,2,0)"
End With
End If
End With
With ActiveSheet.Range("A2").CurrentRegion
If .Columns(1).SpecialCells(xlCellTypeVisible).Count > 1 Then
With .Columns(4)
.Resize(.Rows.Count - 1).Offset(1).SpecialCells(xlCellTypeVisible).FormulaR1C1 = _
"=VLOOKUP(C[-2],'B2.0 Buys Exploded BOM'!C2:C4,3,0)"
End With
End If
End With
Cells.Select
Selection.Copy
Range("A1").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Columns("B:B").Select
Selection.ColumnWidth = 21
Columns("C:C").Select
Selection.ColumnWidth = 24
Columns("D:D").Select
Selection.ColumnWidth = 15
Range("B:B,G:H").Select
Selection.EntireColumn.Hidden = True
Range("A1").Select