Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Hilfe erbeten - Laufzeitfehler 462

Forumthread: Hilfe erbeten - Laufzeitfehler 462

Hilfe erbeten - Laufzeitfehler 462
21.02.2018 13:38:47
SanMiguel
Hallo an alle!
Zunächst vielen Dank für eure Beiträge die Community hilft ungemein.
Zu meinem Problem:
Ich versuche gerade einen Algorithmus zu schreiben der Inhalte aus Tabellen in bestehenden Worddokumenten (ohne Formularformatierungen) in eine Exceltabelle kopiert.Genauer gesagt:
1. Prüfen letzte Dateiendung in Exceltabelle
2. Öffnen nächstes Wordokument wenn vorhanden ansonsten weiter mit übernächster nummer
3. Kopieren der Inhalte und einfügen in Excelliste
4. Worddokument ohne speichern schließen
Nächster schritt soll eine Schleife sein um alle Dokumente im Ordner abzuarbeiten
Ich bekomme leider immer beim 2. Durchlauf des Algorithmus die Fehlermeldung Laufzeitfehler 462: Der Remote-Server-Computer existiert nicht oder ist nicht verfügbar
Habe schon Viele Foren, Google usw. durchsucht, komme aber leider nicht auf die Lösung. Am Algorithmus seht ihr, dass ich auch schon verschiedene Varianten ausprobiert habe das Worddokument einzubinden.
Zu meinen Skills außer einem Semester Informatik Grundlagen ist der Rest durch Youtube und Recherche entstanden, daher seht mir bitte die Nichtbeachtung von formalen Regeln nach.
Über Hilfe würde ich mich sehr freuen vielen Dank schon einmal!
Anbei der Algorithmus:
Public Sub letzte_zelle_1()
Dim exlDatei As String
'Dim wrdDatei As String
Dim letztezelle As String
Dim naechsteDatei As String
Dim dateiEnd As String
Dim Dateinmame As String
Dim Pfad As String
Dim Filename As String
'Dim wordApp As Object
'Dim wordDoc As Object
Dim Kopie_Pruefdatum As String
Dim Kopie_Maschine As String
Dim Kopie_Abteilung As String
Dim Kopie_Hersteller As String
Dim Kopie_MaschNr As String
'Dim Kopie5 As String
exlDatei = ActiveWorkbook.Name
letztezelle = ActiveSheet.Cells(Rows.Count, 3).End(xlUp).Row            'letzte Zelle in  _
Datumsspalte finden
'Worksheets("Sheet1").Cells(25, 8).Value
naechsteDatei = Worksheets("Tabelle1").Cells(letztezelle + 1, 2).Value
sprungziel:
dateiEnd = Right(naechsteDatei, 4)
'MsgBox dateiEnd
Pfad = "U:\Eigene Dateien\Projekt Kern u Liebers\Noch nicht in der Tabelle\"
Dateinmame = Dir(Pfad & "*" & dateiEnd & ".docx")
'    MsgBox Dateinmame
If Dateinmame  "" Then
Dim WordApp As Word.Application
'        Dim WordDatei As Word.Document
Set WordApp = New Word.Application
With WordApp
.Visible = True
.Documents.Open Filename:="U:\Eigene Dateien\Projekt Kern u Liebers\Noch nicht in der  _
_
Tabelle\" & Dateinmame
End With
'        Set WordDatei = WordApp.Documents.Add
'        Set wordApp = CreateObject("word.application")
''        Set wordApp = CreateObject("word.document.14.0.7190.5000")
'        Set wordDoc = wordApp.Documents.Open(Filename:="U:\Eigene Dateien\Projekt Kern u  _
Liebers\Noch nicht in der Tabelle\" & Dateinmame)
'        wordApp.Visible = True
Else
naechsteDatei = Worksheets("Tabelle1").Cells(letztezelle + 2, 2).Value
letztezelle = letztezelle + 1
GoTo sprungziel
End If
'wrdDatei = ActiveDocument.Name
'MsgBox wrdDatei
'Dim intCount As Integer                 'Tabellen Zählen
'intCount = ActiveDocument.Tables.Count
'MsgBox intCount
Kopie_Pruefdatum = ActiveDocument.Tables(1).Cell(3, 2).Range.Text
Kopie_Pruefdatum = Right(Kopie_Pruefdatum, 13)
Kopie_Pruefdatum = Left(Kopie_Pruefdatum, Len(Kopie_Pruefdatum) - 1)
Kopie_Maschine = ActiveDocument.Tables(2).Cell(1, 2).Range.Text
Kopie_Maschine = Left(Kopie_Maschine, Len(Kopie_Maschine) - 1)
Kopie_Abteilung = ActiveDocument.Tables(2).Cell(2, 2).Range.Text
Kopie_Abteilung = Left(Kopie_Abteilung, Len(Kopie_Abteilung) - 1)
Kopie_Hersteller = ActiveDocument.Tables(3).Cell(1, 2).Range.Text
Kopie_Hersteller = Left(Kopie_Hersteller, Len(Kopie_Hersteller) - 1)
Kopie_MaschNr = ActiveDocument.Tables(3).Cell(3, 2).Range.Text
Kopie_MaschNr = Left(Kopie_MaschNr, Len(Kopie_MaschNr) - 1)
'Kopie5 = ActiveDocument.Tables(2).Cell(2, 4).Range.Text
'MsgBox Kopie
'MsgBox Kopie1
'MsgBox Kopie2
'MsgBox Kopie3
'MsgBox Kopie4
'ActiveDocument.Close_
' SaveChanges:=wdDoNotSaveChanges,
ActiveDocument.Close
WordApp.Quit
'Set WordApp = Nothing
'WordDatei.Close SaveChanges:=0
'WordApp.Quit
'Set WordDatei = Nothing
Set WordApp = Nothing
'wordDoc.Close SaveChanges:=0
'wordApp.Quit
'Set wordDoc = Nothing
'Set wordApp = Nothing
Windows(exlDatei).Activate
Sheets("Tabelle1").Select
Cells(letztezelle + 1, 3).Select
ActiveCell.FormulaR1C1 = Kopie_Pruefdatum
Cells(letztezelle + 1, 4).Select
ActiveCell.FormulaR1C1 = Kopie_Maschine
Cells(letztezelle + 1, 5).Select
ActiveCell.FormulaR1C1 = Kopie_Hersteller
Cells(letztezelle + 1, 6).Select
ActiveCell.FormulaR1C1 = Kopie_MaschNr
Cells(letztezelle + 1, 7).Select
ActiveCell.FormulaR1C1 = Kopie_Abteilung
'ActiveSheet.Cells(Rows.Count, 3).End(xlUp).Row = Kopie
End Sub

Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Hilfe erbeten - Laufzeitfehler 462
21.02.2018 16:03:10
yummi
Hallo San Miguel,
die Reihenfolge für die Benutzung von word aus Excel heraus sollte so sein:
Dim objWA As Word.Application
Dim objwd As Word.Document
Set objWA = CreateObject("Word.Application")
Set objwd = objWA.Documents.Open(strPath)
mache was du willst mit objwd
Gruß
yummi
objwd.Close False
objWA.Quit
darum kannst du deien Schleife bauen für mehrere Dokumente
Anzeige
AW: Hilfe erbeten - Laufzeitfehler 462
22.02.2018 14:05:13
SanMiguel
Hallo yummi,
zunächst vielen Dank für deine schnelle Antwort! Mit dem Ansatz werde ich es weiter probieren.
Leider kam ich damit bis jetzt noch nicht zum gewünschten Ergebnis, da ich jetzt immer die Meldung bekomme Datei ist bereits geöffnet, soll eine schreibgeschützte Kopie geöffnet werden.
Ich werde es nächste Woche noch mal in Ruhe probieren und dann Rückmeldung geben.
Vielen Dank & Grüße
SanMiguel
Anzeige
AW: Hilfe erbeten - Laufzeitfehler 462
23.02.2018 11:34:18
yummi
Hallo San Miguel,
das
objwd.Close False
objWA.Quit
muss natürlich mit in die Schleife rein, stand etwas unglücklich hinter dem Gruß im letzten Post
Gruß
yummi
;
Anzeige

