Excel VBA:如果列中的值匹配,则将值从工作表1插入到工作表2

亚历山大·涅斯捷连科

我是VBA的新手,是从今天早上开始的,当时遇到了具有约3万行的电子表格。

我有两个工作表:

  1. 名为“ tohere”的列在C列中包含序数。
  2. 名为“ fromhere”的内容包含C列中的数字和B列中的值。它基本上是相同的序数,但缺少一些序号-这就是为什么我首先开始在他的位置编写宏。

我希望Excel检查“ tohere”单元格C1中的单元格中是否存在“ tohere”单元格中的数字,如果存在,则将“ fromhere”列B中相应行的值复制到“ tohere”中,单元格B1;然后针对C2等再次执行此操作。如果“ fromhere”工作表中没有此类数字,则无需对此行执行任何操作。

我尝试了这段代码:

Dim i As Long
Dim tohere As Worksheet
Dim fromhere As Worksheet

Set tohere = ThisWorkbook.Worksheets("tohere")
Set fromhere = ThisWorkbook.Worksheets("fromhere")

For i = 1 To 100
    If fromhere.Range("C" & i).Value <> tohere.Range("C" & i).Value Then
    Else: fromhere.Cells(i, "B").Copy tohere.Cells(i, "B")
    End If
Next i

对于第一个相等的单元格(在我的情况下为4),它会执行我想要的操作,然后停下来,不进一步查找。

我尝试使用Cells(i, "C")相同的东西。使用i = i + 1afterThen没有帮助。

我觉得问题出在我的手机上,但我不知道如何解决。

这是我的示例“ fromhere”列表的样子(您会注意到C列中缺少一些数字):

从这里

这是我在“ tohere”列表中得到的示例:

到这里

到达“ fromhere”中没有“ 5”的位置,并在此位置停止。

PS:i = 1 To 100只是为了测试它。

朱尔·珀汀

这应该做你的工作。运行这个,让我知道。

Sub test()
    Dim tohere            As Worksheet
    Dim fromhere          As Worksheet
    Dim rngTohere         As Range
    Dim rngfromHere       As Range
    Dim rngCelTohere      As Range
    Dim rngCelfromhere    As Range

    'Set Workbook
    Set tohere = ThisWorkbook.Worksheets("tohere")
    Set fromhere = ThisWorkbook.Worksheets("fromhere")

    'Set Column
    Set rngTohere = tohere.Columns("C")
    Set rngfromHere = fromhere.Columns("C")

    'Loop through each cell in Column C
    For Each rngCelTohere In rngTohere.Cells
        If Trim(rngCelTohere) <> "" Then
            For Each rngCelfromhere In rngfromHere.Cells
                If UCase(Trim(rngCelTohere)) = UCase(Trim(rngCelfromhere)) Then
                    rngCelTohere.Offset(, -1) = rngCelfromhere.Offset(, -1)
                    Exit For
                End If
            Next rngCelfromhere
        End If
    Next rngCelTohere

    Set tohere = Nothing
    Set fromhere = Nothing
    Set rngTohere = Nothing
    Set rngfromHere = Nothing
    Set rngCelTohere = Nothing
    Set rngCelfromhere = Nothing
End Sub

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Excel VBA:如果列中的值匹配,则将值从工作表1插入到工作表2

来自分类Dev

Excel VBA:如果数据与另一张工作表中的列中的值匹配,则复制行

来自分类Dev

Excel 2016-如果工作表1的A列中任何单元格的值=工作表2的A1,则显示工作表1的值,工作表2的A2中该行的列D

来自分类Dev

Excel Vba - 如果满足值,则将数据复制/链接到其他工作表

来自分类Dev

Excel VBA宏脚本:从工作表2中的工作表1中查找值并找到复制值

来自分类Dev

Excel,如果输入到特定列中的值等于工作表2中x列中的任何值,则会引发错误

来自分类Dev

Excel VBA代码-当工作表2中的两个单元格相等时,如何清除工作表1列的值?

来自分类Dev

如果值匹配,如何复制并粘贴到另一个工作表-Excel VBA

来自分类Dev

Excel比较工作表1和2上的列的值以及来自不同列的匹配副本数据的值

来自分类Dev

使用pandas和openpyxl在工作簿的2个Excel工作表中匹配值

来自分类Dev

Excel以匹配两个工作表中的值

来自分类Dev

如果列a =“x”,excel将单元格值复制到新工作表

