Neuigkeiten:

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

Mobiles Hauptmenü

Makro Konvertierung "Neuer Mitarbeiter"

Begonnen von Hpseel, Februar 02, 2026, 15:13:14

⏪ vorheriges - nächstes ⏩

Hpseel

Hallo,
drei Fragen:

1. Könnte mir jemand das Makro "Neuer Mitarbeiter" aus der Nordwind-DB nach VBA konvertieren?
   (die Konvertierfunktion ist bei mir ausgegraut)
   (ich brauche es als VBA, um bestimmte Datenfelder im neuen Record vorzubesetzen)

2. Wofür sind im Makro die "Refresh" Aktionen?

3. Bekommt man mit DomMax die letzte gültige ID, oder die nächste freie?
   Wie kommt dann ggf. "+1" zustande für die nächste freie ID?

Schon mal vielen Dank !!!
Hps
   

Bitsqueezer

Hallo,

normalerweise gibt es für alle Makro-Befehle ein Pendant in VBA per "DoCmd".
Du mußt also nur die einzelnen Befehle mit DoCmd und dem passenden (natürlich englischen) Namen aufrufen und kannst dort die gleichen Parameter verwenden. Mehr macht der VBA-Konvertierer auch nicht.

Ob das gerade "gutes" VBA ist, bezweifle ich zwar stark, aber so kannst Du jedes Makro konvertieren.

Der Code wird nicht gerade sehr lang sein, Du könntest dann auch gleich darüber nachdenken, das in "richtiges" VBA umzuwandeln. Es gibt natürlich Ausnahmen wie "DoCmd.OpenForm", was man i.d.R. so beläßt.

Gruß

Christian

werner budde

Zitat von: Hpseel am Februar 02, 2026, 15:13:14Bekommt man mit DomMax die letzte gültige ID, oder die nächste freie?
   Wie kommt dann ggf. "+1" zustande für die nächste freie ID?

Dommax liefert den aktuell höchsten Wert.
Vorsicht: (Dieser + 1) ist ggf. nicht mehr frei!
Wenn das ID-Feld ein Autowert-Feld ist, kann es folgende Konstellation geben:
es wurden bereits allerneueste Datensätze wieder gelöscht, welche eine höhere ID hatten als der jetzt höchste. Die Autowert-ID's  gelöschter Datensätze werden nie wieder neu vergeben.
Gruß Werner

PhilS

Zitat von: Hpseel am Februar 02, 2026, 15:13:141. Könnte mir jemand das Makro "Neuer Mitarbeiter" aus der Nordwind-DB nach VBA konvertieren?
  (die Konvertierfunktion ist bei mir ausgegraut)
Es gibt über die Jahre einige verschiedene Versionen der Nordwind-DB. In meiner sind keine Refresh-Aktionen im Makro, daher vermute ich, dass wir nicht von derselben Version reden.
Du kannst das Makro konvertieren, indem du ein neues Makro erstellst, dir den Katalog der Makro-Aktionen einblendest, darin das bestehende "Neuer Mitarbeiter"-Makros auswählst und dann "Kopie von Makro hinzufügen" aus dem Kontextmenü ausführtst.
Damit hast du die Aktionen des "Neuer Mitarbeiter"-Makros in deinem neuen Makro und kannst es nach VBA konvertieren. - Aber Vorsicht: Das ursprüngliche Makro lief im Kontext eines Formulars und der neue, konvertierte VBA-Code ist unabhängig in einem Modul. D.h. der erzeugte VBA-Code funktioniert u.U. nicht mehr so wie das ursprüngliche Makro. Das ist vermutlich auch der Grund, warum man diese Embedded Macros nicht konvertieren kann.

Zitat von: Hpseel am Februar 02, 2026, 15:13:142. Wofür sind im Makro die "Refresh" Aktionen?
Die gibt es bei mir nicht.

Zitat von: Hpseel am Februar 02, 2026, 15:13:143. Bekommt man mit DomMax die letzte gültige ID, oder die nächste freie?
  Wie kommt dann ggf. "+1" zustande für die nächste freie ID?
Alle Domänen-Aggregatfunktionen beziehen sich immer auf bestehende Daten.
Deine Frage zu +1 verstehe ich nicht.
Neue Videoserie: Windows API in VBA

Klassische CommandBars visuell bearbeiten: Access DevTools CommandBar Editor

Hpseel

Vielen Dank für eure Hinweise!
Ich komme erst in den nächsten Tagen dazu, sie auszuprobieren.
Ich werde dann Bescheid geben.

VG Hps