andreasgrothe
Goto Top

Access - Feldinhalt ab der 18 Stelle ausgeben

Hallo zusammen,

wer kann helfen.

Habe eine Access DB mit einem Feld x.

Der Inhalt sieht wie folgt aus +49 (0) 12345/ 678 -40

Ich möchte nun das mir im Bericht alles ab Stelle 17 ausgegeben wird.
z.B. -40
dann noch eine zweite Frage: Wie kann ich dem Anwender einen Bericht zur Verfügung stellen ohne das er die DB hat. Sprich die DB liegt auf einem Server und alle sollen darauf zugreifen können.

Danke

Content-Key: 89288

Url: https://administrator.de/contentid/89288

Printed on: April 23, 2024 at 14:04 o'clock

Member: Logan000
Logan000 Jun 06, 2008 at 11:24:32 (UTC)
Goto Top
Der Inhalt sieht wie folgt aus +49 (0) 12345/ 678 -40
Ich möchte nun das mir im Bericht alles ab Stelle 17 ausgegeben wird.
z.B. -40
Du kannst im Feld des Reports unter Steuerelementinhalt
=Rechts(Len(Feldname)-17) angeben. Das knallt aber wenn weniger als 17 Zeichen darinstehen.
Oder du passt die dem Bericht zugrundeliegende Abfrage an.
Kleiner Tip: Ich weis zwar nicht welche Access verion Du einsetzt aber bis mind. Access 2002 gab es den "Ausdrucke Editor" der alle eingebauten Funktionen bereitstellte.

Wie kann ich dem Anwender einen Bericht zur Verfügung stellen ohne das er die DB hat
2. DB in die die Tabellen eingebunden werden. Schau mal unter Menü Datei / Externe Daten
Member: Biber
Biber Jun 06, 2008 at 11:26:47 (UTC)
Goto Top
Moin Andreas,

zu Frage 1) dazu nannst du die MID(<text>, startpos [, länge])-funktion nehmen.
Gibt es sowohl in VBA wie auch in dem, was M$ unter SQL verkauft.

Select  mid(telefonnr, 17) from xy as Durchwahl

Frage 2)
Kommt darauf an, ob die AnwenderInnen das real time oder als nicht immer ganz aktuelle Kopie des Berichts brauchen.
Wenn die nur den Bericht brauchen->Bericht als PDF erzeugen und auf einen FileServer stellen.
Wenn die Daten immer die jetztindieserSekundegeradegültigen sein sollen, müssen die schon als berechtigte User die DB öffnen können dürfen.
Oder zumindest eine MDB-Kopie der Tabellen (ohne Appl.).
Grüße
Biber
Mitglied: 27234
27234 Jun 06, 2008 at 11:31:56 (UTC)
Goto Top
Hallo,

in VBA kannst Du die Funktion "Mid$" benutzen
z.B. strTeilText = MID$(strGesamtText,17,9999)
der 2. Parameter (9999) ist optional
in einer Abfrage kannst Du auch "Mid$" schreiben, wird aber in "Teil$" ubgewandelt
z.B. TeilText: Teil$([spaltenname];17;9999)

Die zweite Frage verstehe ich nicht so richtig.
Wenn der Benutzer keine Vollversion von Access hat, muss Du zumindestens das Laufzeitsystem installieren. Dann kann er auf eine DB im Netzwerk zugreifen. Diese muss dann aber über Formulare etc. den Druck des Berichts auslösen.


Gruß - René
Member: Biber
Biber Jun 09, 2008 at 05:46:14 (UTC)
Goto Top
Moin AndreasGrothe,

Nachfrage: Mit welcher der drei damals am Tag Deiner Fragestellung angebotenen Lösungsvorschläge konntest Du am wenigsten anfangen und soll ich den Beitrag noch für weitere Alternativlösungen geoffnet lassen?
Wenn ja - können wir formlos einen Wiedervorlagetermin vereinbaren?

Grüße
Biber
P.S. Falls alles daran gescheitert ist, dass in der Überschrift "...ab 18 Stelle" steht und in der Problembeschreibung " ab Stelle 17"...
Wir könnten unsere Lösungsansätze auch kostenneutral variieren.
Member: AndreasGrothe
AndreasGrothe Jun 09, 2008 at 07:02:22 (UTC)
Goto Top
Hallo,

haben huet emit Lösungsvorschlag 1 die Sache zum laufen gebracht.

Danke
Member: Biber
Biber Jun 09, 2008 at 07:12:41 (UTC)
Goto Top
Danke schön, lieber Andreas...

meine selige Tante Henrietta sagte auch immer früher zu mir:
"Jung, du musst einfach nett fragen...".

Danke auch fürs Häkchen-Setzen
Wünsche Dir auch weiterhin einen stressarmen Wochenbeginn
Biber