我有两个Excel文件:
基于Excel 2中的A列,我有一些唯一的数字,我需要将它们与Excel中的A列相匹配。一旦完成,行的其余部分需要以某种方式(重复值)复制到另一个表中。完成后,根据复制的数据,我们需要识别A列Excel 1中的值,该值在其余行上有一个或多个重复值。
答案 0 :(得分:1)
所以你的问题并不是非常具体,这使得它很难回答。但是,我相信我明白你在问什么。
我假设您将打开其中一个工作簿。 (要么是Excel 1'要么是' Excel 2'然后想要运行一个宏来完成繁重的工作。这里有一些示例代码供您试用。我假设你将以Excel 1'打开然后我将您的匹配项复制到新工作表而不是新工作簿。
Dim wbk as Workbook
Dim Total1Rows as Long
Dim Total2Rows as Long
Dim ws as Worksheet
Dim NewRows as Int
Application.ScreenUpdating = False
Set wbk = Workbooks.Open(" file location of 'Excel 2' ")
Set ws = ThisWorkbook.Sheets.Add(After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count))
ws.Name = "Pick a Name"
Total1Rows = Worksheets(" 'Excel 1' name of worksheet ").UsedRange.Rows.Count
Total2Rows = wbk.Worksheets(" 'Excel 2' name of worksheet ").UsedRange.Rows.Count
For i = 1 to Total1Rows
For j = 1 to Total2Rows
If Worksheets(" 'Excel 1' name of worksheet ").Range("A" & i) = wbk.Worksheets(" 'Excel 2' Name of Worksheet ").Range("A" & j) Then
NewRows = Worksheets(ws.Name).Range("A" & Rows.Count).End(xlUp).Row
wbk.Worksheets(" 'Excel 2' name of worksheet").Range("A" & j & ":Z" & J).Copy
Worksheets(" 'Excel 1' name of worksheet").Range("A" & NewRows).PasteSpecial
End If
Next j
Next i
这实际上是我第一次发布答案,所以请原谅。