目标:编写将设置不连续范围的VBA sub,特别是13列 - 每隔一列 - 等于点击事件时13列宽和132行长的连续数据范围。
我有两份财务报表,我希望能够并排比较。单击活动x按钮,在财务报表1的列之间插入列,然后从财务报表2(包含在另一个工作表中)中获取列,并将它们显示在财务报表1中相应列的旁边。
仅使用VBA代码。拿什么是
总计| 1月| 2月| 3月....并使其成为
汇总|总计|一月|一月|二月|二月|三月|三月.....
我开发的当前代码运行速度极慢,并且出于某种原因在每列之间插入“June”列。
帮助!
Sub BudgetBudgetCheck_Click()
If BudgetActual.Value = "True" And BudgetBudgetCheck.Value = "True" Then
For colx = 6 To 36 Step 2
Columns(colx).Insert shift = xlRight
Next
End Sub
Private Sub BudgetActual_Click()
For i = 4 To 28 Step 2
For j = 2 To 14
Columns(i).Value = Worksheets("P&L - Monthly Budget").Columns(j).Value
Next
Next
End If
End Sub
答案 0 :(得分:0)
Dim rngOne as range, rngTwo as range, x as long, col_offset
Set rngOne = worksheets("statement1").Range("A1").resize(132,13)
Set rngTwo = worksheets("statement2").Range("A1").resize(132,13)
with worksheets("summary")
.usedrange.clearcontents
for x=1 to 13
col_offset = (x-1)*2
rngOne.columns(x).copy .cells(1,col_offset+1)
rngTwo.columns(x).copy .cells(1,col_offset+2)
next x
end with