macula 发表于 2005-12-11 10:46:00

VBA调用EXCEL!

<P>有一个调用Excel的过程如下:</P>
<P>sub&nbsp; eee()<BR>&nbsp; On Error Resume Next</P>
<P>&nbsp; dim ex as Object<BR>&nbsp; dim sheet as object</P>
<P>&nbsp; set ex = GetOjbect(, "Excel.Application")<BR>&nbsp; if Err &lt;&gt; 0 then<BR>&nbsp;&nbsp;&nbsp; set ex = CreateObject("Excel.Application")<BR>&nbsp;&nbsp;&nbsp; Err.claer<BR>&nbsp; end if</P>
<P>&nbsp; <FONT color=#ee3d11>ex.WorkSheets("Sheet1").Activate</FONT></P>
<P>end sub</P>
<P>系统使用AutoCAD 2002、Excel 2003 sp2</P>
<P>过程执行到ex.WorkSheets("Sheet1").Activate一句时总是提示"<FONT color=#0909f7>对象变量或With块变量未设置</FONT>"的错误,检查之后发现ex并未获得Excel的引用不知道为什么!</P>
<P><BR>请大家帮帮忙找找原因和解决方法!</P>

efan2000 发表于 2005-12-11 11:44:00

<P>这是由于使用CreateObject("Excel.Application")运行Excel时,并没有默认的创建一个文档(Workbook),可以使用ex.Workbooks.Add创建。</P>

macula 发表于 2005-12-11 13:48:00

<P>可是我并不想创建新的工作簿,而是直接访问当前活动的工作簿中的“Sheet1”工作表!</P>
<P>&nbsp;</P>
<P>我应该怎么做呢?</P>

yft5184 发表于 2005-12-11 18:11:00

<P>Dim&nbsp; strDestination As String<BR>Dim xlApp As Excel.Application<BR>Dim xlBook<BR>Dim xlSheet As Excel.Worksheet</P>
<P>Set xlApp = New Excel.Application ''激活EXCEL应用程序<BR>Set xlApp = CreateObject("Excel.Application")<BR>xlApp.Visible = False '隐藏EXCEL应用程序窗口<BR>Set xlBook = xlApp.Workbooks.Open(strDestination) '打开工作簿,strDestination为一个EXCEL报表文件<BR>Set xlSheet = xlBook.Worksheets(1) '设定工作表</P>
<P>'现在就可以直接访问当前活动的工作簿中的“Sheet1”工作表</P>
<P>xlBook.Save&nbsp; '保存文件<BR>xlApp.Quit&nbsp; '退出EXCEL</P>
<P>&nbsp;</P>
页: [1]
查看完整版本: VBA调用EXCEL!