Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Fußnoten in Access

Begonnen von goetz, Juli 16, 2013, 15:34:09

⏪ vorheriges - nächstes ⏩

goetz

Hallo,

ich möchte gerne Fußnotten in Access realisieren.
Wenn man eine Tabelle hat, in der sich lediglich ein Textfeld befindet und man in diesem Textfeld eine Fußnote dadurch addressiert, dass man z.B. in den Text ein " (F das hier ist der Text der Fußnote) " setzt, wobei die einleitende Begrenzung " (F " ist und die beendende ")". Es ist kein Problem mittels VBA diese Marke zu identifizieren und den zwischen den begrenzern befindlichen Text in einern String zu speichern.

Mein Problem ist aber:
Wie kann ich diese Strings pro Report-Page im Page-Footer ausgeben, so dass NUR die Strings (fußnoten) ausgegeben werden, die sich tatsächlich auf dieser Seite befunden haben? Ich möchte ja die Fußnoten Seitenweise ausgeben und nicht am Ende des Reports....

Hat jemand eine Idee?

Tausend dank!

MzKlMu

Hallo,
hast Du nur Fußnoten für ein Feld?
Oder können mehrere Felder Fußnoten haben?
Gruß Klaus

goetz

Das könnte auch in mehren Felder vorkommen.

goetz

Aber in abzählbar vielen. Also, z.B. in drei verschiedenen Feldern. Nicht in allen.

MzKlMu

Hallo,
und wie dann ausgeben im Seitenfuß, auch feldbezogen oder haben die Fußnoten eine feldbezogene Nummer.

Das mit dem F finde ich prinzipiell keine gute Idee. Die Fußnoten gehören in eine Tabelle mit einem Fremdschlüssel als Bezug.
Gruß Klaus

goetz

- Fußnoten sollten eine in einer Konfig-Tabelle vorgegebene Start-Nummer haben und sich dann entsprechend hochzählen (kein Problem).
- Im Seitenfuß könnten die Fußnoten in einem Textfeld übereinander ausgegeben werden (ggf. auch kein Problem).

Und ja, ich gebe Dir Recht: Gefühlt müssen die Fußnoten als Tabelle angelegt werden.

- Das Problem dabei ist aber, dass ich nicht weiß, wie dann die Referenzierung innerhalb des Fließtextes stattfinden soll. Die Fußnote muss ja an einen bestimmten Punkt innerhalb des Textes und sich nicht auf das Textfeld im Ganzen beziehen.

database

Hallo,

ZitatDie Fußnote muss ja an einen bestimmten Punkt innerhalb des Textes und sich nicht auf das Textfeld im Ganzen beziehen

Naja, Access ist aber auch keine Textverarbeitung wie Word ...

goetz

Das weiß ich. Ich weiß auch, wie ich mit LaTeX, Word, InDesign, 3B2, LibreOffice, QuarkXPress, Pagemaker, DocBook usw usf Fußnoten setzen könnte, aber es muss halt mit Access sein. Nicht optional.

MzKlMu

Hallo,
lege die Fußnote als Zahl im Fließtext an.
Z.B. so:
aaaaaaaaaaaaaaaaa {1.)} bbbbbbbbbbbbbbbb

In der Tabelle für die Fußnote benötigst Du dann einen Fremdschlüssel zum Hauptdatensatz und die Zahl vor der runden Klammer als Schlüsselzahl.

Wie man das Ganze jetzt aber im Seitenfuß seitenbezogen ausgeben könnte habe ich keine Idee.
Gruß Klaus

goetz

Das ist leider genau der Knackpunkt :-(

database

#10
Hi,

ZitatDas weiß ich. Ich weiß auch, wie ich ...
Ich wollte mit meiner Äußerung ja nicht unbedingt auf deinem Schlips herumsteigen.
Manche wollen auch mit einem Fiat 600 ein Formel 1 - Rennen mitfahren - sie denken aber dann ganz anders, wenn sie in der 3. Kurve von den Jungs zum ersten Mal überrundet werden  ;D ::)

