Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Eingebettetes Makro
zurück: Update Anweisung weiter: Fehler beim ersten Ausführen eines Formulars Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Feedback Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
Köbi
Angefressener Amateur


Verfasst am:
13. Jan 2012, 17:09
Rufname:
Wohnort: Schweiz

Eingebettetes Makro - Eingebettetes Makro

Nach oben
       Version: Office 2007

Guten Abend

Nachdem ich bisher immer unter Acc2003 und früher programmiert habe, muss ich mich nun doch langsam mit Acc2007 befreunden. Confused

Nun habe ich 2 Fragen:

1. Wenn man eine Schaltfläche mit dem Befehlsschaltflächen-Assistenten erstellt, wird automatisch ein Eingebettetes Makro produziert. Kann man diesen Unsinn abstellen und Acc2007 dazu überreden, dass VBA-Code erstellt wird?

2. Selbst erstellte Makros kann man gemäss Forensuche anscheinend nach VBA konvertieren. (Das brauche ich aber nicht, da ich nicht mit Makros arbeite.)
Kann man auch eingebettete Makros konvertieren? Oder muss man einfach auf den Befehlsschaltflächen-Assistenten verzichten?

_________________
Gruss
Köbi
astern
Datenmodell-Missionar


Verfasst am:
13. Jan 2012, 17:17
Rufname: Andreas
Wohnort: Rastede


AW: Eingebettetes Makro - AW: Eingebettetes Makro

Nach oben
       Version: Office 2007

Hallo!
Darüber habe ich mich auch schon viel geärgert. Meines Wissens kann man dem Assisteten das Erstellen von Makros nicht abgewöhnen (ich würde mich aber sehr freuen, wenn hier jemand eine Lösung präsentieren könnte!).
Ich mache das immer so: Ich speichere eine neue DB zunächst im 2003er-Format ("mdb") ab und erstelle die notwendigsten Sachen mit den Assistenten. Dann speichere ich sie im 2007er-Format ("accdb") ab und mache ohne Assistenten weiter.

MfG
A*

_________________
1. Access-Gebot: Du sollst lange und gründlich über Dein Datenmodell nachdenken!
2. Access-Gebot: Du sollst keine Formulare erstellen ohne gutes Datenmodell!
MissPh!
Office-VBA-Programmiererin


Verfasst am:
13. Jan 2012, 17:19
Rufname:
Wohnort: NRW

AW: Eingebettetes Makro - AW: Eingebettetes Makro

Nach oben
       Version: Office 2007

Hallo Köbi,

das Abschalten dieses "Unsinns" ist leider nicht möglich, danach habe auch ich schon mehrmals gesucht. Das Konvertieren von eingebetteten Makros ist möglich, indem du sie editierst und über "Speichern unter" als Makro speicherst. Aber freu dich nicht zu früh, denn in A2010 hat man diese Möglichkeit auch noch abgeklemmt. Da muss man dann den Makroinhalt manuell kopieren und in ein neues Makro einfügen, um es konvertieren zu können.

Man sollte sich wirklich mal zusammenrotten und dem Verantwortlichen gewaltig auf die Füße treten! Evil or Very Mad

@AStern: Das ist eine gute Idee.
Dass umgekehrt die eingebetteten Makros bei Speicherung im A2003er Format kommentarlos unter den Tisch fallen, ist übrigens auch noch so ein Unding!

_________________
Gruß MissPh!
derArb
getting better


Verfasst am:
13. Jan 2012, 17:23
Rufname: derArb
Wohnort: Berlin

AW: Eingebettetes Makro - AW: Eingebettetes Makro

Nach oben
       Version: Office 2007

Hallo,
Zitat:
....oder muss man einfach auf den Befehlsschaltflächen-Assistenten verzichten?
Eigentlich ein sehr gutes Tool von MS.
Man verärgert den Anwender solange und konsequent mit Makros und deren Unzulänglichkeiten, bis der Anwender den Assistenten einfach ignoriert und ganz schnell auf die VBA-Schiene aufspringt.

_________________
MfG
derArb

Scio me nihil scire...Εν οίδα οτι ουδέν οίδα... Ich weiss, dass ich nichts weiss (Sokrates)
Ich bevorzuge Beiträge mit korrekter deutscher Grammatik.
MissPh!
Office-VBA-Programmiererin


Verfasst am:
13. Jan 2012, 17:36
Rufname:
Wohnort: NRW

AW: Eingebettetes Makro - AW: Eingebettetes Makro

Nach oben
       Version: Office 2007

Früher konnte ich ja Makros wenigstens noch lesen und verstehen, aber mit der "verbesserten" neuen Darstellung komme ich irgendwie nicht klar. Confused
Ebenso geht es mir mit der "Gruppierung und Sortierung" in Berichten, das finde ich absolut inakzeptabel!

