XLA文件使用小谈

      最近在写EXCEL工具时,听从他人的建议采用了Excel本体与VBA宏分离的方式。这样使得做成的Excel模板如果已经填充了内容,再要使用更改后VBA程序进行处理时变得简单。避免了需要把已存在的Excel里面的内容拷贝到新的Excel模板中的麻烦。

全过程如下
       1 建立Excel的模板
       2 VBA编辑器中插入一个模块,把处理代码写在里面。
       3 VBA编辑器中,ThisWorkBook中,添加标题栏Tab增加事件
       4 代码完成,测试通过后。文件——另存为——( .xla类型 )
       5 删除模板中 ThisWorkBook 中的代码 和 模块
       6 ok!大功告成。这两个东西可以发布了(一个Excel模板文件,一个xla文件)

 XLA文件的使用
       1 模板Excel文件中 填入需要处理的内容
       2 点击 xla 文件,此时在模板 Excel文件的标题栏上会增加标题,然后可执行其中的事件,即可完成业务处理的功能

小技巧
ThisWorkBook——标题栏Tab增加事件代码
 
XLA文件使用小谈XLA文件使用小谈Private Sub Workbook_Open()Sub Workbook_Open()
XLA文件使用小谈    
Dim TargetBar   As CommandBar
XLA文件使用小谈    
Dim NewMenu     As Object
XLA文件使用小谈    
Dim NewItem     As Object
XLA文件使用小谈    
Dim NewMenuTemp As Object
XLA文件使用小谈
XLA文件使用小谈    
Set TargetBar = Application.CommandBars("Worksheet Menu Bar")
XLA文件使用小谈    TargetBar.Visible 
= True
XLA文件使用小谈    
XLA文件使用小谈    
For Each NewMenuTemp In TargetBar.Controls
XLA文件使用小谈        
If NewMenuTemp.Caption = "资源文件生成工具" Then
XLA文件使用小谈            
Exit Sub
XLA文件使用小谈        
End If
XLA文件使用小谈    
Next
XLA文件使用小谈    
XLA文件使用小谈    
Set NewMenu = TargetBar.Controls.Add(Type:=msoControlPopup, ID:=1, Temporary:=True)
XLA文件使用小谈    NewMenu.Caption 
= "资源文件生成工具"
XLA文件使用小谈    
Set NewItem = NewMenu.Controls.Add(Type:=msoControlButton, ID:=1, Temporary:=True)
XLA文件使用小谈    NewItem.Caption 
= "执行"
XLA文件使用小谈    NewItem.OnAction 
= "MakeResourceFile.MakeFile"
XLA文件使用小谈    
XLA文件使用小谈    
Exit Sub
XLA文件使用小谈
End Sub

XLA文件使用小谈

使用指定名Sheet内容的函数方法
Function MakeTableSql(sheetName As String) As String

附加示例:.net 资源文件生成器
link
      
上一篇:改善JAVA代码01:考虑静态工厂方法代替构造器


下一篇:Oracle收购StackEngine的三个原因