ZitatWie man das Ganze jetzt aber im Seitenfuß seitenbezogen ausgeben könnte
Nur mal so eine Idee...
Das Ereignis - 'Beim Formatieren' des Seitenfußes wird ja bei jeder Seite ausgeführt.
Ev. könnte von da aus das Textfeld darüber - also im Detailbereich noch angesprochen werden und so der Inhalt wie bereits erwähnt
ZitatEs ist kein Problem mittels VBA diese Marke zu identifizieren und den zwischen den begrenzern befindlichen Text in einern String zu speichern.
analysiert und ausgewertet werden.
Wenn das möglich ist, könnte die Referenz, die sich ja in einer Tabelle befindet auch ausgelesen und in ein Textfeld oder Memofeld im Seitenfuß eingefügt werden.
Im Prinzip sollte es gehen, da sich ja auch Zwischensummen und Überträge auf die Weise erstellen und ausgeben lassen und die beziehen sich ja auch immer auf eine Seite.
Fraglich ist nur ob eine so umfangreiche Aktion - und die wird es zweifelsfrei sein - im Format-Ereignis überhaupt fehlerfrei durchläuft.

goetz

#11
Hmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm.......

Vorerst der emotionale Quark: Ich gehe völlig emotionsfrei in so eine Diskussion, fühlte mich also auch nicht auf den Schlipps getreten, ich wollte nur erreichen, dass keine Off-Topic-Texte entstehen und hatte "Angst", dass eben dies passiert ;-)

Deine Idee ist ziemlich gut. Überhaupt wusste ich garnicht, dass "beim Formatieren" geschieht, sobald EINE Seite formatiert wird. Interessant in diesem Zusammenhang fand ich auch das "Bei Seite"-Event. Überhaupt vermisse ich so ein schönes DOM in VBA für einen fertigen Report. Oder ich bin einfach nur zu beschränkt, es zu sehen.
Ich komme jedoch von der Java/C++-Seite her und bin nicht so firm in VBA, als dass ich das nun "mal eben" implementieren könnte, wie ich zu meiner Schande gestehen muss. Aber ich werde mir auf jeden Fall Mühe geben. Danke vorerst.

database

Hi,

alles klar ...

Zitatdass keine Off-Topic-Texte entstehen und hatte "Angst", dass eben dies passiert ;-)
;D bei meiner Anzahl von Beiträgen ist die Gefahr relativ gering ... aber ein bisschen Unterhaltung schadet ja auch nicht  ::)

Sieh mal hier...
http://www.donkarl.com?FAQ5.7
Demnach müssen ja die Daten beim Formatieren des Seitenfußes ja bereits im Textfeld 'bekannt' sein - das war meine Überlegung dabei.

goetz

Ja, ich sehe das ein, muss mir nur mal Gedanken darüber machen, wie man sowas in VBA nun realisiert.

Im Grunde ist es doch nun egal, ob ich die Fußnoten in einer Tabelle ablege, oder nicht... oder?
Denn:
Wenn ich in dem Fließtext eine Fußnote markiere, z.B. durch "(F das hier ist die fußnote)" (mir fällt halt nichts "besseres" ein.), dann wäre es doch schöner, wenn eine globale Variable hochzählt, die als Startpunkt eine von mir vorgegebene INT hat. Wenn ich nun das Textfeld auf dem Seitenfuß um die obige Fußnote inkl. Nummer erweitere.
Dadurch spare ich mir eine Tabelle, ebenso die Verknüpfung.Außerdem bin ich durch die ganze Aktion eh schon aus der "Schön in Access gemacht"-Nummer raus und in einer "gefrickelt bis zum Anschlag"-Geschichte drin =/

In diesem Zusammenhang könnte das "bei Seite"-Event wertvoll sein, denn dies feuert erst, wenn tatsächlich der Report als Dokument gerendert wurde, also die Seitenzahlen und Umbrüche klar sind. Das ist wohl erst der Fall, wenn das Dokument zu einem Drucker geschickt wird. Ahh... die Access-Untiefen...

MzKlMu

Hallo,
ZitatDadurch spare ich mir eine Tabelle, ebenso die Verknüpfung.
es ist der falsch Ansatz in einer Datenbank Tabellen und Beziehungen sparen zu wollen. Eine Datenbank lässt sich nur sinnvoll über Tabellen und unerlässliche Beziehungen aufbauen.
Daher: Die Fußnoten gehören in eine Extra Tabelle, alles andere halte ich für falsch. Ich bin auch überzeugt davon, das eigentliche Vorhaben lässt sich mit einer extra Tabelle einfacher realisieren.
Gruß Klaus