2011-03-31 95 views
2

以下代码是读取vba中的一个word文件。但它显示错误VBA中的错误462:找不到远程服务器机器

VBA中的错误462:未找到远程服务器计算机。提前

Sub abc() 
    Dim fileReader As String 
    Dim wrdApp As Word.Application 
    Dim wrdDoc As Word.Document 
    Dim singleLine As Paragraph 
    Set wrdApp = CreateObject("Word.Application") 
    Set wrdDoc = wrdApp.Documents.Open("C:\Documents and Settings\Administrator\My Documents\Downloads\fwfiles\webs.doc") 
    With wrdDoc 
     Dim p As Paragraph 
     For Each p In wrdDoc.Paragraphs 
      fileReader = p.Range.Text 
     Next p 
    End With 
End Sub 

感谢

回答

3

当您启动两次是否突破?

原因

Visual Basic中已经建立,因为线的代码,而无需使用Excel对象变量出线元件调用Excel对象,方法或特性的到Excel的参考。直到您结束该程序,Visual Basic才会释放此引用。代码运行多次时,此错误引用会干扰自动化代码。

分辨率

要解决此问题,修改代码,以便每次调用Excel对象,方法或特性是合格的与适当的对象变量。

来源

看一看这里:http://support.microsoft.com/default.aspx?kbid=178510


你也可以看看这里: http://www.tek-tips.com/viewthread.cfm?qid=756598

该帖子的作者居然也得到了错误,因为他是不使用Access对象来打开和关闭数据库。


最后:

  • 你应该避免使用有块用Word应用程序对象
  • 您应该释放你的变量(设置......如无物,wrdApp.Close,.. 。)
1

,或者你可以试试这个较短的版本:

Function abc() As String 
    doc = "C:\Documents and Settings\Administrator\My Documents\Downloads\fwfiles\webs.doc" 
    Set objDoc = GetObject(doc, "Word.Application") 
    abc = doc.Range.Text 
    objDoc.Close 
    objDoc = Nothing 
End 
相关问题