Thema Datum  Von Nutzer Rating
Antwort
20.11.2023 18:06:10 Angelo
Solved
20.11.2023 18:54:52 ralf_b
NotSolved
Rot Anfänger benötigt Hilfe
22.11.2023 08:39:24 Angelo
NotSolved
23.11.2023 00:27:36 ralf_b
NotSolved

Ansicht des Beitrags:
Von:
Angelo
Datum:
22.11.2023 08:39:24
Views:
156
Rating: Antwort:
  Ja
Thema:
Anfänger benötigt Hilfe

Guten Morgen Ralf,

vielen Dank schon einmal für deine Antwort. Ich werde mich dann mal mit der For-Next Schleife auseinandersetzen.

Hier ist ein Teil des Codes, den ich bislang erstellt habe. Der ist sicherlich noch stark verbesserungsfähig aber ich war schon einmal froh, das es funktioniert und das macht, was ich wollte. Es ist eine Art Reporting, um festzuhalten wie viele Mitarbeiter von Firma XY an welchem Tag da waren.

In der ersten Sub öffne ich das Word-Template und lasste allgemeines ausfüllen (nicht mit dargestellt) und dann geht es mit den Tagen-Firmen weiter. Ich habe jetzt auch nur den Montag soweit fertig und bin an dem Punkt, an dem ich mich frage, ist dass so richtig? und nicht VIEL zu umständlich? Weil es bis zu 15 Firmen pro Tag sein können.

Code:

Sub MontagFirma1()

'Bibliothek aktivieren

Dim wordapp As New Word.Application
Dim doc As Word.Document

'aktiviere Worddokument
Set doc = ActiveDocument

'Word-Datein mit Montag-Daten befüllen
Montag:
doc.Bookmarks("MontagDatum").Range.Text = Tabelle2.Cells(2, 8).Value
doc.Bookmarks("MontagTemp").Range.Text = Tabelle2.Cells(2, 9).Value
doc.Bookmarks("MontagWetter").Range.Text = Tabelle2.Cells(2, 10).Value

'Montag-Firma 1
MontagFirma1:
 MoFirma1 = Tabelle2.Cells(2, 11)
 If MoFirma1 > 0 Then
  doc.Bookmarks("MontagFirma1").Range.Text = Tabelle2.Cells(1, 11).Value
  doc.Bookmarks("MontagFirma1MA").Range.Text = Tabelle2.Cells(2, 11).Value
 Else
  Call MontagFirma2
 End If
 
Call MontagFirma2

End Sub
----------------------------------------------------------------------------
Sub MontagFirma2()

'Bibliothek aktivieren

Dim wordapp As Word.Application
Dim doc As Word.Document

'aktiviere Worddokument
Set doc = ActiveDocument
Set wordapp = Word.Application

'Montag-Firma 2
MontagFirma2:
 MoFirma2 = Tabelle2.Cells(2, 13)
 If MoFirma2 > 0 Then
  If doc.Bookmarks.Exists("MontagFirma1") = True Then
   doc.Bookmarks("MontagFirma1").Range.Text = Tabelle2.Cells(1, 13).Value
   doc.Bookmarks("MontagFirma1MA").Range.Text = Tabelle2.Cells(2, 13).Value
  Else
   doc.Bookmarks("MontagFirma2").Range.Text = Tabelle2.Cells(1, 13).Value
   doc.Bookmarks("MontagFirma2MA").Range.Text = Tabelle2.Cells(2, 13).Value
  End If
 Else
  Call MontagFirma3
 End If
 
Call MontagFirma3

End Sub
----------------------------------------------------------------------------
Sub MontagFirma3()

'Bibliothek aktivieren

Dim wordapp As Word.Application
Dim doc As Word.Document

'aktiviere Worddokument
Set doc = ActiveDocument
Set wordapp = Word.Application

