我想创建一个宏来得到最后一列的每个表的值(在我的情况列R)到一个名为“MainSheet”宏来得到最后一列的值,以新的工作表
新的工作表如果有4张的最后一列值应取到mainsheet列A,B,C & d提前
感谢
我想创建一个宏来得到最后一列的每个表的值(在我的情况列R)到一个名为“MainSheet”宏来得到最后一列的值,以新的工作表
新的工作表如果有4张的最后一列值应取到mainsheet列A,B,C & d提前
感谢
假设你的数据总是以A1
在每个薄片上的要从那里复制这可能会让你开始:
Sub CopyLastColumns()
Dim cnt As Integer, sht As Worksheet, mainsht As Worksheet, col As Integer, rw As Integer
Set mainsht = Worksheets("MainSheet")
cnt = 1
For Each sht In Worksheets
If sht.Name <> "MainSheet" Then
sht.Columns(sht.Range("A1").CurrentRegion.Columns.Count).Copy
mainsht.Columns(cnt).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
mainsht.Cells(10, cnt) = sht.Range("A2")
cnt = cnt + 1
End If
Next sht
With mainsht
For col = 1 To cnt
For rw = .Cells(65536, col).End(xlUp).Row To 1 Step -1
If .Cells(rw, col) = "" Then
.Cells(rw, col).Delete Shift:=xlUp
End If
Next rw
Next col
End With
End Sub
非常感谢,此工作非常完美,但列R已合并每个工作表中的单元格,合并的单元格范围为(R2:R25),(R26:R49),( R50:R73),(R74:R97),(R98:R121),(R122:R145),(R146:R169) 这在每张表中都是不变的,当我运行脚本时,由于合并的单元格,在后续的行 任何方式来获取值连续没有合并单元格之间? – user1292831 2012-04-20 04:33:10
@ user1292831 - 查看更新的代码。我添加了一个循环来删除'MainSheet'上的空单元格。我认为这给你你需要的东西。 – 2012-04-20 07:52:52
这正是我想要的:D,我也想获得单元格A2的值,它是每个表单中的名称,并获取主数据单元的A10,B10,C10,D10 ..单元格中的数据。如果有4个单元格从4张纸张的A2值应该被提取到主板上的A10,B10,C10,D10 – user1292831 2012-04-20 08:15:18
栏“R”总是您在每张表中的最后一列还是会有所不同? – 2012-04-19 18:06:24
列R始终是每个工作表中的最后一列 – user1292831 2012-04-20 04:26:18