首页 > 解决方案 > 从两个不同的工作表中获取值,然后复制到另一个工作表

问题描述

我有两张纸,一张用于帐户,另一张用于用户。我想做的是为每个用户匹配每张纸上的国家列,然后在另一张纸上将电子邮件地址和每个不同的帐户添加到单独的行中。

我的帐户表有大约 20k 行,用户表有大约 50 行。

帐户用户
帐户国家电子邮件国家
1234567 美国 john.doe@compnay.com 美国
2345678 GB jane.doe@company.com GB
9876543 GB
8765432 法国

这不是循环每一行帐户,它只是从它匹配的每张表中获取第一条记录。

Dim accounts As Worksheet
Dim accountteams As Worksheet
Dim usr As Worksheet
Dim lastRow As Long
Dim rng As Range
Dim cell As Range
Dim j As Integer

Set accounts = Worksheets("Accounts")
Set accountteams = Worksheets("AccountTeams")
Set usr = Worksheets("Users")

lastRow = usr.Cells(usr.Rows.Count, "C").End(xlUp).Row

For i = 2 To lastRow
    If accounts.Range("C" & i).Value = "AU" Then
        accountteams.Cells(i + 0, 1) = usr.Cells(i, 4).Value
        accountteams.Cells(i + 0, 2).Value = accounts.Cells(i, 3).Value
    End If
Next i

标签: excelvba

解决方案


推荐阅读