簡體   English   中英

匹配兩個工作簿中的數據並復制特定單元格

[英]Match data in two workbooks and copy a specific cell

我有兩個名為 main 和 checker 的工作簿。 每一張都有同名的單張紙。 檢查器工作簿的數據存儲在 H2 上。

在主工作簿中,A 列有參考編號。 我希望當我在檢查器的 A 列中鍵入參考號並單擊按鈕時,代碼將檢查該參考號是否存在於主工作表的 A 列中,如果存在,則將數據從檢查器的 H2 復制到主工作簿 I 列。

我不想粘貼到目前為止的內容,因為這很可惜。

如果我理解正確,你需要這樣的東西(閱讀評論並在需要的地方放置正確的數據)。

Sub ChechReferences()
Dim MainSht As Worksheet
Dim CheckSht As Worksheet

Set MainSht = Workbooks("Main_workbook_name").Sheets("Sheet_name") 'Replace Main_workbook_name and Sheet_name with proper names
Set CheckSht = Workbooks("Check_workbook_name").Sheets("Sheet_name") 'Replace Main_workbook_name and Sheet_name with proper names

Dim ReferencesRangeMain As range
Dim ReferencesRangeChecker As range
Dim CellChecker As range
Dim CellMain As range

With MainSht
    Set ReferencesRangeMain = range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp))
End With

If ReferencesRangeMain.Rows.Count = 1 Then
    If ReferencesRangeMain.Cells(1, 1) = "" Then Exit Sub
End If

With CheckSht
    Set ReferencesRangeChecker = range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp))
End With

If ReferencesRangeChecker.Rows.Count = 1 Then
    If ReferencesRangeChecker.Cells(1, 1) = "" Then Exit Sub
End If


For Each CellChecker In ReferencesRangeChecker
    For Each CellMain In ReferencesRangeMain
        If CellChecker = CellMain Then

            'This is for copying value from column H and row of cell with reference from checker sheet
            'to the column E and row where the reference was found on the main sheet
            'e.g. if you type reference to A5 on a checker sheet, and reference will be found at A8 on
            'the main sheet - then cell H5 on check sheet will be copied to I8 on a main sheet
            CheckSht.Cells(CellChecker.row, 8).Copy Destination:=MainSht.Cells(CellMain.row, 5)

        End If
    Next
Next

End Sub

無論如何,如果這不是您所需要的,我想您會發現如何修復復制范圍。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM