Thema Datum  Von Nutzer Rating
Antwort
Rot Dokument in Funktion weiter bearbeiten
05.07.2018 13:32:24 Lonzianer
NotSolved
05.07.2018 18:17:04 Mackie
NotSolved

Ansicht des Beitrags:
Von:
Lonzianer
Datum:
05.07.2018 13:32:24
Views:
770
Rating: Antwort:
  Ja
Thema:
Dokument in Funktion weiter bearbeiten

Hallo Zusammen

Ich bearbeite von einem Excel-Dokument aus verschiedene Word-Dokumente.

Die Kopfzeile ist in jedem Dokument mit den gleichen Variablen zu füllen, deswegen will ich daraus eine Funktion machen.

Nun bekomme ich aber immer den Fehler: "This command is not available because no document is open." Wie muss ich das Word Dokument ansteuern damit ich es in der Funktion weiter bearbeiten kann? Habs probiert mit doc.activate, das bringt jedoch leider nichts :(

Hoffe jemand kann mir auf die Sprünge helfen :)

Hier mal der Code: 

Sub DMISuiteTaskSchedulerDataBaseConnections()
    
    Dim Bookmark As Variant
    Dim BookmarkNumber As Integer
    
    WebService = "xxx"
    strPath = "xxx"
    strDest = "xxx"
        
    Set DMIService = New DMIService
    Set oXML = CreateObject("msxml2.DOMDocument.4.0")
    oXML.LoadXML DMIService.execute(WebService, "DatabaseSettings", "ApplicationSoap", "")
    Set Node = oXML.SelectSingleNode("DatabaseSettings")
   
    'Setzt Word als Objekt
    Set AppWD = CreateObject("Word.Application")
    AppWD.Visible = True
    
    'Öffne das Dokument
    Dim Appdoc As Object
    Set Appdoc = AppWD.Documents.Add(strPath)
    
    werte = Array( _
    "Server", _
    "Database", _
    "User")
    
    BookmarkNumber = 0
    
    For Each wert In werte
        BookmarkNumber = BookmarkNumber + 1
        Bookmark = "DBConn" & BookmarkNumber & ""
        Appdoc.Bookmarks(Bookmark).Range.Text = Node.Attributes.getNamedItem("" & wert & "").Text
    Next wert
    
    'Kopfzeile einfügen
    
    Appdoc = Kopfzeile(Appdoc, UserForm1.AenderungsIDE, UserForm1.BetriebE, UserForm1.BauE)

End Sub

Und hier die Funktion die ich Aufrufe:

Public Function Kopfzeile(ByRef doc As Word.Document, AenderungsID As String, Betrieb As String, BauE As String) As Word.Document

    'On Error GoTo ErrHandling
    
    With doc
        doc.Activate
        Dim bmrange As Range
        Set bmrange = ActiveDocument.Sections(1).Headers(wdHeaderFooterPrimary).Range.Bookmarks("Aenderung").Range
        ActiveDocument.Bookmarks.Add Name:="Aenderung", Range:=bmrange
    End With
    


End Function

Sonnige Grüsse!


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Dokument in Funktion weiter bearbeiten
05.07.2018 13:32:24 Lonzianer
NotSolved
05.07.2018 18:17:04 Mackie
NotSolved