Infobox / Tutorial

Laufzeitfehler 462 in Excel VBA beheben


Schritt-für-Schritt-Anleitung

Um den Laufzeitfehler 462 zu beheben, folge diesen Schritten:

  1. VBA-Umgebung öffnen:

    • Öffne Excel und gehe zu Entwicklertools > Visual Basic.
  2. Code anpassen:

    • Verwende die korrekte Reihenfolge für die Interaktion mit Word aus Excel. Hier ist ein Beispiel, wie der Code aussehen sollte:
      Dim objWA As Object
      Dim objwd As Object
      Set objWA = CreateObject("Word.Application")
      Set objwd = objWA.Documents.Open("Dein_Pfad_zum_Dokument")
  3. Bearbeitung durchführen:

    • Führe deine gewünschten Operationen auf dem Word-Dokument durch.
  4. Dokument und Anwendung schließen:

    • Stelle sicher, dass du nach jeder Schleife das Dokument und die Word-Anwendung korrekt schließt:
      objwd.Close False
      objWA.Quit
  5. Wiederhole den Vorgang:

    • Implementiere die Schleife für mehrere Dokumente, indem du die oben genannten Schritte wiederholst.

Häufige Fehler und Lösungen

  • Fehler: "Laufzeitfehler 462: Der Remote-Server-Computer existiert nicht oder ist nicht verfügbar."

    • Lösung: Stelle sicher, dass die Word-Anwendung korrekt instanziiert wurde und nicht mehr benötigt wird, bevor du versuchst, ein neues Dokument zu öffnen.
  • Fehler: "Datei ist bereits geöffnet."

    • Lösung: Überprüfe, ob das Dokument bereits geöffnet ist, bevor du versuchst, es erneut zu öffnen. Schließe das Dokument korrekt in der Schleife.

