乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > <em>VB</em>编程打开和<em>关闭EXCEL</em>文件-v

<em>VB</em>编程打开和<em>关闭EXCEL</em>文件-v

作者:乔山办公网日期:

返回目录:excel表格制作


给你盲打一个,你打开两个工作簿1.xlsx和2.xlsx:

代码如下:

Private Sub Command1_Click()
    dim xlapp as object
    set xlapp = getobject(,"Excel.Application")  '获得Excel应用环境
    Dim wb1 as object, wb2 as object
    set wb1 = xlapp.Workbooks("1.xlsx")   '用wb1引用1.xlsx工作簿
    set wb2 = xlapp.workbooks("2.xlsx")   '用wb2引用2.xlsx工作簿
    
    wb1.Sheets(1).Range("A1") = "巴蜀兄弟连"  '给1.xlsx的A1单元格输入:巴蜀兄弟连
    
    wb2.Close True  '关闭2.xlsx工作簿的同时,True表示保存修改,改为False表示不保存修改
    
    msgbox xlapp.Workbooks("1.xlsx").name   '显示1.xlsx工作簿的名称
    
end sub


Dim EApp As Object‘定义一个全局变
Private Sub CommandButton1_Click()'打开
Set EApp = CreateObject("Excel.Application")
EApp.Visible = True
End Sub

Private Sub CommandButton2_Click()'关闭
If Not EApp Is Nothing Then
EApp.Quit
End If
End Sub
建议修改成这样:
On Error GoTo err
Dim XlsApp As Object
Dim XlsSheet As Object
Dim XlsBook As Object
Set XlsApp = CreateObject("Excel.Application")
Set XlsBook = XlsApp.Workbooks.Open(Path)
XlsApp.DisplayAlerts = False
XlsBook.Close '上面的代zd码出错就不执行他了
XlsApp.Quit '同上,EXCEL可能留在进程中
Set XlsBook = Nothing
Set XlsApp = Nothing
err:
If err.Number > 0 Then
If Not (XlsBook Is Nothing) Then
XlsBook.Quit
End If
If Not (XlsApp Is Nothing) Then
XlsApp.Quit
End If
End If

不能用“<>”比较两个对象

下面所举的例子均假设F盘下有一个名为d.txt的文本文件,若需要尝试这些例子请作相应的改动。

一、用定长的String变量获取文本内容。由于定长String变量支持的下界为65400,所以在打开超过32K字节的文件时超出部分的字节将无法获取: Private   Sub   Command1_Cliack() Dim   sA   As   String   *   65400   '声明定长String变量   Open   "F:\d.txt "   For   Binary   As   #1   '用二进制打开文件 Get   #1,   ,   sA   '用Get语句从文件中获取字节 Text1   =   sA   '显示打开的文件 Close   #1   '关闭文件 End   Sub;

二、先声明一字符串变量,然后用空格填充字符串,使变量大小与文件大小一e799bee5baa6e59b9ee7ad94339致,再通过Get语句将文件全部数据存储到变量中,从而达到获取整个文件字节数的目的。

此法可以打开大于32K的文件,但应该注意的是,装载文件的容器必须能装载大于32K的文件,下例用RichTextBox控件显示打开的文件: Private   Sub   Command1_Click()   Dim   sA   As   String Open   "f:\d.txt "   For   Binary   As   #1 sA   =   Space(LOF(1))   '用空格填充sA变量 Get   #1,   ,   sA   '用Get语句获取文件全部内容 RichTextBox1.Text   =   sA Close   #1 End   Sub;

三、用StrConv函数将文件的控制字符串数据和Unicode码之间进行转换,从而达到打开文件的目的。可打开任意大小文件。

再给一个简单例子: Private   Sub   Command1_Click() Open   "f:\d.txt "   For   Input   As   #1 RichTextBox1.Text   =   StrConv(InputB$(LOF(1),   1),   vbUnicode) Close   #1 End   Sub;

四、用Shell语句直接调出Windows的记事本,给个文件名即可轻而易举地打开文本文件。此法适合于打开程序的Readme文件(注意:在可执行文件和要打开的文本文件之间要有空格): Shell   "NotePad.EXE   f:\d.txt ",vbNormalFucus;

五、用RichTextBox控件自身的LoadFile属性打开文件: RichTextBox1.LoadFile   "f:\d.txt ",   rtfText。

相关阅读

  • -vb excel 行,vb打开excel

  • 乔山办公网excel表格制作
  • MsgBox Range("a65525").End(xlUp).Row获取A列最大已用行 以上为excel2003,如copy2007以上,百65525改为1048576。如要获取整张表格已用最大行,例如A列无度数据,但其他列有数据,可用如下:Msgbox U
关键词不能为空
极力推荐

ppt怎么做_excel表格制作_office365_word文档_365办公网