我的目标:从同一行中的多个报告(已经在同一个电子表格中)获取有关同一主题的所有数据。
漫无边际的背景故事:每个月我都会收到一个新的数据转储 Excel 电子表格,其中包含几个并排(跨列)长度可变的报告。这些报告中的大多数都有重叠的主题,但并非完全重叠。幸运的是,当他们谈论同一个主题时,会用数字标注。此数字标记始终是每个报告开头的第一列。但是,由于报告的长度可变,相同的主题不在同一行中。带有数字的列永远不会移动(report1 的数字始终是 A 列,report2 的始终是 G 列,等等)并且数字始终按升序排列。
我的目标解决方案: 由于具有升序数字的列没有改变,我一直在尝试为宏编写 VBA 代码,该宏将(例如)活动数据行的数量与 A 列和 G 列的数量进行比较。如果数字是一样的,什么都不做,否则将该行(及其下方)中的所有数据从 G:J 列向下移动一行。然后移动到下一个数据行。
我试过了:我写了几个“For Each”和几个循环,用 DataRow + 1 来调用我认为可以进行比较的方法,但它们都失败了。我不知道我只是语法错误还是概念错误。此外,我的搜索都没有发现这个问题,甚至我可以掠夺和拼凑的部分。虽然这可能更多地反映了我的谷歌搜索技巧:)
任何和所有的帮助将不胜感激!
注意:如果它很重要,列有标题。我一直在使用 DataRow = Found.Row + 1 来规避。另外,我是这方面的新手并且是自学的,所以请随时详细解释