vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
SEPA-Dateien erstellen inkl. IBAN-, BLZ-/Kontonummernprüfung  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Word steuern - aus geöffneten Fenstern wählen 
Autor: Bismosa
Datum: 12.04.10 21:44

Hallo!

Ich habe folgendes Problem (auch nach Stundenlangem Suchen konnte ich das nicht finden)

Ich möchte mit meinem Programm mehrere Word-Dokument steuern (Daten aus einer Access Datenbank automatisch eintragen lassen). Dafür muss ich in vb.net zunächst das/die Word-Dokumente aufrufen/benennnen. Öffnen geht recht problemlos:
Dim word As New Microsoft.Office.Interop.Word.Application
        Dim doc As Microsoft.Office.Interop.Word.Document
        Try
            'word.Visible = (True) 'Word sehen zum Test?
            doc = word.Documents.Open("c:\\schreiben.dot")
            doc.Activate()
Wenn ich ein geöffnetes Dokument aufrufe, gehe ich so vor:
'Überprüfen ob Wordinstanz gestartet ist
        Dim Proc() As Process
        Dim FlagWdApp As Boolean    'Flag - True: Word wurde bereits estartet
 
        'Variable initieren
        Proc = Process.GetProcesses
 
        'Alle Prozesse durchlaufen
        For Each Process In Proc
            If (Process.ProcessName.IndexOf("WINWORD") > -1) Then
                FlagWdApp = True
            End If
        Next Process
 
        'Objekt in Abhängigkeit, ob Wordinstanz gestartet ist oder nicht, der 
        ' Variablen "WdApp" zuweisen
        If FlagWdApp = True Then
            Return GetObject(, "Word.Application")       
        Else
            Return CreateObject(, "Word.Application")
        End If
So wird jedoch nur das zuletzt gewählte Word-Dokument genommen.

Hier nochmal ein anderer Schnipsel. Hier wird zuerst nachgeschaut, ob Word läuft sonst wird Word mit einem neuen Dokument gestartet:
Dim WordAppl As Word.Application ' Word-Application
    Dim WdDoc As Word.Document       ' Word-Dokument
    Dim WordApplLiefNicht As Boolean ' Falls Word nicht läuft
 
    ' Versuchen eine laufende Instanz von Wort zu verwenden
    On Error Resume Next
    Set WordAppl = GetObject(, "Word.Application")
 
    ' Wenn Word nicht ausgeführt wird, Word starten:
    On Error Goto errorMsgWord
    If WordAppl Is Nothing Then
        WordApplLiefNicht = True
        Set WordAppl = CreateObject("Word.Application")
    End If
 
    ' Dokument öffnen
    On Error Goto errorMsgVorlage
    Set WdDoc = WordAppl.Documents.Add( _
                    Template:=App.Path & "\" & WordDocVorlage, _
                    NewTemplate:=False _
                )
Sieht allerdings für mich laien nach vb6 aus?

Ich habe das Problem, dass ich meistens 3-4 Word-Dokumente gleichzeitig bearbeiten muss. Daher sind diese auch alle gleichzeitig geöffnet. Daher wollte ich beim Programmstart bzw. nach einem Klick auf einen Button eine Abfrage realisieren, welches Dokument bearbeitet werden soll. Wie könnte ich das realisieren?

Gruß

Bismosa
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Word steuern - aus geöffneten Fenstern wählen3.248Bismosa12.04.10 21:44
Re: Word steuern - aus geöffneten Fenstern wählen1.943Heinz-Josef Bom...13.04.10 06:28
Re: Word steuern - aus geöffneten Fenstern wählen2.064Bismosa13.04.10 11:33

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel