VBA中的错误462:找不到远程服务器计算机

时间:2011-03-31 07:00:10

标签: vba word-vba

以下代码是在vba中读取word文件。但它显示错误

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

提前致谢

2 个答案:

答案 0 :(得分: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对象来打开和关闭数据库。


最后:

  • 您应该避免将with块与Word应用程序对象一起使用
  • 你应该释放你的变量(Set ... As Nothing,wrdApp.Close,...)

答案 1 :(得分: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