No.1

Excel工作表制作完成后,要进行保存文件,通常Excel有默认保存格式,也就是说不需要指定文件的格式,应用会自主进行保存一种格式,一般有.xls或.xlsx。

excel vba将数据写入另一个文件中(如何用VBA设置保存文件的格式)(1)

本节将就这个默认格式如何设置进行一下了解。

VBA是一个可以做到很多事情的一个代码集合,也就是说Excel中的大多数都可以进行自主设置,当然了,这需要一点点来认识。

这里用到一个属性:DefaultSaveFormat

这个属性是Application对象下的。

语法:

Application.DefaultSaveFormat=xlWorkbookNormal

xlWorkbookNormal是一个常量,可选常量如下图所示:

excel vba将数据写入另一个文件中(如何用VBA设置保存文件的格式)(2)

DefaultSaveFormat属性有两个功能,一个是返回当前默认文件保存格式,另一种就是设置默认文件保存格式。

如下示例,实现对默认文件格式进行设置和显示:

excel vba将数据写入另一个文件中(如何用VBA设置保存文件的格式)(3)

No.2

显示默认保存格式

Private Sub CommandButton1_Click() Dfile = Application.DefaultFilePath Dfor = Application.DefaultSaveFormat Dim s As Worksheet Set s = ThisWorkbook.Worksheets(2) s.Activate Dim cell As Range, r As Range Set cell = s.Range(s.Cells(5, 3), s.Cells(s.UsedRange.Rows.Count, 3)) For Each r In cell If r.Value = Dfor Then ThisWorkbook.Worksheets(1).Activate Me.Label1.Caption = r.Offset(0, 1).Value & VBA.vbCrLf & r.Offset(0, 2).Value Exit For End If Next r End Sub

excel vba将数据写入另一个文件中(如何用VBA设置保存文件的格式)(4)

保存默认文件格式

Private Sub CommandButton2_Click() Dim X, Xn X = Me.ComboBox1.Value Dim s As Worksheet Set s = ThisWorkbook.Worksheets(2) s.Activate Dim cell As Range, r As Range Set cell = s.Range(s.Cells(5, 4), s.Cells(s.UsedRange.Rows.Count, 4)) For Each r In cell If r.Value = X Then ThisWorkbook.Worksheets(1).Activate Xn = r.Offset(0, -1).Value MsgBox Xn Exit For End If Next r Application.DefaultSaveFormat = Xn End Sub

这个属性还是比较容易理解的,主要是认识不同版本对应的不同文件后缀,这需要文件类型的相关知识,有兴趣可以自己试一下。

欢迎关注、收藏

---END---

,