如果您也不想放棄這個機會的話,我願壹試,請HI我留言。
回答者: lxlzmh2002 - 大魔法師 八級 2009-8-19 04:40
=========================================================================
樓主,今天幫人寫了壹個多表合並的VBA程序,忽然想起好象看過有類似要求的貼子,所以就找到您這個貼子,再來回答壹次:
VBA代碼如下:
Dim sht As Worksheet
Dim rs As Long, js As Long, ds As Long
Dim i As Integer
On Error Resume Next
Set sht = Sheets("匯總")
If Err.Number = 0 Then
Sheets("匯總").Select
ActiveSheet.Range("A1").CurrentRegion.ClearContents
Else
Sheets.Add before:=Sheets(1)
ActiveSheet.Name = "匯總"
End If
Sheets(2).Range("1:1").Copy Sheets("匯總").Range("A1")
For i = 2 To Sheets.Count
ds = Sheets("匯總").Range("A65536").End(xlUp).Row + 1
rs = Sheets(i).Range("A65536").End(xlUp).Row
js = Sheets(i).Range("A1").End(xlToRight).Column
With Sheets(i)
.Select
.Range(Cells(2, 1), Cells(rs, js)).Copy Sheets("匯總").Cells(ds, 1)
End With
Next
Sheets("匯總").Select
上述代碼使用方法如下:
錄制宏:菜單"工具"->宏->錄制宏)--> "宏名"處給宏取名字->設定快捷鍵,"快捷鍵"下面輸入壹個字母-->確定後開始錄制宏。
編輯宏:開始錄制後即可直接按停止鍵, 然後編輯宏(工具->宏->宏(M)->選擇剛建那個宏->點右邊的"編輯"按鈕-->進入宏編輯界面-->刪除Sub XXX 至 End Sub之間所有內容-->然後粘貼上述程序代碼-->按工具欄上的"保存"按鈕-->"文件"菜單-->關閉並反回MicorSoft Excel
執行宏: 按剛剛設定的快捷鍵(Ctrl+那個字母), 或者通過菜單"工具"-->宏-->宏(M)-->窗口上選宏名, 按"執行"按鈕執行宏.
===================================================================
這段VBA代碼功能說明:
1.執行VBA代碼之後,程序會自己增加壹個名為"匯總"的工作表.
2.將sheet1(叫不叫sheet1無索味,程序自會知道名字)的第壹行作為"匯總"表的第壹行。
3.然後依次將除"匯總"表以外的工作表內, 從第二行開始的所有行所有列以追加方式添加到"匯總"表內(通常認為第壹行是標題)
4.追加過程,相當於復制粘貼,但要比手工復制粘貼快得多,可以說是瞬間完成。且是您用快捷鍵執行壹次,所有工作表全部匯總壹次。
行與不行,您壹試便知。關於這個代碼的使用方面有問題,請Hi我~~~~~