『壹』 如何用宏拆分excel工作表的行
Option Explicit
Sub 拆分行()
Dim i As Long, s As Integer
Dim Act_name As String
Act_name = ActiveSheet.Name '使用時先梁巧激活要拆分的工作表
For i = 3 To 83 Step 20
Sheets.Add after:=ActiveSheet
s = s + 1
ActiveSheet.Name = Act_name & "橡御鍵-" & s
Worksheets(Act_name).Range("1:2"拆棚).Copy ActiveSheet.Range("A1")
Worksheets(Act_name).Rows(i).Resize(20).Copy ActiveSheet.Range("A3")
Next i
End Sub
『貳』 求excel宏,將excel表格拆分為數個txt文件
Sub output()
Dim aStr As String
Dim fnm As String
Dim low, up As Long
For I = 1 To 22
fnm = Mid("key000", 1, 7 - Len(CStr(I))) & CStr(I) & ".txt"
Open ThisWorkbook.Path & "\" & fnm For Output As #1
low = CLng(InputBox("kaishi hang")) '輸入你想從第幾行開始輸出的數,比如說第一尺森簡行就春尺是1
up = CLng(InputBox("jieshuhang")) '輸入你想這個文件從陵褲第幾行結束的數,比如說第100行
'就是100
For J = low To up
aStr = Cells(J, 1)
Print #1, aStr
Next J
Close #1
Next I
End Sub
『叄』 用excel宏對sheet按指定列拆分成若干文件
操作方法如下:
將原表復制若干個表,每個表裡刪除不需要的列。
『肆』 求excel 宏,將xls文件拆分為多個,每個拆後的文件都有標題
Sub例2014123101()
DimHangAsLong,iAsLong
DimxShAsWorksheet,xWkAsWorkbook
DimnWkAsWorkbooki=0
Hang=100'100行拆分一個文件,可自行修改
SetxWk=ActiveWorkbook'需要拆分的文件為當前工作簿的當前工作表
SetxSh=ActiveSheetDoWhilexSh.Cells(i*Hang+2,1)<>""
SetnWk=Workbooks.Add
xSh.Rows(1).CopynWk.Worksheets(1).Range("A1")
xSh.Rows(i宏返*Hang+2&":"睜衡&i*Hang+101).CopynWk.Worksheets(1).Range("A2")
nWk.SaveAsFilename:=Split(xWk.FullName,蔽早飢".")(0)&"_"&i+1&".xlsx"'文件放在當前工作簿相同文件夾中,後面加上_i
nWk.Close
i=i+1
LoopMsgBox"拆分為"&i&"個文件!"
EndSub
『伍』 如何用宏命令將一個EXCEL文件(文件里有1萬多行數據)每500行數據,分成一個EXCEL文件,以次類推。
Sub 拆分陪梁表()
Application.ScreenUpdating = False
Dim clm_d, hh As Integer
Dim mycell As Range
Dim nopes As New Collection
Dim rngop As Range
Set shtop = ActiveSheet
hh = Application.CountA(Range("1:110"))
clm_d = Application.InputBox(prompt:="請選擇作為拆分的列" & Chr(13) _
& "注意:" & Chr(13) & "1、拆慎亂基分要第一行為標題行" & Chr(13) & "2、輸處列號(如1,2),用寬謹鍵盤輸入", Type:=1)
If clm_d = False Or clm_d > hh Then Exit Sub
On Error Resume Next
For Each mycell In shtop.Range(Cells(4, clm_d), (shtop.Cells(4, clm_d).End(xlDown)))
nopes.Add mycell.Value, CStr(mycell.Value)
Next mycell
On Error GoTo 0
Set rngop = Cells.CurrentRegion
For Each Item In nopes
rngop.AutoFilter Field:=clm_d, Criteria1:=Item
rngop.Copy
Sheets.Add after:=ActiveSheet
ActiveSheet.Name = Item
ActiveSheet.Paste
Next Item
rngop.AutoFilter
shtop.Activate
Application.ScreenUpdating = True
End Sub
『陸』 如何將1個excel文件中的100個工作表拆分成獨立的excel文件
手動選擇需要拆分的工作薄,比如選擇的工作薄名為「需要拆分的工作薄甲」,把該工作薄裡面的所有工作表都拆分成單獨的工作薄,並以其工作表的名稱做為新工作薄名稱,存放在本工作薄所在目錄下面的名稱為「拆分-需要拆分的工作薄甲-得到的工作薄」的文件夾中。
1、首先要選擇是否需要拆分後的工作表數值化。
2、其次選擇需要拆分的工作薄。只能選擇一個。
有一工具,保證能完成你的要求,EXCEL工具箱,張立良做的,版本應該灶舉殲是7.2了吧,很有名的,你網上搜下,如果沒找到問我要,
假定要將sheet1表第二行起每一行創建為一個新工作簿(獨立文件),工作簿以B列單元格值命名。
1、ALT+F11
2、插入模塊
3、粘貼以下代碼到模塊中
Sub 拆分()
Dim i As Long
Dim na As String
Application.ScreenUpdating = False
For i = 2 To Sheets("sheet1").Range("b65536").End(xlUp).Row
na = Sheets("sheet1").Cells(i, 2).Value
Sheets("sheet1").Copy
ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "" & na & ".xls"
Rows(i).Copy Rows("2")
Rows("3:" & Range("b65536").End(xlUp).Row).Delete
ActiveWindow.Close savechanges:=True
Next
Application.ScreenUpdating = True
End Sub
4、運行宏「拆分」
本篇經驗貼子中,我將向大家分享如何利用函數將隱沖一個Excel工作簿中的多個工作表拆分成為單獨的工作簿文件。步驟亦不負責,具體請參看內容。希望對你有所幫助!
1、打開需要編輯的Excel文檔。如圖所示,工作簿下方有很多工作表。現在需要將這些工作表單獨拆分開成一個個工作簿。
2、右鍵任意一個工作表標簽,在彈出的下拉列表中選擇查看代碼。即彈出代碼窗口。如下圖所示。
3、點擊菜單插入-模塊 在彈出的模塊對話框中 輸入以下代碼:
4、單擊運行-運行子過程|窗體 幾秒過後 彈出提示窗答旁口「文件已被拆分完畢」 如下圖所示
5、返回Excel工作簿文件所在路徑 查看 如下圖所示 原先工作簿中的工作表已經成為單獨的工作簿了!不信 可以對照查看圖中的修改日期
將多個Excel文件合並為一個Excel文件
步驟:宏--創建--輸入下面內容:
Sub CombineWorkbooks()
Dim FilesToOpen
Dim x As Integer
On Error GoTo ErrHandler
Application.ScreenUpdating = False
FilesToOpen = Application.GetOpenFilename _
(FileFilter:="MicroSoft Excel文件(*.xls),*.xls", _
MultiSelect:=True, Title:="要合並的文件")
If TypeName(FilesToOpen) = "Boolean" Then
MsgBox "沒有選中文件"
GoTo ExitHandler
End If
x = 1
While x <= UBound(FilesToOpen)
Workbooks.Open Filename:=FilesToOpen(x)
Sheets().Move after:=ThisWorkbook.Sheets _
(ThisWorkbook.Sheets.Count)
x = x + 1
Wend
ExitHandler:
Application.ScreenUpdating = True
Exit Sub
ErrHandler:
MsgBox Err.Description
Resume ExitHandler
End Sub
在要移出的工作表名處點擊右鍵,"移動或復制工作表",在"移至:"處下拉選擇新的工作簿,"確定"即可,試試看,希望可以幫到你!
用右鍵點擊工作表標簽,移動或復制工作表,工作簿-新工作簿,保存即可 。
可以按下面的步驟:(1) 在要復制的sheet標簽上點滑鼠右鍵;(2) 彈出的窗口中選"移動或復制工作表";(3) 彈出的窗口中點下拉框,然後選"(新工作簿)";(4) 如果是復制,勾選"建立副本",如果是剪切,不勾選該選項, 確定(5) 保存,這樣,一個新的excel文件就好了。 看看下面的演示過程吧。
比如SHEET2要拆分,右鍵點擊SHEET2——移動或復制——工作簿下方選項,新工作簿——確定。
方法/步驟
1
如圖所示,我們可以看到這個工作簿中有很多工作表,如何將這個工作表獨立出來,成為分一個獨立的文件呢?
2
這個時候大家可以網路一下並安裝WPS 2009,記住WPS2009的版本不要太高。下載安裝成功後記得要關閉自動升級功能。
打開WPS表格,在」工具「菜單中選擇」插件平台「
在「推薦插件」點擊「瀏覽全部插件」
在搜索框中輸入「工作簿拆分」找到對應的插件後點擊「立即安裝」按鈕。
這個時候會彈出一個小窗口點擊「允許」按鈕。
這個時候會提示安裝成功。
我們在工具欄位置也會看到這個剛剛安裝的工具。
這個時候我們選擇要拆分的EXCEL工作簿。右擊在彈出的菜單選擇打開方式為WPS。
這個時候我們點擊「工作簿拆分」工具。
這個時候我們選擇拆分出來的工作表的保存位置,並選擇後綴名為XLS,選擇要獨立出來的工作表。最後點擊「拆分」按鈕。
這個時候我們會發現工作簿中的所有以自己工作表名稱為文件名稱獨立出來,是不是很快哦?
『柒』 用excel宏對sheet按指定列內容命名拆分成若干文件
Sub列數據轉文件()
DimTworkAsWorkbook,TshtAsWorksheet,nameDic,EndRowAsLong
Application.ScreenUpdating=False
SetnameDic=CreateObject("Scripting.Dictionary")
EndRow=[A65536].End(xlUp).Row'獲取A列末行,根據實際液改吵修改為某列
ForEachrngInRange("A2:A"&EndRow)
'遍歷A列第二行開始的所有關鍵字,如非A列,請將A修改成其它列
nameDic(rng.Value)=""'將關鍵字添加至字典對象中(不會重復)
Next
IfActiveSheet.AutoFilterMode=FalseThenRange("A1:C1").AutoFilter
'將工作表A1:C1區域設置為自動篩選,按自己需要修改區域
ForEachtInnameDic.keys'遍歷字典中所有的關鍵字
Ift<>""Then
ActiveSheet.Range("$A$1:$C$"&EndRow).AutoFilterField:=1,Criteria1:=t
殲仿'鬧侍從自動篩選中篩選值為變數t的所有區域
SetTwork=Workbooks.Add:SetTsht=Twork.Sheets(1)
'新建工作簿twork對象,設置Tsht工作表對象
Range("A1").CurrentRegion.CopyTsht.Range("A1")
'將自動篩選出的所有結果復制到新的工作薄中
Twork.SaveAst:Twork.Close:SetTsht=Nothing:SetTwork=Nothing
另存新的工作簿,名字為變數t(既A列中的關鍵字),然後關閉工作簿,清空對象變數
EndIf
Next
Application.ScreenUpdating=True
EndSub