【正文】
一個(gè)整型變量39。range(a65536)指一個(gè)range對象,具體指第一列最后一行。ROW返回區(qū)域中第一塊的第一行的行號(hào)。 Erow).ClearContentsFor Each c In If Total Then Serow = c.[a65536].End(xlUp).Row Erow = Sheets(Total).[a65536].End(xlUp).Row + 1 (a4:l amp。 Erow) End IfNext cEnd Sub方法二Sub SQLConbime()Range(A4:L65536).ClearContentsDim iRow As Integer, sqlTemp As String, sql As String Set n = CreateObject() provider=。data source= amp。 amp。 iRow amp。 union amp。 yy).ClearContents Set conn = CreateObject() For i = 1 To 4 provider=。data source= amp。 Range(p amp。 $a3:l1000] [a65536].End(xlUp).Offset(1, 0).CopyFromRecordset (Sq2) Next i Set conn = NothingEnd Sub把工作簿中的200多張表復(fù)制到一張工作表里?(首選)我是做收款工作的,每天收款情況做一張表格,現(xiàn)在快一年了,今天老板突然要我把這9個(gè)月積累的每日數(shù)據(jù)全部反映到一張工作表上,其實(shí)點(diǎn)復(fù)制粘貼200多張表不是大問題,主要是怕中途看花了眼,漏了或者重復(fù)了就很麻煩,請教高手幫忙,用公式或者VBA,小弟感激不盡。, R1%, Rs%, Ls%’amp。%:整數(shù)型。每頁從第2行開始復(fù)制(可修改) = False’ 如果對指定對象啟用事件,則該值為 True。With Sheets(i)Rs = . + 1 R1’ 對于 Worksheet 對象,Rows 屬性返回代表指定工作表所有行的 Range 對象。工作表上已使用區(qū)域的行數(shù)。描述:返回集合或 Dictionary 對象中的條目數(shù)。語法: object 總是“應(yīng)用于”列表中某一項(xiàng)的名稱。arr = .Range(a amp。Resize 屬性。返回 Range 對象,該對象代表調(diào)整后的區(qū)域。該表達(dá)式返回要調(diào)整大小的 Range 對象。新區(qū)域中的行數(shù)。 ColumnSize Variant類型,可選。如果省略該參數(shù)。Range(a65536).End(xlUp).Offset(1).Resize(Rs, Ls) = arrEnd WithNext = True = TrueEnd Sub修改“開始行號(hào)”。關(guān)閉VBE窗口。Excel多個(gè)工作簿中的工作表合并到一個(gè)工作簿中 有時(shí),需要將多個(gè)Excel工作簿中的工作表合并到一個(gè)工作簿中。(此方法將一個(gè)工作簿中所有的工作表復(fù)制到一張工作表上)方法1Sub CombineWorkbooks()Dim wk As WorkbookDim sh As WorksheetDim strFileName As StringDim strFileDir As StringDim nm As Stringnm = strFileDir = amp。 *.xls)Do While strFileName vbNullStringIf strFileName nm ThenMsgBox strFileNameSet wk = (Filename:=strFileDir amp。取主文件名,For Each sh In After:=()39。 Else().Name = strFileNameEnd IfNext SaveChanges:=FalseEnd IfstrFileName = DirLoop = TrueEnd Sub方法2Sub UnWorksheets() = FalseDim lj As StringDim dirname As StringDim nm As StringDim sname As StringDim i As Integer, ii As Integerlj = nm = dirname = Dir(lj amp。查找文件Do While dirname If dirname nm Then Filename:=lj amp。 dirname 39。統(tǒng)計(jì)工作表個(gè)數(shù)39。好用!Sub UnionWorksheets() = False’關(guān)閉屏幕更新Dim lj As String Dim dirname As StringDim nm As StringDim i As Integer, ii As Integerlj = ’ Path 屬性。nm = ’ Name屬性。變量賦值使用=“等號(hào)”,“=”后的值可以是單純的數(shù)值、字符串或表達(dá)式。 \*.xls)’ Dir 函數(shù)?!?Clear 方法。Do While dirname ’前置式DO…LOOP循環(huán)。 \ amp。“”為比較運(yùn)算符“不等于”。Workbooks(nm)屬使用工作簿名稱引用workbook,語法格式為:workbook( 工作簿名稱)。復(fù)制新打開工作簿的每一個(gè)工作表的已用區(qū)域到當(dāng)前工作表For i = 1 To iiWorkbooks(dirname).Sheets(i). _Range(a65536).End(xlUp).Offset(2, 0)’ UsedRange 屬性。只讀NextWorkbooks(dirname).Close False’ Close 方法。語法: object始終是一個(gè) TextStream 對象的名字End Ifdirname = DirLoopEnd Sub如何利用VBA將多工作表的數(shù)據(jù)匯總而不復(fù)制標(biāo)題?A:將sheet2工作表中待復(fù)制的數(shù)據(jù)定義為“表1”,將sheet3工作表中待復(fù)制的數(shù)據(jù)定義為“表2”ALT+F11→新建模塊,并輸入如下代碼 Sub 利用表僅復(fù)制數(shù)據(jù)()Dim sh As Worksheet, IFor Each sh In WorksheetsIf Sheet1 Then I = I + 1 Range(表 amp。下面的代碼可以將某個(gè)磁盤目錄下的多個(gè)xls文件的復(fù)制到含有這段代碼的xls文件中,而且xls文件可以根據(jù)處理worksheet的數(shù)量自動(dòng)的增加xls文件中worksheet的數(shù)量