Thema Datum  Von Nutzer Rating
Antwort
Rot Quelltext mit mehreren Variablen einfach kopieren
16.02.2016 07:38:46 Christof
NotSolved
17.02.2016 06:56:59 Christof
NotSolved

Ansicht des Beitrags:
Von:
Christof
Datum:
16.02.2016 07:38:46
Views:
1088
Rating: Antwort:
  Ja
Thema:
Quelltext mit mehreren Variablen einfach kopieren

Guten Morgen,


Ich habe eine Tablle von der aus mehrere Werte in ein Word Dokument übertragen werden sollen. Durch klicken auf ein Button wird dieses Dokument geöffnet und dann sollen die Werte eingetragen werden.

Das mit dem Button klicken und öffnen des Dokuments funktioniert bis jetzt prima (Ich bin ein VBA neuling) .  Mein Problem ist, dass ich den Quelltext einfacher kopierbar machen möchte, ohne das jemand groß in den Quelltext reingehen muss.

Vorher habe ich Variablen erstellt für jede Zelle und diese dann an das Word Dokument übergeben in eine Textmarke (hat auch funktioniert). Nur muss ich, falss jetzt ein neuer Arikel dazu kommt die komplette Spalte kopieren und den Quelltext für diesen Artikel anpassen.

Public Auswert As String
Public Component As String
Public Component_eintrag1 As String
Public Component_eintrag2 As String
Public Component_eintrag3 As String


'___________________________________________________________________________
Sub Schaltfläche3_Klicken() 'Name der Schaltfläche
Auswert = MsgBox("Word-Dokument erstellen?", vbYesNo, "Dokument") 'Abfrage ob das Word-Dokument erstellt werden soll
If Auswert = vbNo Then     'Wenn "Nein" dann Box "ok"
    MsgBox "Ok"
    Else
    Call Auswertung         'Wenn ja, dann Auswertung aufrufen
End If
End Sub


'___________________________________________________________________________
Sub Auswertung()
'Eventuell noch eine Auswertung nötig, aber momentan nicht
MsgBox "Auswertung 3 ok"
Call Dokument_öffnen
End Sub


'___________________________________________________________________________
Sub Dokument_öffnen()
'MsgBox "Dokument 1 wird geöffnet"


'Gibt es hierfür eine einfachere Lösung? Anstatt jede Zelle mit einer Variable zu definieren?
'___________________________________________________________________________
'In Variablen schreiben, was in den einzelnen Zellen steht
Component = ActiveSheet.Range("B5")
Component_eintrag1 = ActiveSheet.Range("E5")
Component_eintrag2 = ActiveSheet.Range("E12")
'___________________________________________________________________________




'Öffnen des Word Dokuments
Dim Doku1 As Object
On Error Resume Next
Set Doku1 = GetObject(, "Word.Application")
If Doku1 Is Nothing Then Set Doku1 = CreateObject("Word.Application")
On Error GoTo 0
With Doku1
    .Visible = True
    .Documents.Open "C:\Users\pby891\Desktop\Excel Projekt\PLT-3 IQ 2x2-24DC-P wo PKG - 3.dotm"
End With
'___________________________________________________________________________
'Abfrage ob die Textmarke vorhanden ist, dann eintragen der Variablen
'Wenn die Textmarke nicht vorhanden ist, anzeigen eines Fehlers
If Doku1.ActiveDocument.Bookmarks.Exists("Component") = True Then
'Fall Abfrage ob die Textmarke "..." exitiert
    If Doku1.ActiveDocument.Bookmarks.Exists("Component_eintrag1") = False Then
            MsgBox "Felher - Textmarke" & Component_eintrag1 & "nicht vorhanden", vbkOKonly, "FEHLER"
            Else
            Doku1.ActiveDocument.Bookmarks("Component_eintrag1").Range = Component_eintrag1
                If Doku1.ActiveDocument.Bookmarks.Exists("Component_eintrag2") = False Then
                MsgBox "Felher - Textmarke" & Component_eintrag2 & "nicht vorhanden", vbkOKonly, "FEHLER"
                Else
                Doku1.ActiveDocument.Bookmarks("Component_eintrag2").Range = Component_eintrag2
                    If Doku1.ActiveDocument.Bookmarks.Exists("Component_eintrag3") = False Then
                    MsgBox "Felher - Textmarke" & Component_eintrag3 & "nicht vorhanden", vbkOKonly, "FEHLER"
                    Else
                    Doku1.ActiveDocument.Bookmarks("Component_eintrag3").Range = Component_eintrag3
                    End If
            End If
    End If
Else: MsgBox "Felher - Textmarke nicht vorhanden", vbkOKonly, "FEHLER"
End If
End Sub


'___________________________________________________________________________

 

So habe ich das Dokument erstmal. Habe für jeden Artikel ein Modul erstellt und eine Schaltfläche, also genau den Quelltext.

 

Nur weiß ich nicht wie ich das besser hin bekomme mit den Variablen. Hat jemand vielleicht eine Idee?

Die Tabelle wird am Ende etwas über 130 Artikel haben mit jeweils an die 100 Werten die drunter stehen.


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 Quelltext mit mehreren Variablen einfach kopieren
16.02.2016 07:38:46 Christof
NotSolved
17.02.2016 06:56:59 Christof
NotSolved