❶ Excel中怎樣利用vba實現-全選-復制-新建Excel文件-選擇性數值粘貼到新文件-保存,保存文件名為某一單元格
既然都可以說得那來么清楚,我自就把說明與注意點,直接備注在代碼中了,完整代碼如下
Subadmin()
DimxWkAsWorkbook,xShAsWorksheet,xRanAsRange
DimnWkAsWorkbook
'要復制內容為當天工作表
SetxWk=ActiveWorkbook
SetxSh=ActiveSheet
'保存的文件名為A1單元格里的內容,如果是其它單元格,修改這里
SetxRan=xSh.Range("A1")
SetnWk=Workbooks.Add
xSh.Cells.Copy
nWk.Worksheets(1).Range("A1").PasteSpecialxlPasteValues
'保存在與復制內容同一目錄下
nWk.SaveAsxWk.Path&""&xRan.Value
EndSub
❷ VBA新建一個excel文件,並且這個excel裡面含有5個sheet,如何操作
OptionExplicit
Subtest1()
DimwbAsWorkbook
Setwb=Workbooks.Add
Withwb.Worksheets
.AddAfter:=wb.Worksheets(.Count),Count:=5-.Count
EndWith
'以下是可選代碼
'將新建的工作簿激活為當前窗口
wb.Activate
'將工作簿保存到D盤根目錄,名字為newWorkbook.xlsx,格式為.xlsx格式(excel2007及以上版本默認格式)
wb.SaveAs"D: ewWorkbook.xlsx",56
EndSub
Subtest2()
'如果是從外部程序創建,如在word中執行操作,則需要先創建個excel對象。
DimappExcelAsExcel.Application
DimwbAsWorkbook
SetappExcel=CreateObject("Excel.Application")
Setwb=appExcel.Workbooks.Add
Withwb.Worksheets
.AddAfter:=wb.Worksheets(.Count),Count:=5-.Count
EndWith
EndSub
❸ 如何用VBA新建一個新的excel表並將其保存在指定目錄下
Sub新建()
Workbooks.Add
ActiveWorkbook.SaveAs"C: est.xls",True
MsgBox"新建Excel工作薄完成"
EndSub
❹ vba生成excel文件
使用vba生成一個excel 文件,可以使用以下方法:
1 Workbooks.Add 方法
1.1 語法
新建一個工作表。新工作表將成為活動工作表。
語法
表達式.Add(Template)
表達式 一個代表 Workbooks 對象的變數。
參數
名稱 必選/可選 數據類型 說明
Template 可選 Variant 確定如何創建新工作簿。如果此參數為指定現有 Microsoft Excel 文件名的字元串,那麼創建新工作簿將以該指定的文件作為模板。如果此參數為常量,新工作簿將包含一個指定類型的工作表。可為以下 XlWBATemplate 常量之一:xlWBATChart、xlWBATExcel4IntlMacroSheet、xlWBATExcel4MacroSheet 或 xlWBATWorksheet。如果省略此參數,Microsoft Excel 將創建包含一定數目空白工作表的新工作簿(該數目由 SheetsInNewWorkbook 屬性設置)。
返回值
一個代表新工作簿的 Workbook 對象。
說明
如果 Template 參數指定的是文件,則該文件名可包含路徑。
1.2 workbooks.add 會自動打開一個「工作簿1」這類的wb文件,並activate之
workbooks.add 會自動生成一個 " 工作簿N" 的WB文件,且active
workbooks.add 在add後,會打開一個「工作簿1」這類的wb文件
並且最後add的 wb文件 成為新的 activeworkbook
Sub test98()
Workbooks.Add
End Sub
1.3 workbooks.add(template)
template Variant 類型,可選
1.3.1 template如果指定為 EXCEL內置的常量
可為以下 XlWBATemplate 常量之一
xlWBATChart
xlWBATExcel4IntlMacroSheet
xlWBATExcel4MacroSheet
xlWBATWorksheet
Sub test91()
Workbooks.Add (xlWBATChart)
Workbooks.Add (xlWBATWorksheet)
Workbooks.Add (xlWBATExcel4MacroSheet)
Workbooks.Add (xlWBATExcel4IntlMacroSheet)
End Sub
1.3.2 若 template指定為文本,文本是一個文件路徑,文件必須先存在
(暫時沒發現有什麼用處)
template 如果本參數為指定一現有 Microsoft Excel 文件名的字元串,那麼創建新工作簿將以該指定的文件作為模板
如果template指定為文件,文件必須先存在,否則報錯。
那麼template為一個路徑
如果是完整的絕對路徑,則需要帶path
如果只是相對路徑,那麼 excel 2010版本會去這兒找這個文件:D\用戶目錄/我的文檔下面 ,默認目錄?
好像指定過後會把新的路徑當默認路徑
Sub test96()
Workbooks.Add (ThisWorkbook.Path & "\" & ActiveSheet.Name & ".xlsx")
End Sub
Sub test97()
Workbooks.Add (ActiveSheet.Name & ".xlsx")
End Sub
2、thisworkbook.sheets(1).
這個是將當前代碼所在工作簿的左側第一張表拷貝生成新的工作簿文件。新文件包含一張表格。具體對應的文件跟表格可以根據需求調整