来自分类Dev

如果它们在列标题上匹配,则将值从Excel中的一张表映射/复制到另一张

来自分类Dev

只有最后一个索引值被插入到 Excel 工作表中

来自分类Dev

Excel-VBA-工作表中的搜索数组值

来自分类Dev

通过工作表值在Excel中命名工作表

来自分类Dev

Excel,如果行值与另一张工作表上的 vlookup 值匹配,则求和

来自分类Dev

从Excel工作表计算值

来自分类Dev

从Excel工作表计算值

来自分类Dev

Excel - 2 个工作表中的 2 个表(如果 2 个表中的 2 个单元格匹配,则在表 2 中查找单元格值)

来自分类Dev

Excel - 只要将 A 列中的值输入到单独的工作表中,就可以粘贴 2 列引用的 B 列中的值

来自分类Dev

比较2个Excel工作表中的值并按VBA降序排序

来自分类Dev

Excel VBA 宏可根据其他工作表中的值将粘贴值复制到其他工作表

来自分类Dev

Excel VBA宏:在一个工作表中查找/匹配单元格到另一个工作表中的列

来自分类Dev

Excel - 如果单元格不为空,则将特定行单元格复制到工作表 2

来自分类Dev

将VBA子插入Excel工作表

来自分类Dev

我需要一种方法来从一个 Excel 工作表中选择特定行,如果条件匹配,则将它们复制到其他工作表中

来自分类Dev

Excel VBA 宏脚本,用于将模板工作簿中的工作表中的格式和值复制到新的附件工作簿中

来自分类Dev

Excel VBA:根据单元格值插入N个工作表

Related 相关文章

  1. 1

    Excel VBA:如果列中的值匹配,则将值从工作表1插入到工作表2

  2. 2

    Excel VBA:如果数据与另一张工作表中的列中的值匹配,则复制行

  3. 3

    Excel 2016-如果工作表1的A列中任何单元格的值=工作表2的A1,则显示工作表1的值,工作表2的A2中该行的列D

  4. 4

    Excel Vba - 如果满足值,则将数据复制/链接到其他工作表

  5. 5

    Excel VBA宏脚本:从工作表2中的工作表1中查找值并找到复制值

  6. 6

    Excel,如果输入到特定列中的值等于工作表2中x列中的任何值,则会引发错误

  7. 7

    Excel VBA代码-当工作表2中的两个单元格相等时,如何清除工作表1列的值?

  8. 8

    如果值匹配,如何复制并粘贴到另一个工作表-Excel VBA

  9. 9

    Excel比较工作表1和2上的列的值以及来自不同列的匹配副本数据的值

  10. 10

    使用pandas和openpyxl在工作簿的2个Excel工作表中匹配值

  11. 11

    Excel以匹配两个工作表中的值

  12. 12

    如果列a =“x”,excel将单元格值复制到新工作表

  13. 13

    如果它们在列标题上匹配,则将值从Excel中的一张表映射/复制到另一张

  14. 14

    只有最后一个索引值被插入到 Excel 工作表中

  15. 15

    Excel-VBA-工作表中的搜索数组值

  16. 16

    通过工作表值在Excel中命名工作表

  17. 17

    Excel,如果行值与另一张工作表上的 vlookup 值匹配,则求和

  18. 18

    从Excel工作表计算值

  19. 19

    从Excel工作表计算值

  20. 20

    Excel - 2 个工作表中的 2 个表(如果 2 个表中的 2 个单元格匹配,则在表 2 中查找单元格值)

  21. 21

    Excel - 只要将 A 列中的值输入到单独的工作表中,就可以粘贴 2 列引用的 B 列中的值

  22. 22

    比较2个Excel工作表中的值并按VBA降序排序

  23. 23

    Excel VBA 宏可根据其他工作表中的值将粘贴值复制到其他工作表

  24. 24

    Excel VBA宏:在一个工作表中查找/匹配单元格到另一个工作表中的列

  25. 25

    Excel - 如果单元格不为空,则将特定行单元格复制到工作表 2

  26. 26

    将VBA子插入Excel工作表

  27. 27

    我需要一种方法来从一个 Excel 工作表中选择特定行,如果条件匹配,则将它们复制到其他工作表中

  28. 28

    Excel VBA 宏脚本,用于将模板工作簿中的工作表中的格式和值复制到新的附件工作簿中

  29. 29

    Excel VBA:根据单元格值插入N个工作表

热门标签

归档