【发布时间】:2017-04-05 12:44:59
【问题描述】:
我有这个包含 100K+ 记录的数据集。 并且在 1 行单元格中,它包含多个产品代码,以逗号 (,) 分隔。该单元格可能包含 1 - 5 个产品代码,以逗号分隔。
有一个唯一的 ID 号。标记到每个产品代码。 这是棘手的部分:
- 我需要拆分,所以每个单元格只包含 1 个项目
- 并在下面为每个产品代码创建一个新列
- 然后用其他行中包含的数据填充新列
意思是说
Row A | Row B | Row C | Row D|
Unique ID | Product ID | Price | MSRP |
1232 | 123,342,432| $5 | $10 |
我需要把这条记录转换成,
Row A | Row B | Row C | Row D|
Unique ID | Product ID | Price | MSRP |
1232 | 123 | $5 | $10 |
1232 | 342 | $5 | $10 |
1232 | 432 | $5 | $10 |
除了“文本到列”之外还有其他方法可以复制并粘贴记录中的其他数据吗? 我是 VBA 的新手,但我愿意尝试一下。
【问题讨论】:
-
但我愿意试一试 - 请展示您尝试过的努力以及失败的地方。然后我们可以帮助您解决它们。 SO 不是“为我编写代码”服务。
-
开始的提示:循环遍历所有行。使用
yourArray = split()将它们拆分为一个数组,由分隔符,分隔。使用x = UBound(yourArray)获取数组大小并复制实际行 x 次。然后将数组中的值写入实际和生成的行中。 -
@Scott,我现在正在做的是手动操作。第 1 步:将 B 列移动到列尾 第 2 步:用分隔符 ( , ) 按列拆分 第 3 步:复制从 D 列向前拆分的内容并传输到最后一行 第 4 步:拖动 A 列的信息- C 向下
-
@Peh,你在做 VBA 吗?我是 VBA 新手,所以我想弄清楚一切
标签: vba excel excel-2016