当前位置:编程学习 > VB >>

用vb如何打开EXCEL xls格式的文件

各位大侠请帮忙看一下

我有一个excel文件是共享的,里面涉及vba宏代码,但是一旦启用"共享模式"就无法使用宏代码,
请教各位 用vb是否有办法打开xls格式文件后可以使用宏代码? --------------------编程问答-------------------- Dim xlApp As Excel.application
  Dim xlBook As Excel.Workbook
  Dim xlSheet As Excel.Worksheet
  
  Set xlApp = New Excel.application
    xlApp.Visible = True

  Set xlBook = xlApp.Workbooks.Add
  Set xlSheet = xlBook.Sheets("Sheet1")

添加Excel对象的引用,你可参考MSDN,里面有例子。
这样可以打开Excel文件,在你的VB总运行你录制的宏代码即可。 --------------------编程问答--------------------
Private Sub Command3_Click()
    Set ex = CreateObject("Excel.Application")
    Set wb = ex.Workbooks.Open("C:\A.XLS") '打开你的文件
     Set sh = wb.Sheets(2)   '第一个工作表
     
      ex.Application.Run "你的宏名"  
     ex.Visible = True
     'wb.Close SaveChanges:=True    '直接关闭不保存
     'ex.Quit
    Set ex = Nothing
    Set wb = Nothing
    Set sh = Nothing
End Sub
--------------------编程问答-------------------- Dim xlmodule As Object 'VBComponent
Set xlmodule = xlBook.VBProject.VBComponents.add(1) 'vbext_ct_StdModule
' Add a macro to the module...
Dim strCode As String
strCode = _
    "Sub MyMacro()" & vbCr & _
       "macro code" & vbCr & _
    "end sub"
xlmodule.CodeModule.AddFromString strCode
xlApp.Run "MyMacro" --------------------编程问答-------------------- 既然是共享方式打开EXCEL,那么就是只读的,不需要修改和保存

既然是只读打开,不需要向原始EXCEL文件中写数据, 那么可以考虑先用命令把这个EXCEL文件拷贝一个副本到某处再用独立模式打开. --------------------编程问答-------------------- 用“shell”命令试试 --------------------编程问答-------------------- 又学一点儿 --------------------编程问答--------------------
引用 4 楼 WallesCai 的回复:
既然是共享方式打开EXCEL,那么就是只读的,不需要修改和保存 

既然是只读打开,不需要向原始EXCEL文件中写数据, 那么可以考虑先用命令把这个EXCEL文件拷贝一个副本到某处再用独立模式打开.



同意! --------------------编程问答-------------------- 我也有些明白了 --------------------编程问答-------------------- 1;从"工程"菜单中选择"引用"栏;选择Microsoft Excel 9.0 Object Library(EXCEL2000),然后选择"确定"。表示在工程中要引用EXCEL类型库。2007的就是Microsoft Excel 12.0 Object Library了;
2;在通用过程中输入代码(定义类的):
Dim xlApp As Excel.Application
Dim xlBook As Excel.WorkBook
Dim xlSheet As Excel.Worksheet
2;
    Set xlApp = CreateObject("Excel.Application") '创建EXCEL应用类
  xlApp.Visible = True '设置EXCEL可见
  Set xlBook = xlApp.Workbooks.Open("D:\temp\bb.xls") '打开EXCEL工作簿,D:\temp\bb.xls 是你想打开的任意XLS表格。
  Set xlsheet = xlBook.Worksheets(1) '打开EXCEL工作表
  xlsheet.Activate '激活工作表
  xlsheet.Cells(1, 1) = "abc" '给单元格1行驶列赋值
    xlBook.Close (True) '关闭EXCEL工作簿 
  xlApp.Quit '关闭EXCEL
3;其他深入的东西你应该理解了吧~~呵呵!
有其他问题请加我Q讨论:80258441


--------------------编程问答-------------------- 楼上的太有耐心了,我支持你!
补充:VB ,  基础类
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,