Hallo Leute,
Es wäre super, wenn mir jemand bei folgendem Problem helfen könnte. Ich verwalte meine Schallplattensammlung mit einer Access Datenbank. Für die Musikbox verwende ich vorgedruckte und perforierte Titelstrips, die man bedrucken kann.
Titel Seite A
Interpret
Titel Seite B
Wie kann ich in einem Berichtsformular die Zeichenbreite auf maximal 27 Zeichen begrenzen?
Leider passiert jetzt das, wenn der Datensatz länger als 27 Zeichen ist, wird der Rest auf eine neue Zeile geschrieben und dies führt zur Verschiebung der ganzen Seite.
Der Bericht kommt über eine Abfrage von der Tabelle.
Würde mich über einen Tipp freuen
Martin
Hallo,
was ist ein Berichtsformular ?
Es gibt Berichte und es gibt Formulare, aber kein Berichtsformular.
ZitatDatensatz länger als 27 Zeichen
Ist hier wirklich der Datensatz gemeint, oder ein Abfrage/Tabellenfeld.
Bitte mal genauer erklären.
Zitat von: Tinu0815 am Juni 11, 2024, 15:17:11Leider passiert jetzt das, wenn der Datensatz länger als 27 Zeichen ist, wird der Rest auf eine neue Zeile geschrieben und dies führt zur Verschiebung der ganzen Seite.
Wenn es nur darum geht, die Verschiebungen zu verhindern, sollte es eigentlich ausreichen die Eigenschaft
CanGrow (Vergrößerbar) des Steuerelements mit den max. 27 Zeichen auf False zu setzen.
Hallo
Sorry für die irreführenden Angaben. Leider ist Access für mich noch ein bisschen Neuland.
Also in einem Bericht, in der Seitenansicht drucke ich die Strips aus als wäre es wie ein Etikettendruck.
Dies funktioniert auch recht gut. Der Etikettendruck besteht aus 3 Linien mit jeweils einer Breite von 27 Zeichen und diese Breite darf nicht überschritten werden. Da manche Datenfelder aus der Tabelle länger als 27 Zeichen sind wird der Rest einfach in eine neue Linie geschrieben. Irgendwie müsste ich im Bericht in der Entwurfsansicht die Textfelder auf 27 Zeichen begrenzen können.
Ich hoffe, ich habe mich einigermassen Verständlich ausgedrückt und würde mich auf einen Tipp freuen.
Martin
Zitat von: Tinu0815 am Juni 12, 2024, 11:01:47Irgendwie müsste ich im Bericht in der Entwurfsansicht die Textfelder auf 27 Zeichen begrenzen können.
Bitte schau dir meinen Hinweis auf die
CanGrow/Vergrößerbar-Eigenschaft nochmal genau an.
Hallo Philip,
ZitatCanGrow/Vergrößerbar-Eigenschaft
Hab's jetzt nicht getestet, aber diese verhindert nicht den automatischen
Zeilenumbruch.
Ich würde die Anzahl der Zeichen gleich in der DS-Herkunft des Berichtes
begrenzen; - Left() wäre mein Freund.
gruss ekkehard
Zitat von: Beaker s.a. am Juni 12, 2024, 11:19:10Hab's jetzt nicht getestet, aber diese verhindert nicht den automatischen
Zeilenumbruch.
Der Zeilenumbruch an sich ist doch nicht das Problem, sondern dass sich dadurch dann die nachfolgenden Steuerelemente entsprechend verschieben. Letzteres lässt sich durchaus durch CanGrow=False verhindern.
Gerne möchte ich beiden Tipps nachgehen. Leider habe ich den Eintrag CanGrow/Vergrößerbar
In der Tabelle möchte ich die Feldlängen nicht verändern, da ich auch eine Liste ausdrucke, wo ich genügend Zeichenbreite habe.
Zitat von: Tinu0815 am Juni 12, 2024, 11:50:27Leider habe ich den Eintrag CanGrow/Vergrößerbar
?
Was meinst du damit? Da fehlt ein elementarer Teil der Aussage.
Hallo,
ZitatLeider habe ich den Eintrag CanGrow/Vergrößerbar
Was soll der Satz heisen?
Die Eigenschaft gehört zu einem Textfeld und ist natürlich auch bei Dir vorhanden.
Unabhängig davon kann man auch den Vorschlag von Eckehard nutzen (mit Left) und die Anzahl der Zeichen in der Abfrage für den Bericht begrenzen.
Hallo Philip,
zu #6
Hast du natürlich recht, sind ja drei Felder.
Ich hatte da anders gedacht, - für Etiketten verwende ich gerne ein
zusammengesetztes Feld in der Abfrage.
gruss ekkehard
Zitat von: MzKlMu am Juni 12, 2024, 11:57:14Unabhängig davon kann man auch den Vorschlag von Eckehard nutzen (mit Left) und die Anzahl der Zeichen in der Abfrage für den Bericht begrenzen.
Wenn in diesem Fall die starre Begrenzung auf 27 Zeichen möglich/sinnvoll ist, geht das natürlich auch.
Generell hat man bei Proportionalschriftarten das Problem, dass "27 Zeichen" keine fest definierte Breite auf dem Bericht ergibt, sondern diese immer von den einzelnen Zeichen abhängt.
Alternativ kann man auch die Länge und Breite des Textfeldes beim Ausdruck festlegen.
In den Ereignis Eigenschaften des Berichtes (beim Öffnen) per VBA die Maße des Textfeldes festlegen.
Die Angabe erfolgt in Twips.
1 cm = 567 Twips
Wenn Du also 6cm Platz auf Deinem Vordruck hast dann: 6*567 = 3401
Füge folgenden Code in die Berichtseigenschaft (beim Öffnen) ein:
Me.deinTextfeld.Width = 3401
Me.deinTextfeld.Height = 400Genauso kannst Du die Höhe des Textfeldes festlegen, abhängig von der Größe Deiner Schriftart.