① excel vba 数据类型 怎么理解
在VBA里面,可以使用VarType获得变量以及单元格的数据类型,数值类型值为5(vbDouble)、空类型为0(vbEmpty)、字符串类型为8(vbString )。
例子代码1:显示A1单元格的数据类型
Sub test()
MsgBox VarType([a1])
End Sub
例子代码2:判断A1单元格数据类型是否数值
Sub test()
If VarType([a1]) = vbDouble Then
MsgBox "A1是数值类型"
Else
MsgBox "A1不是数值类型"
End If
End Sub
实际上VB还有vbLong、vbDecimal等类型,但单元格为数值时默认是vbDouble。
② 用VBA批量修改Excel文件类型
可以用VBA分别打开每个文件然后再把这个文件另存为相应的版本,然后再用程序或者手工删除原来版本的文件
③ 使用vba可以将文件存为excel07格式吗
Excel2007中的VBA代码可以态知保存为xlsm格式。方法亏晌如下:1.点击Office按钮,选择另销闭锋存为,选择“启用宏的Excel工作簿”:2.选择保存位置,设置文件名,点击保存:3.这样,再打开这个文件,就可以看到里面的VBA代码。
④ 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).
这个是将当前代码所在工作簿的左侧第一张表拷贝生成新的工作簿文件。新文件包含一张表格。具体对应的文件跟表格可以根据需求调整
⑤ 电子表格EXCEL是什么格式的文件
EXCEL文档分为03版,07版本,10版本,13版本等,不同的版本有不同的后缀名。
03版的是XLS,
07以后的都是XLSX。
对于03版本来说,含VBA宏的后缀名也是一样的XLS,
而对于07以后的版本,含VBA的会变成XLSM,还有一些特殊的格式,
如XLSB,就是二进制格式的(存储容量比较小,便于传输)。
⑥ 请分别解释一下xlsm、.xlam、.xltm、.xlax和.xltx等的意义。
1、Excel的文件格式意义
(1).xlsm:Excel启用宏的工作簿(代码),Excel(2016201320102007)的基于XML和启用宏的文件格式。 存储 VBA 宏代码或 Excel 4.0 宏工作表 (.xlm)。
(2).xlam:Excel加载项,Excel(20102007) 基于 XML 和启用宏的加载项格式。 加载项是用于运行其他代码的补充程序。 支持使用 VBA 项目和 Excel 4.0 宏工作表 (.xlm)。
(3).xltm:模板(代码),Excel 模板,Excel(20102007) 启用宏的文件格式。 存储 VBA 宏代码或 Excel 4.0 宏工作表 (.xlm)。
(4).xlax:目前的Excel的文件格式不存在 .xlax 的格式。
(5).xltx:Excel模板,Excel(20102007)的 Excel 模板默认的文件格式。 不能存储 VBA 宏代码或 Excel 4.0 宏工作表 (.xlm)。
(6).xlsx:Excel (20102007)默认的基于 XML 的文件格式。 不能存储 VBA 宏代码或 Microsoft Office Excel 4.0 宏工作表 (.xlm)。
2、.xlsx与其他格式的区别
(1)格式不同,他们都是不同的文件格式,应用于不同的文件需求。
(2)支持项不同:除了.xltx 格式外,其他的能够支持存储 VBA 宏代码或 Excel 4.0 宏工作表 (.xlm)。
(3)存储内容不同:有存储模板的,有存储加载项的,有存储启用的工作簿的。
(6)excel带vba的文件类型扩展阅读:
1、.xlsx 格式的文件本质上是一个ZIP文件。将一个 .xlsx 文件的后缀改为ZIP后是可以用解压工具打开或是解压的。事实上 word2007的基本文件就是ZIP格式的,可以算作是“.xlsx”文件的容器。
2、.xlsx 格式文件的主要内容是保存为XML格式的,但文件并非直接保存于磁盘。它是保存在一个ZIP文件中,然后取扩展名为 .xlsx 。将 .xlsx 格式的文件后缀改为ZIP后解压, 可以看到解压出来的文件夹中有word这样一个文件夹,它包含了Word文档的大部分内容。而其中的 document.xml 文件则包含了文档的主要文本内容。
⑦ excel vba 如何根据打开的文件类型不同 分别执行不同的函数
做两个excel文件,设置数穗喊陪据链接,让两文件数据保持一致,然后渗指一个有userform1,把它设置为打开excel文件就执猜蠢行。另一文件没有userform1
⑧ 在EXCEL2007中,含有VBA代码的文件XLSM格式,要保存成XLSX格式,
XLSX
格式不包含代码宽森,缓巧卜所以
XLSM
格式在另存为xlsx格式时,其中所的代码会扰穗被删除。删除是自动进行的
⑨ 如何用excel中的VBA编程打开不同类型的文件
sub 打袭闭开()
Dim ReturnValue
ReturnValue = Shell("notepad.exe C:\文档坦禅盯让和.txt", 1) ' 用记事本打开。
End Sub