Alternative Methoden

Falls du weiterhin Probleme hast, kannst du alternative Ansätze in Betracht ziehen:

  1. Direktes Kopieren aus Word:

    • Statt die Daten über VBA zu verarbeiten, könntest du die benötigten Informationen manuell kopieren und in Excel einfügen.
  2. Power Query:

    • Nutze Power Query in Excel, um Daten aus Word-Dokumenten zu importieren. Dies kann eine benutzerfreundliche Möglichkeit sein, um Daten zu extrahieren, ohne VBA zu verwenden.

Praktische Beispiele

Hier ist ein Beispiel, wie der Code aussehen könnte, um Daten aus mehreren Word-Dokumenten zu kopieren:

Sub DatenAusWordKopieren()
    Dim objWA As Object
    Dim objwd As Object
    Dim Pfad As String
    Dim Dateinmame As String

    Pfad = "U:\Eigene Dateien\Projekt Kern u Liebers\Noch nicht in der Tabelle\"
    Dateinmame = Dir(Pfad & "*.docx")

    Set objWA = CreateObject("Word.Application")

    Do While Dateinmame <> ""
        Set objwd = objWA.Documents.Open(Pfad & Dateinmame)
        ' Hier kannst du deine Daten kopieren
        objwd.Close False
        Dateinmame = Dir
    Loop

    objWA.Quit
End Sub

Tipps für Profis

  • Verwende Error-Handling: Implementiere On Error Resume Next und On Error GoTo 0 in deinem Code, um Laufzeitfehler zu behandeln und die Ausführung nicht zu stoppen.

  • Objekte richtig freigeben: Achte darauf, dass du alle Objekte korrekt freigibst, um Speicherlecks zu vermeiden.

  • Debugging nutzen: Setze Breakpoints und nutze die Debugging-Tools in VBA, um den Code Schritt für Schritt zu überprüfen.


FAQ: Häufige Fragen

1. Was bedeutet der Laufzeitfehler 462? Der Laufzeitfehler 462 tritt auf, wenn die Verbindung zu einem Objekt verloren geht, in diesem Fall zu einer Word-Anwendung.

2. Wie kann ich sicherstellen, dass Word-Dokumente geschlossen werden? Verwende objwd.Close False in einer Schleife, um sicherzustellen, dass jedes Dokument nach der Bearbeitung geschlossen wird.

3. Was kann ich tun, wenn ich VBA nicht verwenden möchte? Du kannst Power Query verwenden, um Daten aus Word-Dokumenten zu importieren, ohne direkt mit VBA zu arbeiten.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige