【发布时间】:2009-04-14 02:51:30
【问题描述】:
我有 3 个工作表。以下是对我正在尝试做的事情的解释。 EM11 EM12 EM01
以下步骤适用于工作表 EM11,但我想对工作表 EM12 和工作表 EM01 重复这些步骤
- 选择工作表 EM11
- 复制 J2:J65636 并复制 G2:G65636
- 创建一个名为 EM11-Count 的新工作表
- 将 J 列粘贴到名为 EM11-Count 的新工作表的单元格 A2 中
将 G 列粘贴到新工作表的单元格 B2 中。
名为 EM11-Count 的工作表现在的日期范围为 B2:B65636。
- 复制第一个日期并将其粘贴到单元格 C1 中
- 复制第二个日期并将其粘贴到单元格 D1 中
- 复制并粘贴您进入单元格 E1 的第三个日期
- 复制并粘贴您进入单元格 F1 的第四个日期
- 复制并粘贴您进入单元格 G1 的第五个日期
- 复制并粘贴您进入单元格 H1 的第六个日期 (只有六七个不同的日期)
现在工作表将如下所示
Col A Col B Col C Col D Col E
04/1/2009 04/2/2009 04/3/2009
DPR1 04/1/2009
DRS6 04/2/2009
ERJ9 04/3/2009
查看 A2:B2。现在查看 C1:H1 以查找与您在 B2 中的日期匹配的日期。假设 C1 有匹配的日期。转到C2并输入数字1。
Col A Col B Col C Col D Col E
04/1/2009 04/2/2009 04/3/2009
DPR1 04/1/2009 1
DRS6 04/2/2009
ERJ9 04/3/2009
接下来看 A3:B3。现在查看 C1:H1 以找到与 B3 中的日期匹配的日期。假设 D1 有匹配的日期。到 D3 输入数字 1。
Col A Col B Col C Col D Col E
04/1/2009 04/2/2009 04/3/2009
DPR1 04/1/2009 1
DRS6 04/2/2009 1
ERJ9 04/3/2009
接下来看 A4:B4。现在查看 C1:H1 以找到与 B4 中的日期匹配的日期。假设 E1 有匹配的日期。转到E3并输入数字1。
Col A Col B Col C Col D Col E
04/1/2009 04/2/2009 04/3/2009
DPR1 04/1/2009 1
DRS6 04/2/2009 1
ERJ9 04/3/2009 1
现在重复这个模式,直到 A:B 中的每一行都被覆盖。将出现 A:B 列中的每一行随机重复。例如,A1:B1 中的内容与 A2:B7 相同,或者 A14:B14 中的内容与 A15:B20 相同。当这些重复发生时,我想删除重复的行,但将原始行的计数/计数增加数字“1”。例如,宏完成扫描 A:B 后,工作表可能如下所示
Col A Col B Col C Col D Col E
04/1/2009 04/2/2009 04/3/2009
DPR1 04/1/2009 12
DRS6 04/2/2009 23
ERJ9 04/3/2009 57
这是我目前拥有的代码。我相信你可以看到它需要做很多工作。你能帮帮我吗?
Sub NWorksheetArrange()
Application.Goto Reference:="R2C10:R65000C10"
Selection.Copy
Sheets.Add
ActiveSheet.Paste
Sheets("Sheet3").Select
Sheets("Sheet3").Name = "EM11-COUNT"
Sheets("EM11").Select
Application.Goto Reference:="R2C7:R65000C7"
Application.CutCopyMode = False
Selection.Copy
Sheets("EM11-COUNT").Select
Range("B1").Select
ActiveSheet.Paste
Rows("1:1").Select
Application.CutCopyMode = False
Selection.Insert Shift:=xlDown
Range("B2").Select
End Sub
【问题讨论】:
-
如果您可以单击编辑,以便查看问题的原始形式。我给出的示例可能很难理解,因为我发布问题后格式发生了变化。如果您有任何问题,请告诉我。感谢您的宝贵时间。
标签: vba excel pivot-table