'Montag-Firma 3
MontagFirma3:
 MoFirma3 = Tabelle2.Cells(2, 15)
 If MoFirma3 > 0 Then
  If doc.Bookmarks.Exists("MontagFirma1") = True Then
   doc.Bookmarks("MontagFirma1").Range.Text = Tabelle2.Cells(1, 15).Value
   doc.Bookmarks("MontagFirma1MA").Range.Text = Tabelle2.Cells(2, 15).Value
  Else
   If doc.Bookmarks.Exists("MontagFirma2") = True Then
    doc.Bookmarks("MontagFirma2").Range.Text = Tabelle2.Cells(1, 15).Value
    doc.Bookmarks("MontagFirma2MA").Range.Text = Tabelle2.Cells(2, 15).Value
   Else
    doc.Bookmarks("MontagFirma3").Range.Text = Tabelle2.Cells(1, 15).Value
    doc.Bookmarks("MontagFirma3MA").Range.Text = Tabelle2.Cells(2, 15).Value
   End If
  End If
 Else
  Call MontagFirma4
 End If

Call MontagFirma4
 
End Sub
----------------------------------------------------------------------------
Sub MontagFirma4()

'Bibliothek aktivieren

Dim wordapp As Word.Application
Dim doc As Word.Document

'aktiviere Worddokument
Set doc = ActiveDocument
Set wordapp = Word.Application

'Montag-Firma 4
MontagFirma4:
 MoFirma4 = Tabelle2.Cells(2, 17)
 If MoFirma4 > 0 Then
  If doc.Bookmarks.Exists("MontagFirma1") = True Then
   doc.Bookmarks("MontagFirma1").Range.Text = Tabelle2.Cells(1, 17).Value
   doc.Bookmarks("MontagFirma1MA").Range.Text = Tabelle2.Cells(2, 17).Value
  Else
   If doc.Bookmarks.Exists("MontagFirma2") = True Then
    doc.Bookmarks("MontagFirma2").Range.Text = Tabelle2.Cells(1, 17).Value
    doc.Bookmarks("MontagFirma2MA").Range.Text = Tabelle2.Cells(2, 17).Value
   Else
    If doc.Bookmarks.Exists("MontagFirma2") = True Then
     doc.Bookmarks("MontagFirma3").Range.Text = Tabelle2.Cells(1, 17).Value
     doc.Bookmarks("MontagFirma3MA").Range.Text = Tabelle2.Cells(2, 17).Value
    Else
     doc.Bookmarks("MontagFirma4").Range.Text = Tabelle2.Cells(1, 17).Value
     doc.Bookmarks("MontagFirma4MA").Range.Text = Tabelle2.Cells(2, 17).Value
    End If
   End If
  End If
 Else
  Call MontagFirma5
 End If
 
Call MontagFirma5
 
End Sub
----------------------------------------------------------------------------
Sub MontagFirma5()

'Bibliothek aktivieren

Dim wordapp As Word.Application
Dim doc As Word.Document

'aktiviere Worddokument
Set doc = ActiveDocument
Set wordapp = Word.Application
 
'Montag-Firma 5
MontagFirma5:
 MoFirma5 = Tabelle2.Cells(2, 19)
 If MoFirma5 > 0 Then
  If doc.Bookmarks.Exists("MontagFirma1") = True Then
   doc.Bookmarks("MontagFirma1").Range.Text = Tabelle2.Cells(1, 19).Value
   doc.Bookmarks("MontagFirma1MA").Range.Text = Tabelle2.Cells(2, 19).Value
  Else
   If doc.Bookmarks.Exists("MontagFirma2") = True Then
    doc.Bookmarks("MontagFirma2").Range.Text = Tabelle2.Cells(1, 19).Value
    doc.Bookmarks("MontagFirma2MA").Range.Text = Tabelle2.Cells(2, 19).Value
   Else
    If doc.Bookmarks.Exists("MontagFirma3") = True Then
     doc.Bookmarks("MontagFirma3").Range.Text = Tabelle2.Cells(1, 19).Value
     doc.Bookmarks("MontagFirma3MA").Range.Text = Tabelle2.Cells(2, 19).Value
    Else
     If doc.Bookmarks.Exists("MontagFirma4") = True Then
      doc.Bookmarks("MontagFirma4").Range.Text = Tabelle2.Cells(1, 19).Value
      doc.Bookmarks("MontagFirma4MA").Range.Text = Tabelle2.Cells(2, 19).Value
     Else
      doc.Bookmarks("MontagFirma5").Range.Text = Tabelle2.Cells(1, 19).Value
      doc.Bookmarks("MontagFirma5MA").Range.Text = Tabelle2.Cells(2, 19).Value
     End If
    End If
   End If
  End If
 Else
  Call MontagFirma6
 End If
 
Call MontagFirma6
 
End Sub
----------------------------------------------------------------------------
Sub MontagFirma6()

'Bibliothek aktivieren

Dim wordapp As Word.Application
Dim doc As Word.Document

'aktiviere Worddokument
Set doc = ActiveDocument
Set wordapp = Word.Application

'Montag-Firma 6
MontagFirma6:
 MoFirma6 = Tabelle2.Cells(2, 21)
 If MoFirma6 > 0 Then
  If doc.Bookmarks.Exists("MontagFirma1") = True Then
   doc.Bookmarks("MontagFirma1").Range.Text = Tabelle2.Cells(1, 21).Value
   doc.Bookmarks("MontagFirma1MA").Range.Text = Tabelle2.Cells(2, 21).Value
  Else
   If doc.Bookmarks.Exists("MontagFirma2") = True Then
    doc.Bookmarks("MontagFirma2").Range.Text = Tabelle2.Cells(1, 21).Value
    doc.Bookmarks("MontagFirma2MA").Range.Text = Tabelle2.Cells(2, 21).Value
   Else
    If doc.Bookmarks.Exists("MontagFirma3") = True Then
     doc.Bookmarks("MontagFirma3").Range.Text = Tabelle2.Cells(1, 21).Value
     doc.Bookmarks("MontagFirma3MA").Range.Text = Tabelle2.Cells(2, 21).Value
    Else
     If doc.Bookmarks.Exists("MontagFirma4") = True Then
      doc.Bookmarks("MontagFirma4").Range.Text = Tabelle2.Cells(1, 21).Value
      doc.Bookmarks("MontagFirma4MA").Range.Text = Tabelle2.Cells(2, 21).Value
     Else
      If doc.Bookmarks.Exists("MontagFirma5") = True Then
       doc.Bookmarks("MontagFirma5").Range.Text = Tabelle2.Cells(1, 21).Value
       doc.Bookmarks("MontagFirma5MA").Range.Text = Tabelle2.Cells(2, 21).Value
      Else
       doc.Bookmarks("MontagFirma6").Range.Text = Tabelle2.Cells(1, 21).Value
       doc.Bookmarks("MontagFirma6MA").Range.Text = Tabelle2.Cells(2, 21).Value
      End If
     End If
    End If
   End If
  End If
 Else
  Call MontagFirma7
 End If

Call MontagFirma7

End Sub

.
.
.

Eine weitere Baustelle ist es später, dass ich die Infos nicht immer aus der Daten-Excel Tabelle auf das Tabellen-Blatt 2 kopieren muss, sondern die Excel-Datei vielleicht mit einem Auswahlfenster auswählen kann. Und dann habe ich nur die Excel-Datei in der das VBA-Skript mit allgemeinen Daten befüllt ist und die Firmen-Daten aus der zweiten Excel-Datei kommen. Aber das ist dann eine andere Baustelle.

Gruß

Angelo


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
20.11.2023 18:06:10 Angelo
Solved
20.11.2023 18:54:52 ralf_b
NotSolved
Rot Anfänger benötigt Hilfe
22.11.2023 08:39:24 Angelo
NotSolved
23.11.2023 00:27:36 ralf_b
NotSolved