Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Inhalt Textfeld in andres Textfeld übernehmen ohne VBA

Begonnen von Wolf-Tilmann, Oktober 24, 2022, 20:14:27

⏪ vorheriges - nächstes ⏩

Wolf-Tilmann

Einen schönen guten Abend,

bis vor kurzem war ich in einem anderen Forum, welches leider untergegangen ist, gelegentlich aktiv.

Zu Datenbanken bin ich über "PHP und MySQL für Kids" sowie "SQLite 3 - Einstieg in die Datenbankwelt" und fleißigem googlen gekommen.

Womit ich Probleme habe sind Desktopdatenbanken. Das waren auch meine häufigsten Fragen im anderen Forum. Warum geht es mit einer Desktopdatenbank nicht, dafür aber mit einer WebDB?

Nun zu meiner Frage:

Ich habe ein Formular. In diesem Formular werden Mitarbeiter erfasst.
- Nachname
- Vorname
- ...
- E-Mailadresse

Zu 99 % setzt sich die Mailadresse aus [vorname].[nachname]@domain.tld zusammen.

Mit Javascript in Webanwendungen ist oder VBA dürfte es einfach sein, die Felder Vorname und Nachname auszulesen und mit einem Punkt dazwischen sowie dem Rest danach in das Textfeld für die Mailadresse einzutragen.

Leider ist bei uns im Dienst (sic!) VBA unterbunden. Makros gehen auch nicht.

Gibt es eine Möglichkeit die Felder auszulesen?

So etwas wie
[Formulare]![f_sachbearbeiter_neu]![Vorname]
Danke schon einmal für Eure Hilfe
Wolf-Tilmann
Leider kann ich im Dienst kein VBA oder Makros oder ähnliche aktive Bausteine verwenden.
Meine Vorturner sind auf ihre Plätze nicht aufgrund ihrer Befähigung  gekommen. Sie sind nur gewählt.
Ihre Listenplätze haben sie ausschließlich erhalten weil sie für Machtgewinn und Machterhalt der Parteien stehen.
Trotzdem fordern sie das ohne die Mittel dafür bereit zu stellen. Mangels Wissen und aus Angst das  anderen zuzugestehen wird verweigert. So sind wir gezwungen andere Wege zu finden.

ebs17

Du kannst für das Formular als Datenherkunft statt der Tabelle eine Abfrage verwenden. In dieser kann die Zusammensetzung der Mailadresse in einem berechneten Feld vorgenommen und dann über das Formular angezeigt werden.
SELECT
   Vorname & '.' & Nachname & '@domain.tld' AS EMailadresse,
   [Feldliste]
FROM
   TabelleX
Durch die Berechnung kannst Du dann aber nicht das Feld eigenständig verändern.

Eine Access-Anwendung ohne VBA? Große Ansprüche darf man da nicht stellen.
Mit freundlichem Glück Auf!

Eberhard

Wolf-Tilmann

Ich habe mich vielleicht etwas unverständlich ausgedrückt.
Mir geht es um die erstmalige Erfassung

Wie heißt es so schön, ein Bild sagt mehr als tausend Worte.
So sieht der Tabellenentwurf aus.

Sie dürfen in diesem Board keine Dateianhänge sehen.

Das leere Erfassungsformular

Sie dürfen in diesem Board keine Dateianhänge sehen.

So sollte die Mailadresse aus Vorname und Nachname erzeugt sein. Von hier aus wird in die Tabelle geschrieben.

Sie dürfen in diesem Board keine Dateianhänge sehen.


99 % aller Mailadressen funktionieren so. Wir haben aber z.B. zwei Petra Klein.
Deren Mailadressen sind: petra.klein@ und petra.klein2@

Schönen Abend
Wolf-Tilmann
Leider kann ich im Dienst kein VBA oder Makros oder ähnliche aktive Bausteine verwenden.
Meine Vorturner sind auf ihre Plätze nicht aufgrund ihrer Befähigung  gekommen. Sie sind nur gewählt.
Ihre Listenplätze haben sie ausschließlich erhalten weil sie für Machtgewinn und Machterhalt der Parteien stehen.
Trotzdem fordern sie das ohne die Mittel dafür bereit zu stellen. Mangels Wissen und aus Angst das  anderen zuzugestehen wird verweigert. So sind wir gezwungen andere Wege zu finden.

MzKlMu

