簡體   English   中英

如何根據多個條件將單元格從一個工作簿復制到另一個工作簿

[英]How to copy cells from one workbook to another based on multiple criteria

我會盡可能清楚地解釋我的問題。 有一張工作簿(讓我們命名為觸角)。 此表包含天線列表 - 列天線名稱,列頻率和帶有天線參數的列。 另一個工作簿還包含一個工作表。 在這個工作表(讓它是rawdata)中有列info3,它對應於天線名稱和頻率列以及其他列。 我需要一個代碼來檢查info3和頻率(workbook rawdata)中的值/文本是否與天線名稱和頻率(工作簿觸角)中的值/文本相同,然后復制參數(在灰色列中)它對應於其他工作簿中相應列(標記為紅色)的天線名稱和頻率。 列不是順序的,工作簿rawdata中的列頻率是可變的。 最好只檢查第一個符號的頻率 - 如果是9(900),或1(1800),或2(2100)。 我不知道該怎么做....我很感激這方面的幫助。

https://imgur.com/Vq6V95E https://imgur.com/psT9Z1h

不是代碼但是一些指導方針:

Option Explicit

Sub test()

    Dim wb1 As Workbook, wb2 As Workbook
    Dim LastRow1, LastRow2 As Long
    Dim rng1 As Range, rng2 As Range, Position As Range, cell As Range

    'Set the two workbooks. Keep in mind that code will works only if you have both workbooks open
    Set wb1 = Workbooks("antennalist.xls")
    Set wb2 = Workbooks("rawdata.xls")

    'Let us assume that data appears in Sheet1 & Column A in both workbooks. Find the last row of column A in both Sheets to create our ranges
    With wb1.Worksheets("Sheet1")
        LastRow1 = .Cells(.Rows.Count, "A").End(xlUp).Row
        Set rng1 = .Range("A" & LastRow1)
    End With
    With wb2.Worksheets("Sheet1")
        LastRow2 = .Cells(.Rows.Count, "A").End(xlUp).Row
        Set rng2 = .Range("A" & LastRow2)
    End With

    'Loop rawdata workbook,Sheet 1 & column A and check:
    ' 1.If the values of rawdata workbook,Sheet 1 & column A appears also in antennalist workbook,Sheet 1 & column A
    ' 2.If the value next to them match also (this is for testing purposes so you must change)
    For Each cell In rng2
        If Application.WorksheetFunction.CountIf(rng1, cell.Value) > 0 And cell.Offset(0, 1).Value = .Range("B" & rng1.Row).Value Then
        'If condition met copy from rawdata & paste to antennalist
            wb2.Worksheets("Sheet1").Range("A1:A2").Copy wb1.Worksheets("Sheet1").Range("A1:A2")
        End If
    Next cell

End Sub

暫無
暫無

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

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