【问题标题】:Merge Ranges with some Columns of same data将范围与某些相同数据的列合并
【发布时间】:2018-03-02 17:16:10
【问题描述】:

我一直在尝试塑造如下图所示的数据。输入是Range("B5:E11")Range("G5:J11")Range("L5:O11") 三个范围以及所需的输出Range("B16:I26")

我基本上选择在三个for 循环中使用VBA 和.find 方法,每个循环每次都运行B, G, L 列。它变得有些复杂,因为假设您在 B 列,一旦您在其他列中搜索到相同的nameG, L,那么您还必须搜索fruit,依此类推。所以,我遇到了让我卡住的错误。

如果有人可以分享处理此问题的方法,我将不胜感激。 我也知道 Power Query 足以胜任这类工作,但无论是看那里我都无法解决这个问题。

Merge Ranges with some Columns of same data

我将文件粘贴在这里,以防有人有兴趣查看它。

https://www.dropbox.com/s/x6otpg1h74jewwe/Book1.xlsx?dl=0

谢谢大家。

【问题讨论】:

  • 请在原帖中包含您尝试过的代码。
  • 结果并不是完全可以称为精细编码。

标签: excel powerquery excel-2016 vba


【解决方案1】:

使用 Power Query,我将从每个 Month 表的 Query 开始,为每个 Query 添加月份的列,例如月份 = “四月”,月份数 = 4。

然后我将创建一个“输出”查询,该查询将使用一系列附加步骤来添加来自每个月查询的数据。

这将提供一个包含月份列的“整洁数据”表,我会将其发送到 Excel 数据模型 (Power Pivot)。在 Power Pivot 中,我会将月份的按列排序设置为月份数。

最后,我将在数据模型上创建一个数据透视表以实现所需的输出,将 Month 字段放入 Columns 中(每月生成一列)。

【讨论】:

    猜你喜欢
    • 2017-09-26
    • 2016-06-01
    • 2013-07-09
    • 2019-01-13
    • 2019-02-02
    • 2021-12-09
    • 1970-01-01
    • 1970-01-01
    • 2014-09-21
    相关资源
    最近更新 更多