Access- VBA Formularfelder auslesen und kopieren
Problem mit dem Auslesen von Formularfeldern und dem Schreiben dieser in ein neue Formularfelder
Hallo !!
Könnt Ihr mir vielleicht helfen?? I
ch habe ein Problem mit der VBA-Programmierung in MS Access.
Ich muss eine Prozedur erstellen,mit der ich -viielleicht mit Hilfe eines Arrays- aus Formuarfeldern die Inhalte kopieren / auslesen kann und diese dann in Formularfeldereines ANDEREN Formulars kopieren//einfügen kann.
Leider bin ich noch nicht fündig geworden und würde mich freuen, wenn Ihr mir helfen könntet.
Danke im Vorraus.
Ich wünsche allen ein friedliches und besinnliches Weihnachtsfest und ein guten Rutsch ins Neue Jahr.
Grüße -Der Saphir-
Hallo !!
Könnt Ihr mir vielleicht helfen?? I
ch habe ein Problem mit der VBA-Programmierung in MS Access.
Ich muss eine Prozedur erstellen,mit der ich -viielleicht mit Hilfe eines Arrays- aus Formuarfeldern die Inhalte kopieren / auslesen kann und diese dann in Formularfeldereines ANDEREN Formulars kopieren//einfügen kann.
Leider bin ich noch nicht fündig geworden und würde mich freuen, wenn Ihr mir helfen könntet.
Danke im Vorraus.
Ich wünsche allen ein friedliches und besinnliches Weihnachtsfest und ein guten Rutsch ins Neue Jahr.
Grüße -Der Saphir-
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 178054
Url: https://administrator.de/forum/access-vba-formularfelder-auslesen-und-kopieren-178054.html
Ausgedruckt am: 18.05.2025 um 00:05 Uhr
11 Kommentare
Neuester Kommentar
Moin.
Du kannst mit
die Werte übertragen. Es müssen nur beide Formular geleichzeitig geöffenet sein.
Aber warum willst Du das überhaupt?
Vielen Dank. Wünsche ich Dir auch.
HTH
MK
Du kannst mit
Forms("Formular").Feld = Forms("Formular2").Feld
bzw. für Unterformulare
Forms("Formular")("Unterformular").Form..Feld = Forms("Formular2")("Unterformular2").Form.Feld
die Werte übertragen. Es müssen nur beide Formular geleichzeitig geöffenet sein.
Aber warum willst Du das überhaupt?
Ich wünsche allen ein friedliches und besinnliches Weihnachtsfest und ein guten Rutsch ins Neue Jahr.
Vielen Dank. Wünsche ich Dir auch.
HTH
MK
Moin Moin,
Welche Felder sollen übertragen werden? alle oder nur einige?
Wie sehen die Tabellen der Formulare aus?
Wie schon thaenhusen fragt: warum so umständlich?
Beschreibe doch bitte mal genau, was du machen willst. So wie es aussieht, bist du auf einem Holzweg. Da gibt es bestimmt eine andere Lösung.
Grüße aus Rostock
Wolfgang
(Netwolf)
Ich muss eine Prozedur erstellen,mit der ich -viielleicht mit Hilfe eines Arrays- aus Formuarfeldern die Inhalte kopieren /
auslesen kann und diese dann in Formularfeldereines ANDEREN Formulars kopieren//einfügen kann.
ok, du hast ein Hauptformular, und dann sollen die Daten wohin gehen? in ein UFO oder ein anderes Hauptformular?auslesen kann und diese dann in Formularfeldereines ANDEREN Formulars kopieren//einfügen kann.
Welche Felder sollen übertragen werden? alle oder nur einige?
Wie sehen die Tabellen der Formulare aus?
Wie schon thaenhusen fragt: warum so umständlich?
Beschreibe doch bitte mal genau, was du machen willst. So wie es aussieht, bist du auf einem Holzweg. Da gibt es bestimmt eine andere Lösung.
Ich wünsche allen ein friedliches und besinnliches Weihnachtsfest und ein guten Rutsch ins Neue Jahr.
ditoGrüße aus Rostock
Wolfgang
(Netwolf)
Moin Moin,
ich gehe jetzt mal davon aus, dass du die Aktualisierungsabfrage meinst!
- öffne eine leere Abfrage (leider schreibst du nicht, mit welcher Version du arbeitest, so könnten man dir genauere Hilfe geben)
- je nach Access Version achte darauf, dass du eine Aktualisierungsabfrage wählst
- füge die drei Tabellen hinzu
- erzeuge die Verknüpfung zwischen den Tabellen
- unten trage die Felder ein, die aktualisiert werden sollen [Feld]
- in der Zeile [Aktualisieren] trägst du die Felder ein, aus denen aktualisiert werden soll
- speichern
- doppelklick auf die Abfrage und diese wird ausgeführt
Es ist selbstverständlich, dass man solche Experimente nicht mit den originalen Datenbanken macht, sondern mit einer Kopie!!!
Grüße aus Rostock
Wolfgang
(Netwolf)
ich gehe jetzt mal davon aus, dass du die Aktualisierungsabfrage meinst!
- öffne eine leere Abfrage (leider schreibst du nicht, mit welcher Version du arbeitest, so könnten man dir genauere Hilfe geben)
- je nach Access Version achte darauf, dass du eine Aktualisierungsabfrage wählst
- füge die drei Tabellen hinzu
- erzeuge die Verknüpfung zwischen den Tabellen
- unten trage die Felder ein, die aktualisiert werden sollen [Feld]
- in der Zeile [Aktualisieren] trägst du die Felder ein, aus denen aktualisiert werden soll
- speichern
- doppelklick auf die Abfrage und diese wird ausgeführt
Es ist selbstverständlich, dass man solche Experimente nicht mit den originalen Datenbanken macht, sondern mit einer Kopie!!!
Grüße aus Rostock
Wolfgang
(Netwolf)
Hallo Sascha,
Grüße aus Rostock
Wolfgang
(Netwolf)
Ich benutze Ms Access 2003 bzw. dann in der Firma Access 2007
dir ist klar, dass gerade zwischen diesen Versionen die größten Änderungen gab.Danke für den Tip mit der Aktualisierungsabfrage. Aber in der Zeile aktualisieren kann ich doch nur Felder eingeben, nicht
die dazugehörigen Tabellen auswählen oder muss ich das in der Form <Ttabellenname.Feldname> eingeben?
es kommt drauf an. Wenn die Felder die gleiche Bezeichnung haben, dann: jadie dazugehörigen Tabellen auswählen oder muss ich das in der Form <Ttabellenname.Feldname> eingeben?
Wenn ich in einer Prozedur eingebe, dass ich ein Formular (beispielsweise NurLesen öffnen will
gebe ich doch ein "doCmd.openForm "<Formularname"> und dann irgendwann mit Komma getrennt
"vbFormReadOnly".....
jagebe ich doch ein "doCmd.openForm "<Formularname"> und dann irgendwann mit Komma getrennt
"vbFormReadOnly".....
Jetzt möchte ich, dass mir das Formular angezeigt wird, aber OHNE die Statuszeile am unteren Rand des Formulars, wo steht
Datensätze und die Symbole für Vor und Zurück bzw. Neuer Datensatz angezeigt werden
Geht das überhaupt??
ja es geht. Dafür musst du die Eigenschaften des Formulars entsprechend ändern. Navigationsschaltflächen = neinDatensätze und die Symbole für Vor und Zurück bzw. Neuer Datensatz angezeigt werden
Geht das überhaupt??
Grüße aus Rostock
Wolfgang
(Netwolf)
Moin Moin,
wichtig ist erst mal, dass du ALLE Prozeduren aus dem Buch in deinen Code übernimmst. Das Ausführen einzelner Prozeduren/Funktionen führt vermutlich dazu, dass weitere Prozeduren und/oder Funktionen aus dem Buch aufgerufen werden.
Wichtig ist auch der Unterschied zwischen Makro und VBA-Code. Das ist nicht das gleiche! Du kannst zwar Makros zu VBA-Code konvertieren, aber umgekehrt geht es nicht. Mein Tipp: du benötigst keine Makros! Wenn du VBA programmieren kannst, sind Makros überflüssig und viel zu umständlich.
Ausführen im Editor macht keinen Sinn. Einzelne Prozeduren/Funktionen sind nicht einfach durch draufklicken ausführbar. Ausgeführt werden Makros und VBA-Code ist eben kein Makro. Das Direktfenster ist zur Fehlersuche und nicht als "normales" Fenster zu nutzen.
Du benötigst erst mal eine Testumgebung. Dafür reicht i.d.R. eine Tabelle und ein Formular.
Aus dem Formular heraus kannst du dann Prozeduren und Funktionen in VBA aufrufen. Du kannst dafür Tasten definieren, oder die Ereignisse des Formulars nutzen.
Grüße aus Rostock
Wolfgang
(Netwolf)
wichtig ist erst mal, dass du ALLE Prozeduren aus dem Buch in deinen Code übernimmst. Das Ausführen einzelner Prozeduren/Funktionen führt vermutlich dazu, dass weitere Prozeduren und/oder Funktionen aus dem Buch aufgerufen werden.
Wichtig ist auch der Unterschied zwischen Makro und VBA-Code. Das ist nicht das gleiche! Du kannst zwar Makros zu VBA-Code konvertieren, aber umgekehrt geht es nicht. Mein Tipp: du benötigst keine Makros! Wenn du VBA programmieren kannst, sind Makros überflüssig und viel zu umständlich.
Ausführen im Editor macht keinen Sinn. Einzelne Prozeduren/Funktionen sind nicht einfach durch draufklicken ausführbar. Ausgeführt werden Makros und VBA-Code ist eben kein Makro. Das Direktfenster ist zur Fehlersuche und nicht als "normales" Fenster zu nutzen.
Du benötigst erst mal eine Testumgebung. Dafür reicht i.d.R. eine Tabelle und ein Formular.
Aus dem Formular heraus kannst du dann Prozeduren und Funktionen in VBA aufrufen. Du kannst dafür Tasten definieren, oder die Ereignisse des Formulars nutzen.
Grüße aus Rostock
Wolfgang
(Netwolf)