_________________
Gruß MissPh!
Köbi
Angefressener Amateur


Verfasst am:
14. Jan 2012, 00:12
Rufname:
Wohnort: Schweiz

AW: Eingebettetes Makro - AW: Eingebettetes Makro

Nach oben
       Version: Office 2007

Vielen Dank euch Allen

Anscheinend bin ich nicht der Einzige, der sich mit diesem "Fortschritt" schwer tut. Danke für das Echo von Euch. Ihr seid ja nicht unbedarfte Anfänger. Und wenn ihr euch auch ärgert über diese Neuerungen, dann bin ich wenigstens nicht allein auf weiter Flur.

Zitat:
Man sollte sich wirklich mal zusammenrotten und dem Verantwortlichen gewaltig auf die Füße treten!
Ja, man sollte.
_________________
Gruss
Köbi
Bitsqueezer
Office-VBA-Programmierer


Verfasst am:
14. Jan 2012, 15:42
Rufname:

AW: Eingebettetes Makro - AW: Eingebettetes Makro

Nach oben
       Version: Office 2007

Hallo,

leider ist der sogenannte "Fortschritt" in Sachen Makros mit A2010 noch schlimmer geworden, der Makro-Editor wurde stark verbessert (wirklich), aber auch der Fokus auf Makros noch verstärkt, da man Neueinsteiger wohl allmählich auf die Makroschiene "einnorden" will und nicht auf VBA, das "lästige" Anhängsel von Access...

Die Funktion läßt sich bei ACCDB zwar nicht abschalten, aber immerhin gibt es einen halbwegs einfachen Weg, die Makros wieder loszuwerden. Hier ist die Anleitung von MS selbst:
Konvertieren von Makros in VBA-Code

Problem dabei ist, daß die Funktion eingebettete Makros offenbar nicht konvertieren kann mit der lapidaren Fehlermeldung "Problem beim Öffnen". Man muß also einmalig für jedes Element mit Makro dieses einmal im Makroeditor aufrufen und dann mit "Speichern unter" als externes Makro speichern (also nicht eingebettet, sondern in der Auflistung "Makros" des Navigationsfensters, am besten auch mit einem Namen, der nicht gleich dem Namen des Formulars ist, was leider der Default ist).
Hat man das (am besten am Ende des Designs des gesamten Formulars) einmal erledigt, kann man mit "Makros konvertieren" alle Makros in einem Rutsch recht zuverlässig in die von früheren Versionen her bekannten VBA-Funktionen umwandeln - genauso "qualitativ hochwertig" natürlich wie früher, also mit lauter überflüssigen Variablendefinitionen usw.

Im Regelfall kann man meistens schneller arbeiten, indem man Tools wie MZ-Tools verwendet, die schnell eine Fehlerbehandlung einfügen oder Codeschnipsel bereithalten, so daß man den Code-Assistenten auch nicht mehr braucht - denn die Arbeit, dessen "Code" in eine vernünftige Prozedur umzuwandeln, ist meist größer, als eben schnell selbst zu schreiben.

Das ist zum Beispiel der konvertierte Code, wenn man den Assistenten für "Datensatz suchen" ein Makro erstellen lassen hat:
Code:
Man erkennt hier, daß wirklich 1:1 ein Makro die Basis war und die Konvertierung einen VBA-Code produziert, der eigentlich nur ein Makro im VBA-Schreibstil ist, aber keine echte VBA-Programmierung. "MacroError" oder haufenweise DoCmd-Befehle sind ein typisches Indiz dafür. Mit Programmierung hat das nicht mehr viel zu tun.
Schön finde ich vor allem dieses Konstrukt:
Code:
On Error GoTo Befehl0_Click_Err
On Error Resume Next
Ah...daher also "mit Fehlerbehandlung konvertieren", damit die Fehlerbehandlung einfach ohne Logik hinzugefügt wird, während das Makro selbst sie gleich am Anfang abgeschaltet hat. Wenn jetzt ein Fehler auftritt, bekommt es wenigstens niemand mit und man bekommt rauchende Köpfe, warum der Code wohl nicht funktioniert - aber der Assistent weiß ja sicher, was er tut...

Genauso entstehen am Ende Datenbanken, die lauter krauses Zeugs machen und am Ende an einen Programmierer übergeben werden, der das ganze Chaos dann wieder langwierig entwirren muß oder gleich alles neu programmiert.

Ich denke, die "Programmierung" des Assistenten sind höchstens ein kleiner Einblick in die Abläufe, die einem hier und da Tips geben können über vorhandene Objekte und Ideen, wie man sie anderweitig sinnvoll einsetzen kann, aber für eine sinnvolle Programmierung hilft nur: Lernen und selbst machen, Tools einsetzen, um Schreibarbeit zu sparen.

"Zusammenrotten" hilft da sicherlich nix, denn Microsoft arbeitet auch nur wie jedes andere Unternehmen: Gewinnorientiert. Es geht nicht darum, die eher kleine Gruppe der echten Programmierer zufriedenzustellen, sondern darum, ein Produkt mit anfängertauglichen Eigenschaften auszustatten, damit der Neueinsteiger schnell (vermeintliche) Erfolge erzielen kann und das Produkt deswegen besser verkauft wird. Da man immer stärker auf Makros setzt, wie A2010 zeigt (A2010-Webdatenbanken lassen sich NUR mit Hilfe von Makros erstellen, kein VBA möglich (!!)), muß es wohl marktforschungstechnisch sinnvoll gewesen sein, sonst hätte man bei MS diese Entscheidung nicht getroffen. Entscheidungen werden nach Umsatz getroffen, nicht nach Sinn. Sinn ist Idealismus, Umsatz ist Unternehmensüberleben. Traurige Wahrheit. Aber diese Wahrheit hält halt auch viele zusätzliche Arbeitsplätze am Leben, zum Beispiel meinen...Wink

Gruß

Christian
Köbi
Angefressener Amateur


Verfasst am:
15. Jan 2012, 19:32
Rufname:
Wohnort: Schweiz


AW: Eingebettetes Makro - AW: Eingebettetes Makro

Nach oben
       Version: Office 2007

Hallo Christian

Ja, die Geschäftspolitik von MS ist halt doch ziemlich "vom hohen Ross".

Und! In der von Dir erwähnten Anleitung schreibt MS:
Zitat:
Sie können Makros konvertieren, die an ein Formular oder einen Bericht angefügt sind, ganz gleich, ob sie als separate Objekte oder als eingebettete Makros vorhanden sind.
Ziemlich ungereimt das Ganze, weil es mit eingebetteten Makros anscheinend nur über Umwege funktioniert.

Nun gut, schliessen wir das Thema ab und legen den Mantel des barmherzigen Erbarmens mit der Unfähigkeit von MS darüber.

_________________
Gruss
Köbi
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Tabellen & Abfragen: Tabelle automatisch öffnen, Makro ... 1 d1989u 101 21. Dez 2012, 15:32
RadiatoR Tabelle automatisch öffnen, Makro ...
Keine neuen Beiträge Access Tabellen & Abfragen: Excel Zellen nach Access mit Makro exportieren 21 Gast 801 21. Dez 2011, 11:13
Gast Excel Zellen nach Access mit Makro exportieren
Keine neuen Beiträge Access Tabellen & Abfragen: Kombinationsfelder per Makro voneinander abhängig machen 12 master_t 1237 19. Nov 2010, 10:12
master_t Kombinationsfelder per Makro voneinander abhängig machen
Keine neuen Beiträge Access Tabellen & Abfragen: Bezug Excel Makro 1 Jan1980 488 05. März 2010, 21:30
MissPh! Bezug Excel Makro
Keine neuen Beiträge Access Tabellen & Abfragen: Tabellen-Felder ändern per Makro? 8 Hajö 3230 26. Feb 2008, 11:38
Hajö Tabellen-Felder ändern per Makro?
Keine neuen Beiträge Access Formulare: Makro:Eintrag neues Datensatzes soll neuen Datensaz in ander 1 ladau66 497 27. Aug 2006, 20:04
jens05 Makro:Eintrag neues Datensatzes soll neuen Datensaz in ander
Keine neuen Beiträge Access Tabellen & Abfragen: Anfügeabfrage über Makro mit Problemen 0 huk 797 02. Aug 2006, 07:36
huk Anfügeabfrage über Makro mit Problemen
Keine neuen Beiträge Access Formulare: aktualisierung per makro 1 paulk 492 27. Mai 2006, 17:30
Gast aktualisierung per makro
Keine neuen Beiträge Access Formulare: Makro fehler...unbeabsichtigt 2 Milan 491 10. Nov 2005, 11:12
Milan Makro fehler...unbeabsichtigt
Keine neuen Beiträge Access Formulare: Makro bleibt stehen - hat jemand eine Lösung 3 Hannes A 607 03. Okt 2005, 15:53
rita2008 Makro bleibt stehen - hat jemand eine Lösung
Keine neuen Beiträge Access Formulare: Programm über Makro aufrufen- Need Help!... 0 Shorex 606 11. Apr 2005, 16:17
Shorex Programm über Makro aufrufen- Need Help!...
Keine neuen Beiträge Access Formulare: Statt Fehlermeldung Makro ausführen 2 floji 607 11. März 2005, 21:26
floji Statt Fehlermeldung Makro ausführen
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Microsoft Excel Tricks