Hahner_Microsoft-Word-2010---Das-Ideenbuch_ISBN_9783866457980
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Excel-Tabelle: Daten aus den Fragebogen auslesen<br />
Um das Datum in VBA in einer Variablen vom Typ Date abzulegen, muss demnach<br />
zum einen das »T« entfernt und zum anderen aus der Zeichenkette ein Datum werden.<br />
Zuständig hierfür ist die Funktion fInDatumUmwandeln, der als Parameter das Datum im<br />
XML-Format übergeben wird und die als Ergebnis das Datum im VBA-Format zurückliefert.<br />
Im Praxisbeispiel wird so mit<br />
gFormularDaten.dtmInstallationsdatum = fInDatumUmwandeln(strvDatum:=cxmlvCustomXML.<br />
SelectSingleNode(cXMLRootKnoten & "/Installationsdatum").Text)<br />
der Inhalt des XML-Knotens root/Installationsdatum ausgelesen und an die Funktion<br />
fInDatumUmwandeln übergeben; das umgewandelte Datum wird in der Strukturvariablen<br />
dtmInstallationsdatum abgelegt.<br />
Die Funktion fInDatumUmwandeln kommt mit wenigen Kommandos aus, da sie in dem<br />
übergebenen String strvDatum das »T« durch »nichts« ersetzt und das so umgewandelte<br />
Ergebnis mit CDate in ein Datum konvertiert:<br />
Function fInDatumUmwandeln(ByVal strvDatum As String) As Date<br />
If Trim(strvDatum) "" Then<br />
fInDatumUmwandeln = CDate(Replace(Expression:=strvDatum, _<br />
Find:="T", _<br />
Replace:=" "))<br />
Else<br />
fInDatumUmwandeln = ""<br />
End If<br />
End Function<br />
Kontrollkästchen zur Notenvergabe auswerten<br />
Die zweite Routine, die neben der Routine pDatenAusDenXMLKnotenAuslesen innerhalb der<br />
großen Ausleseschleife aufgerufen wird, kümmert sich um die Auswertung der Kontrollkästchen.<br />
Sie ruft für jede (der aus sechs Kontrollkästchen bestehenden) Benotung<br />
die Funktion fNotenAuswerten auf. Dabei werden der Funktion die Inhalte der sechs Kontrollkästchen<br />
in Form der Parameter boovNote1 bis boovNote6 übergeben, das Ergebnis gibt<br />
die Funktion in Form eines Integer-Wertes zwischen 1 und 6 zurück.<br />
Sub pNotenAuswerten()<br />
gintNoteMenüband = fNotenAuswerten(boovNote1:=gFormularDaten.booMenüband1, _<br />
boovNote2:=gFormularDaten.booMenüband2, _<br />
boovNote3:=gFormularDaten.booMenüband3, _<br />
boovNote4:=gFormularDaten.booMenüband4, _<br />
boovNote5:=gFormularDaten.booMenüband5, _<br />
boovNote6:=gFormularDaten.booMenüband6)<br />
...<br />
End Sub<br />
In der Funktion fNotenAuswerten wird über einfache If-Then-ElseIf-Abfragen der Status<br />
der Kontrollkästchen geprüft. Da <strong>Word</strong> keine Optionsfelder kennt, bei denen immer<br />
nur ein Optionsfeld aktiv sein kann, ist es möglich, dass im Fragebogen mehrere Kontrollkästchen<br />
angekreuzt wurden. Deshalb wird bedingt durch die Reihenfolge in der<br />
191