Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Text als Vorschau in UserBox ausgeben
18.04.2018 13:01:56
Zeile94
Hallo zusammen,
ich bin gerade dabei einen Arbeitszeugnisgenerator mit VBA für meinen Arbeitgeber zu programmieren. Soweit steht auch schon alles. Eine Anforderung meines Vorgesetzten ist jedoch noch offen.
Kurz zur Erklärung des Sachverhaltes:
In der Userform werden neben Angaben zur Person auch Angaben zur Leistungsbeurteilung abgefragt. Dazu habe ich für jede zu bewertende Leistung (z.B. Arbeitsweise, Arbeitsqualität, Fachwissen, usw.) je eine Kombobox für die Benotung (Note 1 bis 3) und je eine Kombobox für die Variante (Variante 1 und 2). Hintergrund ist derjenige, dass nicht alle Arbeitszeugnisse den selben Wortlaut haben sollen, daher also für die jeweiligen Noten je zwei Varianten zur Verfügung stehen. In der zugrundeliegenden Excel-Datei wird schließlich die Kombination von Note und Variante für die jeweilige zu bewertende Leistung abgespeichert (Beispiel: in der Spalte, in der das Fachwissen abgespeichert wird, steht z.B. "32", die erste Zahl steht hierbei für die Note, also Note 3, die zweite Zahl für die Variante, hier also Variante 2.)
Nun soll aber noch in der UserForm, sprich, also noch ehe das ganze in der Excel-Tabelle abgespeichert wird, eine Vorschau der ausgewählten Kombination aus Note und Variante angezeigt werden.
Habt Ihr hierzu eine Idee?
Liebe Grüße
Zeile94

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Text als Vorschau in UserBox ausgeben
18.04.2018 13:50:42
Nepumuk
Hallo,
in welcher Form liegen denn die Text vor?
Gruß
Nepumuk
AW: Text als Vorschau in UserBox ausgeben
18.04.2018 13:56:54
Zeile94
Hallo Nepumuk,
grundsätzlich in der Excel-Datenbank garnicht. Hier ist eben je Note und Variante nur eine Zahlenkombination hinterlegt. Das sich öffnende Word-Dokument ist so "programmiert", dass "wenn Spalte H = "11", dann Text für Note 1 und Variante 1". Es wäre natürlich kein Problem, in der zweiten Tabelle des Excels diese einzufügen.
Liebe Grüße
Zeile94
AW: Text als Vorschau in UserBox ausgeben
18.04.2018 15:48:12
Nepumuk
Hallo,
und welchen Namen haben die Word-Dokumente?
Gruß
Nepumuk
AW: Text als Vorschau in UserBox ausgeben
18.04.2018 16:21:24
Zeile94
Hallo Nepumuk,
leider weiß ich nicht, was Du mit den Word-Dokumenten meinst.
Der Code zum Übernehmen der Werte aus Excel (bzw. der programmierten UserForm) in ein neues Word-Dokument, welches auf Basis einer Vorlage geöffnet wird, lautet wie folgt:
Private Sub CommandButtonAusführen_Click()
'Neue Zeile 2 für Eintrag
Rows("2:2").Select
Selection.Insert Shift:=xlDown
'Neue Werte in Zeile 2 eintragen (Anfügung: Zeile 1 sind logischerweise die Spaltentitel)
Dim last As Integer
last = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row + 1
ActiveSheet.Cells(2, 1).Value = UserForm1.KomboboxAnrede
ActiveSheet.Cells(2, 2).Value = UserForm1.TextVorname
ActiveSheet.Cells(2, 3).Value = UserForm1.TextNachname
ActiveSheet.Cells(2, 4).Value = UserForm1.TextGeburtstag
ActiveSheet.Cells(2, 5).Value = UserForm1.TextGeburtsort
ActiveSheet.Cells(2, 6).Value = UserForm1.KomboboxZeugnisart
ActiveSheet.Cells(2, 7).Value = UserForm1.TextEintritt
ActiveSheet.Cells(2, 8).Value = UserForm1.TextAustritt
ActiveSheet.Cells(2, 9).Value = UserForm1.TextAktPosition
ActiveSheet.Cells(2, 10).Value = UserForm1.TextVorherigePosition
ActiveSheet.Cells(2, 11).Value = UserForm1.TextBeförderungsdatum
ActiveSheet.Cells(2, 12).Value = UserForm1.KomboboxAusstellungsgrund
' Werte der Komboboxen
If KomboboxFachwissenSchulnote.Value = "Note 1" And KomboboxFachwissenVariante.Value = " _
Variante 1" Then ActiveSheet.Cells(2, 13).Value = "11"
If KomboboxFachwissenSchulnote.Value = "Note 1" And KomboboxFachwissenVariante.Value = " _
Variante 2" Then ActiveSheet.Cells(2, 13).Value = "12"
If KomboboxFachwissenSchulnote.Value = "Note 2" And KomboboxFachwissenVariante.Value = " _
Variante 1" Then ActiveSheet.Cells(2, 13).Value = "21"
If KomboboxFachwissenSchulnote.Value = "Note 2" And KomboboxFachwissenVariante.Value = " _
Variante 2" Then ActiveSheet.Cells(2, 13).Value = "22"
If KomboboxFachwissenSchulnote.Value = "Note 3" And KomboboxFachwissenVariante.Value = " _
Variante 1" Then ActiveSheet.Cells(2, 13).Value = "31"
If KomboboxFachwissenSchulnote.Value = "Note 3" And KomboboxFachwissenVariante.Value = " _
Variante 2" Then ActiveSheet.Cells(2, 13).Value = "32"
If KomboboxLeistungsbereitschaftSchulnote.Value = "Note 1" And  _
KomboboxLeistungsbereitschaftVariante.Value = "Variante 1" Then ActiveSheet.Cells(2, 14).Value = "11"
If KomboboxLeistungsbereitschaftSchulnote.Value = "Note 1" And  _
KomboboxLeistungsbereitschaftVariante.Value = "Variante 2" Then ActiveSheet.Cells(2, 14).Value = "12"
If KomboboxLeistungsbereitschaftSchulnote.Value = "Note 2" And  _
KomboboxLeistungsbereitschaftVariante.Value = "Variante 1" Then ActiveSheet.Cells(2, 14).Value = "21"
If KomboboxLeistungsbereitschaftSchulnote.Value = "Note 2" And  _
KomboboxLeistungsbereitschaftVariante.Value = "Variante 2" Then ActiveSheet.Cells(2, 14).Value = "22"
If KomboboxLeistungsbereitschaftSchulnote.Value = "Note 3" And  _
KomboboxLeistungsbereitschaftVariante.Value = "Variante 1" Then ActiveSheet.Cells(2, 14).Value = "31"
If KomboboxLeistungsbereitschaftSchulnote.Value = "Note 3" And  _
KomboboxLeistungsbereitschaftVariante.Value = "Variante 2" Then ActiveSheet.Cells(2, 14).Value = "32"
If KomboboxArbeitsweiseSchulnote.Value = "Note 1" And KomboboxArbeitsweiseVariante.Value = " _
Variante 1" Then ActiveSheet.Cells(2, 15).Value = "11"
If KomboboxArbeitsweiseSchulnote.Value = "Note 1" And KomboboxArbeitsweiseVariante.Value = " _
Variante 2" Then ActiveSheet.Cells(2, 15).Value = "12"
If KomboboxArbeitsweiseSchulnote.Value = "Note 2" And KomboboxArbeitsweiseVariante.Value = " _
Variante 1" Then ActiveSheet.Cells(2, 15).Value = "21"
If KomboboxArbeitsweiseSchulnote.Value = "Note 2" And KomboboxArbeitsweiseVariante.Value = " _
Variante 2" Then ActiveSheet.Cells(2, 15).Value = "22"
If KomboboxArbeitsweiseSchulnote.Value = "Note 3" And KomboboxArbeitsweiseVariante.Value = " _
Variante 1" Then ActiveSheet.Cells(2, 16).Value = "31"
If KomboboxArbeitsweiseSchulnote.Value = "Note 3" And KomboboxArbeitsweiseVariante.Value = " _
Variante 2" Then ActiveSheet.Cells(2, 16).Value = "32"
If KomboboxArbeitsqualitätSchulnote.Value = "Note 1" And KomboboxArbeitsqualitätVariante. _
Value = "Variante 1" Then ActiveSheet.Cells(2, 16).Value = "11"
If KomboboxArbeitsqualitätSchulnote.Value = "Note 1" And KomboboxArbeitsqualitätVariante. _
Value = "Variante 2" Then ActiveSheet.Cells(2, 16).Value = "12"
If KomboboxArbeitsqualitätSchulnote.Value = "Note 2" And KomboboxArbeitsqualitätVariante. _
Value = "Variante 1" Then ActiveSheet.Cells(2, 16).Value = "21"
If KomboboxArbeitsqualitätSchulnote.Value = "Note 2" And KomboboxArbeitsqualitätVariante. _
Value = "Variante 2" Then ActiveSheet.Cells(2, 16).Value = "22"
If KomboboxArbeitsqualitätSchulnote.Value = "Note 3" And KomboboxArbeitsqualitätVariante. _
Value = "Variante 1" Then ActiveSheet.Cells(2, 16).Value = "31"
If KomboboxArbeitsqualitätSchulnote.Value = "Note 3" And KomboboxArbeitsqualitätVariante. _
Value = "Variante 2" Then ActiveSheet.Cells(2, 16).Value = "32"
If KomboboxVerhaltenSchulnote.Value = "Note 1" And KomboboxVerhaltenVariante.Value = " _
Variante 1" Then ActiveSheet.Cells(2, 17).Value = "11"
If KomboboxVerhaltenSchulnote.Value = "Note 1" And KomboboxVerhaltenVariante.Value = " _
Variante 2" Then ActiveSheet.Cells(2, 17).Value = "12"
If KomboboxVerhaltenSchulnote.Value = "Note 2" And KomboboxVerhaltenVariante.Value = " _
Variante 1" Then ActiveSheet.Cells(2, 17).Value = "21"
If KomboboxVerhaltenSchulnote.Value = "Note 2" And KomboboxVerhaltenVariante.Value = " _
Variante 2" Then ActiveSheet.Cells(2, 17).Value = "22"
If KomboboxVerhaltenSchulnote.Value = "Note 3" And KomboboxVerhaltenVariante.Value = " _
Variante 1" Then ActiveSheet.Cells(2, 17).Value = "31"
If KomboboxVerhaltenSchulnote.Value = "Note 3" And KomboboxVerhaltenVariante.Value = " _
Variante 2" Then ActiveSheet.Cells(2, 17).Value = "32"
If KomboboxAbschiedsformelSchulnote.Value = "Note 1" And KomboboxAbschiedsformelVariante. _
Value = "Variante 1" Then ActiveSheet.Cells(2, 18).Value = "11"
If KomboboxAbschiedsformelSchulnote.Value = "Note 1" And KomboboxAbschiedsformelVariante. _
Value = "Variante 2" Then ActiveSheet.Cells(2, 18).Value = "12"
If KomboboxAbschiedsformelSchulnote.Value = "Note 2" And KomboboxAbschiedsformelVariante. _
Value = "Variante 1" Then ActiveSheet.Cells(2, 18).Value = "21"
If KomboboxAbschiedsformelSchulnote.Value = "Note 2" And KomboboxAbschiedsformelVariante. _
Value = "Variante 2" Then ActiveSheet.Cells(2, 18).Value = "22"
If KomboboxAbschiedsformelSchulnote.Value = "Note 3" And KomboboxAbschiedsformelVariante. _
Value = "Variante 1" Then ActiveSheet.Cells(2, 18).Value = "31"
If KomboboxAbschiedsformelSchulnote.Value = "Note 3" And KomboboxAbschiedsformelVariante. _
Value = "Variante 2" Then ActiveSheet.Cells(2, 18).Value = "32"
ActiveSheet.Cells(2, 19).Value = UserForm1.KomboboxPersonalverantwortung
ActiveSheet.Cells(2, 20).Value = UserForm1.TextVorgesetzter1
ActiveSheet.Cells(2, 21).Value = UserForm1.TextPositionV1
ActiveSheet.Cells(2, 22).Value = UserForm1.TextVorgesetzter2
ActiveSheet.Cells(2, 23).Value = UserForm1.TextPositionV2
ActiveSheet.Cells(2, 24).Value = UserForm1.TextUnterschriftsdatum
'Generierung des Arbeitszeugnisses aus Vorlage
Dim objWord As Object
Dim strPfad As String
strPfad = "......\18_Arbeitszeugnisgenerator.docx"
Set objWord = CreateObject("Word.Application")
With objWord
.Application.Visible = True
.Application.Documents.Add (strPfad)
.ActiveDocument.Fields.Update
End With
Set objWord = Nothing
End Sub
Die einzelnen Komboboxen, insbesondere der einzelnen zu beurteilenden Skills sind wie folgt programmiert:
Private Sub UserForm_Initialize()
With UserForm1.KomboboxFachwissenSchulnote
.AddItem "Note 1"
.AddItem "Note 2"
.AddItem "Note 3"
End With
With UserForm1.KomboboxLeistungsbereitschaftSchulnote
.AddItem "Note 1"
.AddItem "Note 2"
.AddItem "Note 3"
End With
With UserForm1.KomboboxArbeitsweiseSchulnote
.AddItem "Note 1"
.AddItem "Note 2"
.AddItem "Note 3"
End With
With UserForm1.KomboboxArbeitsqualitätSchulnote
.AddItem "Note 1"
.AddItem "Note 2"
.AddItem "Note 3"
End With
With UserForm1.KomboboxVerhaltenSchulnote
.AddItem "Note 1"
.AddItem "Note 2"
.AddItem "Note 3"
End With
With UserForm1.KomboboxAbschiedsformelSchulnote
.AddItem "Note 1"
.AddItem "Note 2"
.AddItem "Note 3"
End With
With UserForm1.KomboboxFachwissenVariante
.AddItem "Variante 1"
.AddItem "Variante 2"
End With
With UserForm1.KomboboxLeistungsbereitschaftVariante
.AddItem "Variante 1"
.AddItem "Variante 2"
End With
With UserForm1.KomboboxArbeitsweiseVariante
.AddItem "Variante 1"
.AddItem "Variante 2"
End With
With UserForm1.KomboboxArbeitsqualitätVariante
.AddItem "Variante 1"
.AddItem "Variante 2"
End With
With UserForm1.KomboboxVerhaltenVariante
.AddItem "Variante 1"
.AddItem "Variante 2"
End With
With UserForm1.KomboboxAbschiedsformelVariante
.AddItem "Variante 1"
.AddItem "Variante 2"
End With
With UserForm1.KomboboxPersonalverantwortung
.AddItem "nein"
.AddItem "ja"
End With
UserForm1.KomboboxFachwissenSchulnote.Value = "Note"
UserForm1.KomboboxLeistungsbereitschaftSchulnote.Value = "Note"
UserForm1.KomboboxArbeitsweiseSchulnote.Value = "Note"
UserForm1.KomboboxArbeitsqualitätSchulnote.Value = "Note"
UserForm1.KomboboxVerhaltenSchulnote.Value = "Note"
UserForm1.KomboboxAbschiedsformelSchulnote.Value = "Note"
UserForm1.KomboboxFachwissenVariante.Value = "Variante"
UserForm1.KomboboxLeistungsbereitschaftVariante.Value = "Variante"
UserForm1.KomboboxArbeitsweiseVariante.Value = "Variante"
UserForm1.KomboboxArbeitsqualitätVariante.Value = "Variante"
UserForm1.KomboboxVerhaltenVariante.Value = "Variante"
UserForm1.KomboboxAbschiedsformelVariante.Value = "Variante"
End Sub
Die Word-Datei ist mit den Mergefeldern ausgestatten, die die jeweiligen Werte der Excel-Tabelle der Zeile 2 übernehmen und je nachdem, welcher Wert z.B. bei Fachwissen hinterlegt ist, den entsprechenden Text ausgibt (für Fachwissen = Note 1 und Variante 1 = "11" = Herr Mustermann verfügt über ein äußerst hervorragendes und auch in Randbereichen sehr tiefgehendes Fachwissen, welches er in unserem Unternehmen stets in höchst gewinnbringender Weise einbringt. Auch erweitert und aktualisiert er seine Fachkenntnisse stets mit sehr großem Erfolg durch regelmäßige Teilnahme an Weiterbildungsveranstaltungen zum Nutzen unseres Unternehmens.)
Userbild
Liebe Grüße
Zeile94
Anzeige
AW: Text als Vorschau in UserBox ausgeben
18.04.2018 16:23:39
Zeile94
Hallo Nepumuk,
leider weiß ich nicht, was Du mit den Word-Dokumenten meinst.
Der Code zum Übernehmen der Werte aus Excel (bzw. der programmierten UserForm) in ein neues Word-Dokument, welches auf Basis einer Vorlage geöffnet wird, lautet wie folgt:
Private Sub CommandButtonAusführen_Click()
'Neue Zeile 2 für Eintrag
Rows("2:2").Select
Selection.Insert Shift:=xlDown
'Neue Werte in Zeile 2 eintragen (Anfügung: Zeile 1 sind logischerweise die Spaltentitel)
Dim last As Integer
last = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row + 1
ActiveSheet.Cells(2, 1).Value = UserForm1.KomboboxAnrede
ActiveSheet.Cells(2, 2).Value = UserForm1.TextVorname
ActiveSheet.Cells(2, 3).Value = UserForm1.TextNachname
ActiveSheet.Cells(2, 4).Value = UserForm1.TextGeburtstag
ActiveSheet.Cells(2, 5).Value = UserForm1.TextGeburtsort
ActiveSheet.Cells(2, 6).Value = UserForm1.KomboboxZeugnisart
ActiveSheet.Cells(2, 7).Value = UserForm1.TextEintritt
ActiveSheet.Cells(2, 8).Value = UserForm1.TextAustritt
ActiveSheet.Cells(2, 9).Value = UserForm1.TextAktPosition
ActiveSheet.Cells(2, 10).Value = UserForm1.TextVorherigePosition
ActiveSheet.Cells(2, 11).Value = UserForm1.TextBeförderungsdatum
ActiveSheet.Cells(2, 12).Value = UserForm1.KomboboxAusstellungsgrund
' Werte der Komboboxen
If KomboboxFachwissenSchulnote.Value = "Note 1" And KomboboxFachwissenVariante.Value = " _
Variante 1" Then ActiveSheet.Cells(2, 13).Value = "11"
If KomboboxFachwissenSchulnote.Value = "Note 1" And KomboboxFachwissenVariante.Value = " _
Variante 2" Then ActiveSheet.Cells(2, 13).Value = "12"
If KomboboxFachwissenSchulnote.Value = "Note 2" And KomboboxFachwissenVariante.Value = " _
Variante 1" Then ActiveSheet.Cells(2, 13).Value = "21"
If KomboboxFachwissenSchulnote.Value = "Note 2" And KomboboxFachwissenVariante.Value = " _
Variante 2" Then ActiveSheet.Cells(2, 13).Value = "22"
If KomboboxFachwissenSchulnote.Value = "Note 3" And KomboboxFachwissenVariante.Value = " _
Variante 1" Then ActiveSheet.Cells(2, 13).Value = "31"
If KomboboxFachwissenSchulnote.Value = "Note 3" And KomboboxFachwissenVariante.Value = " _
Variante 2" Then ActiveSheet.Cells(2, 13).Value = "32"
If KomboboxLeistungsbereitschaftSchulnote.Value = "Note 1" And  _
KomboboxLeistungsbereitschaftVariante.Value = "Variante 1" Then ActiveSheet.Cells(2, 14).Value = "11"
If KomboboxLeistungsbereitschaftSchulnote.Value = "Note 1" And  _
KomboboxLeistungsbereitschaftVariante.Value = "Variante 2" Then ActiveSheet.Cells(2, 14).Value = "12"
If KomboboxLeistungsbereitschaftSchulnote.Value = "Note 2" And  _
KomboboxLeistungsbereitschaftVariante.Value = "Variante 1" Then ActiveSheet.Cells(2, 14).Value = "21"
If KomboboxLeistungsbereitschaftSchulnote.Value = "Note 2" And  _
KomboboxLeistungsbereitschaftVariante.Value = "Variante 2" Then ActiveSheet.Cells(2, 14).Value = "22"
If KomboboxLeistungsbereitschaftSchulnote.Value = "Note 3" And  _
KomboboxLeistungsbereitschaftVariante.Value = "Variante 1" Then ActiveSheet.Cells(2, 14).Value = "31"
If KomboboxLeistungsbereitschaftSchulnote.Value = "Note 3" And  _
KomboboxLeistungsbereitschaftVariante.Value = "Variante 2" Then ActiveSheet.Cells(2, 14).Value = "32"
If KomboboxArbeitsweiseSchulnote.Value = "Note 1" And KomboboxArbeitsweiseVariante.Value = " _
Variante 1" Then ActiveSheet.Cells(2, 15).Value = "11"
If KomboboxArbeitsweiseSchulnote.Value = "Note 1" And KomboboxArbeitsweiseVariante.Value = " _
Variante 2" Then ActiveSheet.Cells(2, 15).Value = "12"
If KomboboxArbeitsweiseSchulnote.Value = "Note 2" And KomboboxArbeitsweiseVariante.Value = " _
Variante 1" Then ActiveSheet.Cells(2, 15).Value = "21"
If KomboboxArbeitsweiseSchulnote.Value = "Note 2" And KomboboxArbeitsweiseVariante.Value = " _
Variante 2" Then ActiveSheet.Cells(2, 15).Value = "22"
If KomboboxArbeitsweiseSchulnote.Value = "Note 3" And KomboboxArbeitsweiseVariante.Value = " _
Variante 1" Then ActiveSheet.Cells(2, 16).Value = "31"
If KomboboxArbeitsweiseSchulnote.Value = "Note 3" And KomboboxArbeitsweiseVariante.Value = " _
Variante 2" Then ActiveSheet.Cells(2, 16).Value = "32"
If KomboboxArbeitsqualitätSchulnote.Value = "Note 1" And KomboboxArbeitsqualitätVariante. _
Value = "Variante 1" Then ActiveSheet.Cells(2, 16).Value = "11"
If KomboboxArbeitsqualitätSchulnote.Value = "Note 1" And KomboboxArbeitsqualitätVariante. _
Value = "Variante 2" Then ActiveSheet.Cells(2, 16).Value = "12"
If KomboboxArbeitsqualitätSchulnote.Value = "Note 2" And KomboboxArbeitsqualitätVariante. _
Value = "Variante 1" Then ActiveSheet.Cells(2, 16).Value = "21"
If KomboboxArbeitsqualitätSchulnote.Value = "Note 2" And KomboboxArbeitsqualitätVariante. _
Value = "Variante 2" Then ActiveSheet.Cells(2, 16).Value = "22"
If KomboboxArbeitsqualitätSchulnote.Value = "Note 3" And KomboboxArbeitsqualitätVariante. _
Value = "Variante 1" Then ActiveSheet.Cells(2, 16).Value = "31"
If KomboboxArbeitsqualitätSchulnote.Value = "Note 3" And KomboboxArbeitsqualitätVariante. _
Value = "Variante 2" Then ActiveSheet.Cells(2, 16).Value = "32"
If KomboboxVerhaltenSchulnote.Value = "Note 1" And KomboboxVerhaltenVariante.Value = " _
Variante 1" Then ActiveSheet.Cells(2, 17).Value = "11"
If KomboboxVerhaltenSchulnote.Value = "Note 1" And KomboboxVerhaltenVariante.Value = " _
Variante 2" Then ActiveSheet.Cells(2, 17).Value = "12"
If KomboboxVerhaltenSchulnote.Value = "Note 2" And KomboboxVerhaltenVariante.Value = " _
Variante 1" Then ActiveSheet.Cells(2, 17).Value = "21"
If KomboboxVerhaltenSchulnote.Value = "Note 2" And KomboboxVerhaltenVariante.Value = " _
Variante 2" Then ActiveSheet.Cells(2, 17).Value = "22"
If KomboboxVerhaltenSchulnote.Value = "Note 3" And KomboboxVerhaltenVariante.Value = " _
Variante 1" Then ActiveSheet.Cells(2, 17).Value = "31"
If KomboboxVerhaltenSchulnote.Value = "Note 3" And KomboboxVerhaltenVariante.Value = " _
Variante 2" Then ActiveSheet.Cells(2, 17).Value = "32"
If KomboboxAbschiedsformelSchulnote.Value = "Note 1" And KomboboxAbschiedsformelVariante. _
Value = "Variante 1" Then ActiveSheet.Cells(2, 18).Value = "11"
If KomboboxAbschiedsformelSchulnote.Value = "Note 1" And KomboboxAbschiedsformelVariante. _
Value = "Variante 2" Then ActiveSheet.Cells(2, 18).Value = "12"
If KomboboxAbschiedsformelSchulnote.Value = "Note 2" And KomboboxAbschiedsformelVariante. _
Value = "Variante 1" Then ActiveSheet.Cells(2, 18).Value = "21"
If KomboboxAbschiedsformelSchulnote.Value = "Note 2" And KomboboxAbschiedsformelVariante. _
Value = "Variante 2" Then ActiveSheet.Cells(2, 18).Value = "22"
If KomboboxAbschiedsformelSchulnote.Value = "Note 3" And KomboboxAbschiedsformelVariante. _
Value = "Variante 1" Then ActiveSheet.Cells(2, 18).Value = "31"
If KomboboxAbschiedsformelSchulnote.Value = "Note 3" And KomboboxAbschiedsformelVariante. _
Value = "Variante 2" Then ActiveSheet.Cells(2, 18).Value = "32"
ActiveSheet.Cells(2, 19).Value = UserForm1.KomboboxPersonalverantwortung
ActiveSheet.Cells(2, 20).Value = UserForm1.TextVorgesetzter1
ActiveSheet.Cells(2, 21).Value = UserForm1.TextPositionV1
ActiveSheet.Cells(2, 22).Value = UserForm1.TextVorgesetzter2
ActiveSheet.Cells(2, 23).Value = UserForm1.TextPositionV2
ActiveSheet.Cells(2, 24).Value = UserForm1.TextUnterschriftsdatum
'Generierung des Arbeitszeugnisses aus Vorlage
Dim objWord As Object
Dim strPfad As String
strPfad = "......\18_Arbeitszeugnisgenerator.docx"
Set objWord = CreateObject("Word.Application")
With objWord
.Application.Visible = True
.Application.Documents.Add (strPfad)
.ActiveDocument.Fields.Update
End With
Set objWord = Nothing
End Sub
Die einzelnen Komboboxen, insbesondere der einzelnen zu beurteilenden Skills sind wie folgt programmiert:
Private Sub UserForm_Initialize()
With UserForm1.KomboboxFachwissenSchulnote
.AddItem "Note 1"
.AddItem "Note 2"
.AddItem "Note 3"
End With
With UserForm1.KomboboxLeistungsbereitschaftSchulnote
.AddItem "Note 1"
.AddItem "Note 2"
.AddItem "Note 3"
End With
With UserForm1.KomboboxArbeitsweiseSchulnote
.AddItem "Note 1"
.AddItem "Note 2"
.AddItem "Note 3"
End With
With UserForm1.KomboboxArbeitsqualitätSchulnote
.AddItem "Note 1"
.AddItem "Note 2"
.AddItem "Note 3"
End With
With UserForm1.KomboboxVerhaltenSchulnote
.AddItem "Note 1"
.AddItem "Note 2"
.AddItem "Note 3"
End With
With UserForm1.KomboboxAbschiedsformelSchulnote
.AddItem "Note 1"
.AddItem "Note 2"
.AddItem "Note 3"
End With
With UserForm1.KomboboxFachwissenVariante
.AddItem "Variante 1"
.AddItem "Variante 2"
End With
With UserForm1.KomboboxLeistungsbereitschaftVariante
.AddItem "Variante 1"
.AddItem "Variante 2"
End With
With UserForm1.KomboboxArbeitsweiseVariante
.AddItem "Variante 1"
.AddItem "Variante 2"
End With
With UserForm1.KomboboxArbeitsqualitätVariante
.AddItem "Variante 1"
.AddItem "Variante 2"
End With
With UserForm1.KomboboxVerhaltenVariante
.AddItem "Variante 1"
.AddItem "Variante 2"
End With
With UserForm1.KomboboxAbschiedsformelVariante
.AddItem "Variante 1"
.AddItem "Variante 2"
End With
With UserForm1.KomboboxPersonalverantwortung
.AddItem "nein"
.AddItem "ja"
End With
UserForm1.KomboboxFachwissenSchulnote.Value = "Note"
UserForm1.KomboboxLeistungsbereitschaftSchulnote.Value = "Note"
UserForm1.KomboboxArbeitsweiseSchulnote.Value = "Note"
UserForm1.KomboboxArbeitsqualitätSchulnote.Value = "Note"
UserForm1.KomboboxVerhaltenSchulnote.Value = "Note"
UserForm1.KomboboxAbschiedsformelSchulnote.Value = "Note"
UserForm1.KomboboxFachwissenVariante.Value = "Variante"
UserForm1.KomboboxLeistungsbereitschaftVariante.Value = "Variante"
UserForm1.KomboboxArbeitsweiseVariante.Value = "Variante"
UserForm1.KomboboxArbeitsqualitätVariante.Value = "Variante"
UserForm1.KomboboxVerhaltenVariante.Value = "Variante"
UserForm1.KomboboxAbschiedsformelVariante.Value = "Variante"
End Sub
Die Word-Datei ist mit den Mergefeldern ausgestatten, die die jeweiligen Werte der Excel-Tabelle der Zeile 2 übernehmen und je nachdem, welcher Wert z.B. bei Fachwissen hinterlegt ist, den entsprechenden Text ausgibt (für Fachwissen = Note 1 und Variante 1 = "11" = Herr Mustermann verfügt über ein äußerst hervorragendes und auch in Randbereichen sehr tiefgehendes Fachwissen, welches er in unserem Unternehmen stets in höchst gewinnbringender Weise einbringt. Auch erweitert und aktualisiert er seine Fachkenntnisse stets mit sehr großem Erfolg durch regelmäßige Teilnahme an Weiterbildungsveranstaltungen zum Nutzen unseres Unternehmens.)
Liebe Grüße
Zeile94
Anzeige
AW: Text als Vorschau in UserBox ausgeben
18.04.2018 20:45:30
Nepumuk
Hallo,
na irgendwo muss doch der Text herkommen.
Gruß
Nepumuk
AW: Text als Vorschau in UserBox ausgeben
19.04.2018 07:56:16
Zeile94
Hallo Nepumuk,
wie bereits beschrieben wird der Text im Word-Dokument erzeugt. Dieses ist zunächst mit Mergefeldern ausgestattet, sodass die abgespeicherten Werte der Excel-Tabelle direkt übernommen werden. Wenn nun in der Tabelle in der Spalte "Fachwissen" für den Mitarbeiter "31" hinterlegt ist, wird im Word mittels einer Wenn-Dann-Funktion der Text generiert. Die Wenn-Dann-Funktionen sind bei allen zu bewertenden Skills wie folgt aufgebaut:
"Wenn (Fachwissen = "11"; "Der Mitarbeiter war der beste überhaupt,..."; Wenn (Fachwissen = "12"; "Er war ein echt cooler Mitarbeiter"; Wenn (Fachwissen = "21",; "Der Mitarbeiter war eigentlich ein recht ein Guter; usw....)))
Wie gesagt, es wäre auch kein Problem, die entsprechenden Texte einfach in das zweite Tabellenblatt zu implementieren. Ich weiß ja eben nicht, wie ich das Problem gelöst bekomme. Aber die eigentliche Frage lautet nicht, woher die Texte herkommen, sondern wie ich diese Vorschau generiere und das quasi in "Echtzeit".
Liebe Grüße
Zeile94
Anzeige
AW: Text als Vorschau in UserBox ausgeben
19.04.2018 08:43:05
Nepumuk
Hallo,
da du mir partout nicht verraten willst wo der Text herkommt, gebe ich auf.
Gruß
Nepumuk
AW: Text als Vorschau in UserBox ausgeben
19.04.2018 09:30:04
Zeile94
Hallo Nepumuk,
schade, dass Du mein Anliegen nicht verstehst oder mir nicht sagen möchtest, was Du mit "wo der Text herkommt" genau meinst. Danke Dir dennoch für Deine Zeit und Mühe.
Für alle Anderen nachfolgend noch einige Informationen.
Wie bereits beschrieben, ist in der Excel-Tabelle selbst der Bewertungstext für die Skills nicht hinterlegt, sprich die Textvarianten, die schlussendlich in der Vorschau erscheinen sollten. Diese werden erst im sich öffnenden Word mittels einer Wenn-Dann-Funktion generiert. Wie die Texte auszusehen haben, ist im angefügten Word zu sehen.
Darüber hinaus findet Ihr die Excel des AZ-Generators.
Danke und liebe Grüße
Zeile94
https://www.herber.de/bbs/user/121140.xlsm
https://www.herber.de/bbs/user/121141.doc
Anzeige
Text als Vorschau in UserBox ausgeben
19.04.2018 16:36:55
Anton
Hallo Johann,
vielleicht hilft dir dieser Beitrag weiter.
mfg Anton
AW: Text als Vorschau in UserBox ausgeben
23.04.2018 08:42:09
Johann
Hallo Anton,
vielen Dank für Deine Unterstützung. In der Zwischenzeit habe ich eine - wenn auch vielleicht etwas uncharmante - Lösung gefunden:
Private Sub KomboboxFachwissenVariante_Click()
If KomboboxFachwissenSchulnote.Value = "Note 1" And KomboboxFachwissenVariante.Value = " _
Variante 1" Then TextBoxVorschau.Value = "Fachwissen: Herr POSTERMANN verfügt über ein äußerst hervorragendes und auch in Randbereichen sehr tiefgehendes Fachwissen, welches er in unserem Unternehmen stets in höchst gewinnbringender Weise einbrachte. Auch erweiterte und aktualisierte er seine Fachkenntnisse stets mit sehr großem Erfolg durch regelmäßige Teilnahme an Weiterbildungsveranstaltungen zum Nutzen unseres Unternehmens."
If KomboboxFachwissenSchulnote.Value = "Note 1" And KomboboxFachwissenVariante.Value = " _
Variante 2" Then TextBoxVorschau.Value = "Fachwissen: Mit seinem umfangreichen und äußerst fundierten Fachwissen erzielte Herr POSTERMANN stets überdurchschnittliche Erfolge. Dieses konnte er durch die Teilnahme an zahlreichen Weiterbildungsmaßnahmen sehr erfolgreich weiter ausbauen. Daher war er in unserem Hause ein allseits geschätzter Ansprechpartner bei allen fachlichen Problemstellungen."
If KomboboxFachwissenSchulnote.Value = "Note 2" And KomboboxFachwissenVariante.Value = " _
Variante 1" Then TextBoxVorschau.Value = "Fachwissen: Herr POSTERMANN verfügt über ein gutes und umfassendes Fachwissen, welches er zur Bewältigung seiner Aufgaben sehr sicher und erfolgreich einsetzte. Durch regelmäßige Teilnahme an Weiterbildungsveranstaltungen konnte er seine Fachkenntnisse sehr erfolgreich weiter ausbauen."
If KomboboxFachwissenSchulnote.Value = "Note 2" And KomboboxFachwissenVariante.Value = " _
Variante 2" Then TextBoxVorschau.Value = "Fachwissen: Herr POSTERMANN erzielte mit seinem umfangreichen und fundierten Fachwissen stets gute Erfolge. Er beherrschte seinen Arbeitsbereich umfassend und überdurchschnittlich, fand gute Lösungen und hatte neue Ideen."
If KomboboxFachwissenSchulnote.Value = "Note 3" And KomboboxFachwissenVariante.Value = " _
Variante 1" Then TextBoxVorschau.Value = "Fachwissen: Herr POSTERMANN verfügt über ein solides Fachwissen, welches er zur Bewältigung seiner Aufgaben sicher und erfolgreich einsetzte. Durch regelmäßige Teilnahme an Weiterbildungsveranstaltungen konnte er seine Fachkenntnisse weiter erfolgreich ausbauen."
If KomboboxFachwissenSchulnote.Value = "Note 3" And KomboboxFachwissenVariante.Value = " _
Variante 2" Then TextBoxVorschau.Value = "Fachwissen: Herr POSTERMANN verfügt über ein solides Fachwissen auf seinem Gebiet, das er zur Lösung seiner Aufgaben einsetzte. Durch regelmäßige Teilnahme an Weiterbildungsveranstaltungen konnte er seine Fachkenntnisse weiter erfolgreich ausbauen."
End Sub
Der Vorteil ist zudem, dass wenn das nächste Skill, hier zum Beispiel "Leistungsbereitschaft" ausgewählt wird, dann erscheint die Vorschau der Leistungsbereitschaft und die Vorschau des Fachwissens verschwindet.
Danke für die Hilfe und liebe Grüße
Zeile94
Anzeige

312 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige