我知道这可能已经得到了回答,但我已经搜索过以前的问题,找不到适合我的答案。
基本上我有一个excel电子表格,可以根据工作流程每日/每周/每月更新一次。我需要的是一个宏,它找到最后一个'使用过的'列(标题在第5行),直接在其右边插入一个空白列 - (我们在末尾有一个需要移动的总计表)&将最后使用的所有列数据复制到新创建的列中。
这可能是一个非常简单的代码,但我刚开始使用VBA并希望有人可以提供帮助!!我希望,一旦我开始做一些点点滴滴,我就可以积累我的知识!
提前致谢
艾玛
答案 0 :(得分:2)
从这里开始:Copy last column with data on specified row to the next blank column和此处:Excel VBA- Finding the last column with data
Sub Test()
Dim ws As Worksheet
Set ws = ActiveSheet
Dim rLastCell As Range
Dim LastCol As Integer
Set rLastCell = ws.Cells.Find(What:="*", After:=ws.Cells(1, 1), LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlPrevious, MatchCase:=False)
LastCol = rLastCell.Column
ws.Columns(LastCol).Copy ws.Columns(LastCol + 1)
End Sub
答案 1 :(得分:1)
懒惰的极简主义解决方案:
Sub Macro1()
Dim col As Integer
col = Range("A5").End(xlToRight).Column
Columns(col).Copy
Columns(col + 1).Insert Shift:=xlToRight
End Sub
如果单元格A5中没有任何内容,这将会崩溃。