Thema Datum  Von Nutzer Rating
Antwort
30.04.2016 22:41:00 Hofe
NotSolved
01.05.2016 15:03:21 Gast73473
NotSolved
01.05.2016 15:28:46 Hofe
NotSolved
01.05.2016 17:29:30 Gast83074
NotSolved
01.05.2016 19:32:40 Hofe
NotSolved
Blau Textmarke nach füllen wieder neu setzen
01.05.2016 19:37:07 Hofe
NotSolved
01.05.2016 19:48:56 Gast54756
NotSolved
01.05.2016 20:07:28 Hofe
NotSolved
01.05.2016 20:08:17 Hofe
NotSolved
01.05.2016 20:16:47 Gast43310
NotSolved
01.05.2016 20:38:47 Hofe
NotSolved
01.05.2016 21:08:09 Gast36395
NotSolved
01.05.2016 21:08:20 Gast27765
NotSolved
01.05.2016 21:08:29 Gast16413
NotSolved
01.05.2016 21:14:24 Gast26480
NotSolved
01.05.2016 21:31:16 Hofe
Solved
01.05.2016 21:39:35 Gast28033
NotSolved
01.05.2016 21:45:28 Hofe
Solved
01.05.2016 21:58:21 Gast83673
NotSolved
02.05.2016 15:57:14 Hofe
Solved
02.05.2016 18:58:27 Gast65100
NotSolved
03.05.2016 07:29:00 Hofe
Solved
03.05.2016 12:26:17 Gast34319
Solved

Ansicht des Beitrags:
Von:
Hofe
Datum:
01.05.2016 19:37:07
Views:
753
Rating: Antwort:
  Ja
Thema:
Textmarke nach füllen wieder neu setzen

ich habe jetzt mal der übersichtshalber die das ganze script hier

die anderen 3 listboxen kannst du ignorieren, da das prinzip ja später das gleich bleibt, wie bei der wo ich gerade bin.

 

Private Sub CommandButton1_Click()
    
    Dim oExcelApp As Object
    Dim oExcelWorkbook As Object
    Dim lZeile As Long
    
    'ActiveDocument.Bookmarks("KK9").CheckBox.Value = CheckBox1.Value
 
'      'Nur wenn ein Eintrag in der Liste markiert ist, wird das Makro ausgeführt
'      If ListBox1.ListIndex >= 0 Then

          'Zuerst wird die Excel Datei geöffnet
          Set oExcelApp = CreateObject("Excel.Application")
          Set oExcelWorkbook = oExcelApp.Workbooks.Open(ThisDocument.Path & DatenBezug)
      
'        Dim meineBM As Range
'        Dim i As Range
      
        meineBM = Array("TM_E_Firma", "TM_E_StrHnr", "TM_E_PLZ", "TM_E_Ort", "TM_E_Tel", "TM_E_Fax", "TM_E_Mail", "TM_E_KD")
         
        lZeile = 2 'Wir starten in Zeile 2, da in der ersten Zeile überschriften stehen
          With oExcelWorkbook.Sheets(DatEmpfaenger)
              Do While .Cells(lZeile, 2) <> ""
                  'Wenn der Eintrag der Listbox mit dem Namen in der Adresstabelle
                  'übereinstimmt, dann werden die Textmarken gefüllt!
                  If ListBox1.Text = CStr(.Cells(lZeile, 1).Value) Then
                      'Eintrag gefunden, Textmarken füllen
                     'deine 8 Bookmarks würde ich in der SChleife abarbeiten
                      For i = 0 To 7
                        'Fehlerbehandlung falls BM nicht existiert fehlt, jetzt wird da einfach nur nix gemacht
                        If ActiveDocument.Bookmarks.Exists(meineBM(i)) Then
                            Set TMRange = ActiveDocument.Bookmarks(meineBM(i)).Range
                            TMRange = CStr(.Cells(lZeile, i + 3).Value)
                            ActiveDocument.Bookmarks.Add meineBM(i), TMRange
                            Set TMRange = Nothing
                        End If
                         
                      Next i
                       
                      Exit Do
                  End If
                  lZeile = lZeile + 1
              Loop
          End With
          
