Hallo Mathias,
in dieser Mailing-Liste ist man per Du.
Ich kann deine Fehlermeldung nicht nachvollziehen, allerdings habe ich
bei der Gelegenheit zwei kleine Fehler im Makro "ermittleIBAN" gefunden
(ich habe es wohl leicht redigiert, nachdem ich es getestet hatte, und
dabei geschlampt), so dass sich das Behandeln deiner Frage allein
deshalb schon gelohnt hat. Diese Fehler bringen aber andere
Fehlermeldungen als du nennst.
DIe beiden Fehler befinden sich ziemlich am Ende des Codes auf Seite 21:
- hinter "next" dürfen keine Punkte stehen
- in der nächsten Zeile muss es statt "rest4" (die Variable gibt es gar
nicht im Code) "rest" heißen. (Der selbe Fehler findet sich auf Seite 8.)
Ich habe ein neues Calc-Dokument angelegt, wie im Dokument beschrieben
die Makros setIBAN und ermittleIBAN (per Copy & Paste aus dem Kapitel
"Erste Schritte", mit den genannten Korrekturen) und den Dialog
angelegt, dann wie in Abb. 16 die drei Spaltenüberschriften eingegeben
(die aber im Programm nicht verwendet werden und nur der Orientierung
dienen) und in Zeile 2 eine fiktive Kontonummer und eine fiktive BLZ
eingegeben. Wenn ich dann das Makro setIBAN starte, wird der Dialog
geöffnet, ich gebe in beiden Feldern die "2" ein, dann wird die IBAN in
der Spalte "IBAN" eingetragen.
Ich schicke dir das Beispieldokument direkt an deine Mailadresse, weil
in dieser Mailingliste keine Anhänge möglich sind, damit du das
ausprobieren und vielleicht auch den Code vergleichen kannst. Ich
schicke auch das korrigierte Kapitel des Handbuchs mit, da sind
zusätzlich auch ein paar Schreibfehler im normalen Text korrigiert. Ich
werde auch veranlassen, dass die korrigierte Fassung zum Herunterladen
zur Verfügung steht.
Wenn du nicht siehst, was anders ist und den Fehler weiterhin erhältst,
kannst du mir auch (direkt) deine Datei schicken, dann schaue ich mir
das Problem im Original an.
Deine Anfrage hat mich auch deswegen gefreut, weil ich dadurch sehen
konnte, dass jemand sich mit dem Kapitel beschäftigt und die Arbeit
daran nicht umsonst war; man kriegt sowas ja sonst gar nicht mit. Das
Kapitel ist fast vollständig neu geschrieben, weil die alte Version sich
nur mit der nur eingeschränkt nutzbaren Aufzeichnung von Eingaben
(Makro-Recorder) beschäftigt hat. Die kann aber nur immer gleiche
Abläufe beschleunigen, bietet aber keine Möglichkeit für den Einsatz von
Prüf- und Verarbeitungslogik, Benutzerinteraktion usw. Wegen des
weitgehend neuen Textes ist aber auch die Gefahr von Schreib- und
sonstigen Fehlern größer, wie wir nun gesehen haben. Vielleicht habe ich
mal etwas vergessen zu schreiben, was für einen Anfänger wichtig wäre.
Wenn du da etwas entdeckst oder eine Frage hast, schreibe mir ruhig
direkt, das dient zur Verbesserung des Dokuments und kommt anderen
Lesern zugute.
Zum echten Lernen von Basic für LibreOffice ist das Kapitel sicher zu
wenig umfangreich, es sei denn, man hat schon vie Erfahrung mit dem
Programmieren, dann kann man sich vielleicht vieles zusammenreimen. Das
Kapitel sollte nur die Grundprinzipien vorstellen (die Makros müssen
natürlich trotzdem korrekt sein), damit ein Neuling abschätzen kann, ob
er sich mit der Thematik weiter beschäftigen will.
Aber eine umfassende Darstellung, wie sie die im Dokument genannten
Bücher von Krumbein und Marcelly/Godard darstellen, kann diese
Einführung nicht liefern. Leider gibt es in der
LibreOffice-Dokumentation kein entsprechendes Dokument (es müsste dann
schon auch 700 - 900 Seiten haben). Die Online-Hilfe bietet viele
hilfreiche Details, aber die Systematik des Programmierens lässt sich in
dieser Häppchen-Form der Dokumentation nur schwer unterbringen. Ich habe
selbst im Lauf meines Lebens in einigen Sprachen programmiert, aber ohne
die systematische Einführung dieser Bücher hätte ich mich deutlich
schwerer getan. Ein bisschen was von dieser Unterstützung wollte ich mit
meinem Kapitel vermitteln.
Ich wünsche dir aber, dass du amProgrammieren in Basic mit LibreOfffice
dranbleibst. Mir macht das immer sehr viel Feude.
Gruß
Gerhard
Am 27.06.2017 um 19:53 schrieb Mathias Foerster:
Sehr geehrte Damen und Herren,
bin dabei Basic für LibreOffice zu lernen. Mit dem Makro vom oben
genannten Dokument habe ich Probleme.
Diese Zeile "if ermittleIBAN(cBLZ.string, cKonto.string, IBAN)then"
wird mit folgendem Kommentar im sub setIban
bemängelt "Inadmissible value or data type. Data type mismatch."
Könnte da etwas nicht stimmen im makro?
--
Liste abmelden mit E-Mail an: discuss+unsubscribe@de.libreoffice.org
Probleme? http://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/discuss/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert
Context
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.