【问题标题】:VBA Copy select cells from row in source worksheet to target worksheet if column A values match如果A列值匹配,VBA将源工作表中的行中的选择单元格复制到目标工作表
【发布时间】:2015-10-29 22:06:15
【问题描述】:

我需要一个 VBA 脚本来查看源工作表的 A 列中的帐号,并在目标工作表的 A 列中找到它的完全匹配。找到匹配项后,需要将源工作表中的“J”到“M”单元格复制到目标工作表的“O”到“S”单元格中。

源工作表中有大约 80 行,目标工作表中有 500 多行。两个工作表中的帐号将完全匹配,但数字从一行到下一行不是连续的。

非常感谢任何帮助。

【问题讨论】:

  • 你需要改进你的问题

标签: vba excel


【解决方案1】:
Sheet target
Sheet source
String accountNum

set target = Workbook.sheet("sheetName")
set source = ActiveSheet

accountNum = Selection.cell(1,1)

Boolean found
Integer i
i = 1
found = false
while(target.cell(i,1) <> "" AND NOT found)
    if (target.cell(i,1) = accountNum) then found = true
wend

if not found then return

for Integer j = 0 to 3
    target.cell(i, j + 15) = source.cell(Selection.Row, j + 10)
next

请注意,我多年来没有做过太多的 VBA,所以语法可能会关闭。

【讨论】:

    【解决方案2】:

    这样的事情可能对你有用:

    For i = 1 to 90
        For j = 1 to 600
            If SourceWorksheet.Range("A" & i).Value _ 
                = TargetWorksheet.Range("A" & j).Value Then
                TargetWorksheet.Range("O" & j, "S" & j) _  
                    = SourceWorksheet.Range("J" & i, "M" & i)
            End If
        Next j
    Next i
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-08
      • 1970-01-01
      • 2016-06-16
      相关资源
      最近更新 更多