'      Else
'          MsgBox "ListBox1 prüfen!", _
'              vbInformation + vbOKOnly, "HINWEIS!"
'          Exit Sub
'      End If
'
'      If ListBox2.ListIndex >= 0 Then
          
          lZeile = 2 'Wir starten in Zeile 2, da in der ersten Zeile überschriften stehen
          With oExcelWorkbook.Sheets(DatAbsender)
              Do While .Cells(lZeile, 1) <> ""
                  'Wenn der Eintrag der Listbox mit dem Namen in der Adresstabelle
                  'übereinstimmt, dann werden die Textmarken gefüllt!
                  If ListBox2.Text = CStr(.Cells(lZeile, 1).Value) Then
                      'Eintrag gefunden, Textmarken füllen
                      ActiveDocument.Bookmarks("TM_Vorname").Range = _
                          CStr(.Cells(lZeile, 2).Value)
                      ActiveDocument.Bookmarks("TM_Vorname2").Range = _
                          CStr(.Cells(lZeile, 2).Value)
                      ActiveDocument.Bookmarks("TM_Nachname").Range = _
                          CStr(.Cells(lZeile, 3).Value)
                      ActiveDocument.Bookmarks("TM_Nachname2").Range = _
                          CStr(.Cells(lZeile, 3).Value)
                      ActiveDocument.Bookmarks("TM_StrHnr").Range = _
                          CStr(.Cells(lZeile, 4).Value)
                      ActiveDocument.Bookmarks("TM_PLZ").Range = _
                          CStr(.Cells(lZeile, 5).Value)
                      ActiveDocument.Bookmarks("TM_Ort").Range = _
                          CStr(.Cells(lZeile, 6).Value)
                      ActiveDocument.Bookmarks("TM_Tel").Range = _
                          CStr(.Cells(lZeile, 7).Value)
                      ActiveDocument.Bookmarks("TM_Mail").Range = _
                          CStr(.Cells(lZeile, 8).Value)
                      Exit Do
                  End If
                  lZeile = lZeile + 1
              Loop
          End With
          
'      Else
'          MsgBox "ListBox2 prüfen!", _
'              vbInformation + vbOKOnly, "HINWEIS!"
'          Exit Sub
'      End If
'
'      If ListBox3.ListIndex >= 0 Then
          
          lZeile = 2 'Wir starten in Zeile 2, da in der ersten Zeile überschriften stehen
          With oExcelWorkbook.Sheets(DatTxtBausteine)
              Do While .Cells(lZeile, 1) <> ""
                  'Wenn der Eintrag der Listbox mit dem Namen in der Adresstabelle
                  'übereinstimmt, dann werden die Textmarken gefüllt!
                  If ListBox3.Text = CStr(.Cells(lZeile, 1).Value) Then
                      'Eintrag gefunden, Textmarken füllen
                      ActiveDocument.Bookmarks("TM_Betreff").Range = _
                          CStr(.Cells(lZeile, 3).Value)
                      Exit Do
                  End If
                  lZeile = lZeile + 1
              Loop
          End With
          
'      Else
'          MsgBox "ListBox3 prüfen!", _
'              vbInformation + vbOKOnly, "HINWEIS!"
'          Exit Sub
'      End If
'
'      If ListBox4.ListIndex >= 0 Then
          
          lZeile = 2 'Wir starten in Zeile 2, da in der ersten Zeile überschriften stehen
          With oExcelWorkbook.Sheets(DatTxtBausteine2)
              Do While .Cells(lZeile, 1) <> ""
                  'Wenn der Eintrag der Listbox mit dem Namen in der Adresstabelle
                  'übereinstimmt, dann werden die Textmarken gefüllt!
                  If ListBox4.Text = CStr(.Cells(lZeile, 1).Value) Then
                      'Eintrag gefunden, Textmarken füllen
                      ActiveDocument.Bookmarks("TM_Inhalt").Range = EinfTxtBox.Text
                      Exit Do
                  End If
                  lZeile = lZeile + 1
              Loop
          End With
         
          oExcelWorkbook.Close False
          oExcelApp.Quit
      
'      Else
'          MsgBox "Alle ListBoxen prüfen!", _
'              vbInformation + vbOKOnly, "HINWEIS!"
'          Exit Sub
'      End If

    'ActiveDocument.Bookmarks("TM_Inhalt").Range = EinfTxtBox.Text
    
    Set oExcelWorkbook = Nothing
    Set oExcelApp = Nothing
    
    'CheckBox Unterschrift
    If CheckBox1.Value = True Then
        Call GrafikEinfügen
    End If
    
    Unload Me
End Sub

 


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
30.04.2016 22:41:00 Hofe
NotSolved
01.05.2016 15:03:21 Gast73473
NotSolved
01.05.2016 15:28:46 Hofe
NotSolved
01.05.2016 17:29:30 Gast83074
NotSolved
01.05.2016 19:32:40 Hofe
NotSolved
Blau Textmarke nach füllen wieder neu setzen
01.05.2016 19:37:07 Hofe
NotSolved
01.05.2016 19:48:56 Gast54756
NotSolved
01.05.2016 20:07:28 Hofe
NotSolved
01.05.2016 20:08:17 Hofe
NotSolved
01.05.2016 20:16:47 Gast43310
NotSolved
01.05.2016 20:38:47 Hofe
NotSolved
01.05.2016 21:08:09 Gast36395
NotSolved
01.05.2016 21:08:20 Gast27765
NotSolved
01.05.2016 21:08:29 Gast16413
NotSolved
01.05.2016 21:14:24 Gast26480
NotSolved
01.05.2016 21:31:16 Hofe
Solved
01.05.2016 21:39:35 Gast28033
NotSolved
01.05.2016 21:45:28 Hofe
Solved
01.05.2016 21:58:21 Gast83673
NotSolved
02.05.2016 15:57:14 Hofe
Solved
02.05.2016 18:58:27 Gast65100
NotSolved
03.05.2016 07:29:00 Hofe
Solved
03.05.2016 12:26:17 Gast34319
Solved