❶ 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).
这个是将当前代码所在工作簿的左侧第一张表拷贝生成新的工作簿文件。新文件包含一张表格。具体对应的文件跟表格可以根据需求调整