【问题标题】:VBA to compare columns in different excel files and then copy, editVBA比较不同excel文件中的列,然后复制,编辑
【发布时间】:2014-06-01 03:09:52
【问题描述】:

我是 VBA 新手,希望获得以下帮助。顺便说一句,如果有与我的问题相同的场景,我一直在搜索以前的帖子,但我没有运气找到一个。所以如果我的问题已经在不同的帖子中解决了,请您指出链接。

那么问题来了:
我有两个不同的 excel 文件,一个文件有 Original Sheet(3 列),另一个文件有 Updated Sheet(2 列)。我想将Original 的第二列与Updated 的第一列进行比较
这是棘手的部分,如果与Original 中的值相同,宏将搜索Updated 的整个第一列。如果有,它会将Updated 的第二列的对应值更改为Original 中写入的值。如果没有,它会将差异添加到Updated 的末尾部分。

下面是一个示例:

原文:

1 AAAA 1111 2 BBBB 2222 3 中交 3333 4 DDDD 4444

更新(宏之前)

AAAA 1111 BBBB 2222 DDDD 5555

更新(宏之后)

AAAA 1111 BBBB 2222 DDDD 4444 中交3333

希望我详细解释了它。任何帮助将不胜感激。

【问题讨论】:

  • 我认为你解释得很好,但你有什么办法解决你的问题?

标签: excel vba


【解决方案1】:

你应该:

  1. 对于 Original 中的每个单元格
  2. ...发现 = 假
  3. ...对于更新中的每个单元格
  4. ........如果 OrigCell = UpdCell 然后 UpdValue = OrigValue
  5. ........设置 Found = true
  6. ...下一个 UpdCell
  7. ...如果 Found = false 那么
  8. ........追加 OrigCell
  9. ........扩大更新范围
  10. 下一个 OrigCell

如果您在原始文件中重复了相同的值(假设您有两次 AAA),第 9 行将帮助更新最新的 AAA 值,并避免在更新的文件中添加两次相同的行 AAA。 我希望这会有所帮助...

【讨论】:

    猜你喜欢
    • 2018-11-14
    • 1970-01-01
    • 2011-07-31
    • 1970-01-01
    • 2014-02-04
    • 2013-02-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多