28.03.2019 Aufrufe

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

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!