我正在将多列中列出的数据放入单列(A)中。如果B列中存在数据,则抓取该数据,将其粘贴在A列中数据的末尾,然后返回并删除现在为空的列B,该列将所有其他列移动到一列上,以便现在有数据存在B列,直到除了A列之外没有更多的数据列。我现在这样做的方式是通过列出下面的相同代码的多个块,其显然效率不高,代码早晚会打破。任何建议表示赞赏!循环将所有列移入一列
Range("B1").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Cut
Range("A1").Select
Selection.End(xlDown).Select
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveSheet.Paste
Selection.End(xlUp).Select
ActiveCell.Offset(0, 1).Columns("A:A").EntireColumn.Select
Selection.Delete Shift:=xlToLeft
ActiveCell.Offset(0, -1).Range("A1").Select
尝试一下,然后返回循环代码。那我们可以帮忙。 – Sorceri 2015-02-05 20:51:43
请[停止使用.select](http://stackoverflow.com/questions/10714251/how-to-avoid-using-select-in-excel-vba-macros) – Chrismas007 2015-02-05 20:56:50
谢谢你参考上一篇文章@ Chrismas007讨论了使用范围和避免选择。这非常有用。 – Joseph 2015-02-05 22:36:19