#3
Hallo,
bei den bestehenden Datensätzen kannst Du mit einer Aktualisierungsabfrage die Mailadresse mit der von Ebs17 gezeigten Formel automatisch in das Feld schreiben. Die 2 bei petra.klein2 musst Du manuell nachbessern. Das gilt für alle doppelten Namen, das kann Access nicht automatisch.
Bei neuen Datensätzen so kannst Du nach Erfassung von Vor und Nachname ebenfalls mit einer Aktualisierungsabfrage die Mailadresse füllen. Du musst aber aufpassen, dass Du mit Hilfe eines Kriteriums (Primärschlüssel) den richtigen Datensatz erwischst. Das alles liese sich mit VBA automatisieren.
Zitat von: undefinedLeider ist bei uns im Dienst (sic!) VBA unterbunden. Makros gehen auch nicht.
Wenn VBA und Makros verboten sind, werdet Ihr mit der Datenbank scheitern, das sehe ich so sicher wie das Amen in der Kirche. Viele Aktionen in einer Datenbank lassen sich einigermaßen sinnvoll nur mit VBA lösen.
Das beginnt schon bei der notwendigen Datenvalidierung bei Eingaben im Formular. Nicht alles lässt sich über Gültigkeitregeln verhindern.
Auch alles was automatisiert ablaufen braucht VBA Access ist vom Konzept her eine ereignisgesteuerte Datenbank und die Ereignisssteuerung erfordert VBA, Punkt.
Gruß Klaus

Wolf-Tilmann

Sorry, wenn ich das nicht verstehe und noch einmal nachhake.

Die Lösung von Ebs17 ist:

Schritt 1: Nachname und Vorname in die Tabelle schreiben
Schritt 2: Nachname und Vorname mit SELECT abfragen und dann in das Mailfeld eintragen lassen

Dass ich die 2 von Hand ergänzen muss ist mir klar.

Wg. VBA und Makros:
wir würden ja gerne, aber leider habe die Gewählten das Sagen. Und die sind von Haus aus für solche Entscheidungen unkompetent und meist zu dämlich. Dafür korrupt und überbezahlt.  ;D
Wie hat einer einmal gesagt: in den Parlamenten sitzen die geldgierigen Idioten.

Einen schönen Abend
Wolf-Tilmann

Leider kann ich im Dienst kein VBA oder Makros oder ähnliche aktive Bausteine verwenden.
Meine Vorturner sind auf ihre Plätze nicht aufgrund ihrer Befähigung  gekommen. Sie sind nur gewählt.
Ihre Listenplätze haben sie ausschließlich erhalten weil sie für Machtgewinn und Machterhalt der Parteien stehen.
Trotzdem fordern sie das ohne die Mittel dafür bereit zu stellen. Mangels Wissen und aus Angst das  anderen zuzugestehen wird verweigert. So sind wir gezwungen andere Wege zu finden.

MzKlMu

Hallo,
den Vorschlag von Ebs hast Du richtig verstanden, wo hängt es jetzt noch?

Noch mal ganz eindringlich der Hinweis: Du kannst ohne VBA keine sicher funktionierende Datenbank erstellen.
Das ist vom Konzept von Access schon so, denn Access ist kein fertiges Programm (wie Word oder Excel), sondern eine Entwicklungsumgebung zur Erstellung relationaler Datenbanken. Wenn das den Entscheidungträgern nicht gefällt, muss das eine externe Firma machen und ggf. ein anderes Programm als Access verwenden. Z.B. SAP.
Gruß Klaus

Wolf-Tilmann

Entscheidungsträger, welche nur aufgrund einer Wahl zu Entscheidungsträgern werden sind der letzte Schrott. Die kommen nicht wegen ihrer Befähigung auf die ersten Listenplätze sondern weil sie für Machtgewinn und Machterhalt der Partei stehen.
Leider kann ich im Dienst kein VBA oder Makros oder ähnliche aktive Bausteine verwenden.
Meine Vorturner sind auf ihre Plätze nicht aufgrund ihrer Befähigung  gekommen. Sie sind nur gewählt.
Ihre Listenplätze haben sie ausschließlich erhalten weil sie für Machtgewinn und Machterhalt der Parteien stehen.
Trotzdem fordern sie das ohne die Mittel dafür bereit zu stellen. Mangels Wissen und aus Angst das  anderen zuzugestehen wird verweigert. So sind wir gezwungen andere Wege zu finden.