我正在尝试创建一个有助于每月任务的宏。到目前为止,我记录下面用文本到列操作列N,然后将整个列复制到名为“删除重复项”的新选项卡中。然后删除该列中的重复项。从这里开始,我想在删除重复项后,在B列的每个剩余项目下面插入4行。我不知道如何编写代码,以便在下面没有更多文本时停止插入行。
e.C::m=10
在这4行中,文字只能说'item 1','item2','item3'和'item4'。因此,例如,如果在删除重复项后,我在列B中留下5行文本,我想在每个现有行下面插入20行,4行(尽管最后一行可能不需要插入任何新行,因为没有任何内容在它下面)。然后在新的4行中的每一行中,它应分别表示'item1',item2'等。
最后,如果可能,我想复制B列中的所有行,并将其粘贴到名为“摘要”的新标签中。此选项卡已经有一个项目列表,也在B列中,我想将新行粘贴到此列表的底部,只需添加即可。
有没有办法创建一些可以实现此目的的代码?
如果这令人困惑,我道歉。我可以回答任何不清楚的问题。
提前致谢!
因此,使用下面提供的代码(我将其扩展为6行),加上我自己的一些研究,我设法获得额外的行,以及复制和粘贴到另一个选项卡的底部 - 和 - 运行。这是我目前的代码:
Columns("O:O").Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Columns("N:N").Select
Selection.TextToColumns Destination:=Range("N1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _
:="-", FieldInfo:=Array(Array(1, 1), Array(2, 1)), TrailingMinusNumbers:=True
Columns("N:N").Select
Selection.Copy
Sheets("Remove Duplicates").Select
Columns("B:B").Select
ActiveSheet.Paste
Application.CutCopyMode = False
ActiveSheet.Range("$B$1:$B$104").RemoveDuplicates Columns:=1, Header:=xlNo
Rows("4:7").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Rows("9:12").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Rows("14:17").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Rows("19:22").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Rows("24:27").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Rows("29:32").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Rows("34:38").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
最后一块,如果有人可以提供帮助,则添加相同的文字集(称之为'第1项','第2项','第3项','第4项','第5项','第6项')每个新添加的6行。真的很感谢到目前为止的所有帮助!
答案 0 :(得分:0)
假设在B2上开始数据行,请尝试使用此代码在每个数据行后插入4行。
Screens