Neuigkeiten:

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

Mobiles Hauptmenü

Kopiermakro

Begonnen von smily68, Februar 11, 2012, 07:40:32

⏪ vorheriges - nächstes ⏩

smily68

Hallo

Ich möchte die Makrofunktion kopieren von Access einsetzten. Das Makro wurde erstellt als ich eine neue Schaltfläche eingefügt habe. In einem Formular funktioniert dieses Makro einwandfrei. Es kopiert mir den aktuellen Datensatz und erstellt mir einen neuen. Bei einem anderen Formular funktioniert dieses Makro nicht. Es kommt folgende Fehlermeldung: Update oder CancelUpdate ohne AddNew oder Edit.

Kann mir jemand helfen.

Gruss Daniel

Jonny

Hallo Daniel,
ohne das Marko zu sehen können wir hier nicht helfen sondern nur vermuten.
Wahrscheinlich ist im Makro ein Bezug auf das Formular und deshalb geht es im anderen Forular nicht.
Ist aber nur eine Vermutung.

Gruß

Johann

smily68

Hallo

Das Makro wird erstellt, wenn ich mit dem Befehlsschaltassistent eine neue Befehlsschaltfläche mache, ich wähle dabei folgende Aktion aus.
Datensatzoperationen und danach Datensatz duplizieren.

Gruss Daniel

DF6GL

Hallo,

vermutlich sind beide Formulare gleichzeitig geöffnet und die Kopiererei wird auf dieselbe Tabelle angewendet...


Sind die beiden Makros jeweils für sich und unabhängig voneinander erstellt worden?

"Bei einem anderen Formular funktioniert dieses Makro nicht."


erweckt den Anschein, als dass im "anderen" Formular lediglich das vorhandene Makro des "ersten" Formulares aufgerufen wird.
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

smily68

Hallo

Die Formulare und Tabelle sind unterschiedlich. Kundenstamm und Artikestamm. Die Makro's wurden unabhängig von einander erstellt. Die Makros hat mir der Schaltflächen Assisten von Access erstellt. Ich habe das Markro mehrmals neu erstellt. Meine Frage ist nun, könnte es daran liegen, dass ich 45 Felder kopiere. Im anderen Formular kopiere ich nur 11 Felder.

Gruss Daniel

DF6GL

Hallo,




"Meine Frage ist nun, könnte es daran liegen, dass ich 45 Felder kopiere"

Ja, es könnte....  :(


Sorry, mit solchen vagen Angaben und ohne das Makro gesehen zu haben, kann man keinen konkreten Ratschlag geben.


Es bewahrheitet sich auch hier:

-- Auf Makros verzichten.
-- Auf irgendwelche Assistenten verzichten, wenn man nicht weiß was die tun, bzw. deren Ergebnisse nicht korrigieren kann.
-- Warum wird überhaupt kopiert?


Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

smily68

Hallo

Die Kopierfunktion soll dazu dienen, dass ich änliche Artikel kopiern kann und nicht 45 Felder erfassen muss, wenn ich einen neuen Artikel erfasse.

Kannst du mir einen Typ geben, wie ich 45 Felder kopieren soll.

Meine Idee ist es die Daten in einen Array zu schreiben, einen neuen Datensatz zu eröffnen und die Daten aus dem Array in Felde zu schreiben.
Für diesen Ansatz muss ich jedoch für jedes der 45 Felder eine Zeile schreiben, die mir den Wert in den Array schreibt für jedes 45 Felder eine Zeile schreiben, die mir den Wert in den neuen Datensatz schreibt. Ich kann mir vorstellen, dass es eine einfacher Variante gibt.

Gruss Daniel

MzKlMu

Hallo,
ein Array ist hier völlig fehl am Platz. Eine einfache Anfügeabfrage sollte das ratz fatz erledigen.
Die Abfrage wird mit CurrentDb.Execute per VBA gestartet.

PS:
Eine Artikeltabelle die 45 Felder hat scheint mir auch etwas suspekt. Brauchst Du 45 Felder zur Beschreibung eines Artikels?
Und musst Du dann nach dem Kopieren alle 45 Felder ändern, oder bleiben einige gleich.
Gruß Klaus

DF6GL

Hallo,

kann da Klaus nur zustimmen, und wenn wirklich "kopiert" werden muss, dann würde ich dieses Prinzip vorschlagen:

http://www.donkarl.com/?FAQ4.22
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access