Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge

Access VBA-Code läuft nicht auf anderem PCs

Neo3000 / 7 Antworten / Baumansicht Nickles

Hi Access-Cracks & Co.,

Ich werd noch wahnsinnig mit dieser VBA-Makrokacke :-(.
Habe mir eine Anwedung in Access geschrieben und die läuft bei MIR (PC auf dem es geschrieben wurde) auch soweit sehr gut und macht was sie soll, auch auf meinem 2. PC, kein problem...ABER: kopier ich das Ding auf einen dritten PC dreht die Anwendung hohl.
Info:
1. Es ist KEINE Netzwerkanwendung oder Multiuserzugriff, also auf jedem PC läuft das Ding einfach lokal bzw. soll laufen.
2. VBA-Verweise sind auf allen die selben.
3. Ein PC Windows XP Pro (Ersteller-PC, läuft), ein PC Windows 7 ultimate (läuft), ein PC Vista Home (hier läufts NICHT)
4. gleiche Office-Version (2007)

Fehler die passieren z.B.:
1. Beim starten von Formularen werden Codeteile nicht ausgeführt sodass Schaltflächen deaktiviert bleiben
2. Beim zweiten Mal Auführen eines Formulares kommt die Sanduhr und dreht und dreht und dreht, bis ich den Access-Task abschießen muss.
3. Manche Codeteile laufen im EINZELSCHRITTMODUS durch, nur nicht im normalen zustand (z.B. Klick auf Button auf Formular), obwohl genau der gleiche Code ausgeführt wird

Was kann für solche Unterschiedliche Verhalten sorgen unter den oben genannten Umständen? ist da was bekannt bezügich Access und Vista Home? evtl. Office oder Windows-Updates?

Wär riesig wenn jemand mir da helfen könnte.

Greetz
Kai

bei Antwort benachrichtigen
neanderix Neo3000 „Access VBA-Code läuft nicht auf anderem PCs“
Optionen
Ich werd noch wahnsinnig mit dieser VBA-Makrokacke :-(.

VBA hat NICHTS mit Makro zu tun!

Habe mir eine Anwedung in Access geschrieben und die läuft bei MIR (PC auf dem es geschrieben wurde) auch soweit sehr gut und macht was sie soll, auch auf meinem 2. PC, kein problem...ABER: kopier ich das Ding auf einen dritten PC dreht die Anwendung hohl.
Info:
1. Es ist KEINE Netzwerkanwendung oder Multiuserzugriff, also auf jedem PC läuft das Ding einfach lokal bzw. soll laufen.


Da stellt sich mir gleich die Frage nach dem sinn. wenn die Installationen autark laufen hast du auf allen PCs unterschiedlich aktuelle datenbestände.

2. VBA-Verweise sind auf allen die selben.
3. Ein PC Windows XP Pro (Ersteller-PC, läuft), ein PC Windows 7 ultimate (läuft), ein PC Vista Home (hier läufts NICHT)
4. gleiche Office-Version (2007)

Fehler die passieren z.B.:
1. Beim starten von Formularen werden Codeteile nicht ausgeführt sodass Schaltflächen deaktiviert bleiben
2. Beim zweiten Mal Auführen eines Formulares kommt die Sanduhr und dreht und dreht und dreht, bis ich den Access-Task abschießen muss.
3. Manche Codeteile laufen im EINZELSCHRITTMODUS durch, nur nicht im normalen zustand (z.B. Klick auf Button auf Formular), obwohl genau der gleiche Code ausgeführt wird


Auf welchem System hast du entwickelt? Auf Access 2003 oder auf Access 2007?

Was kann für solche Unterschiedliche Verhalten sorgen unter den oben genannten Umständen? ist da was bekannt bezügich Access und Vista Home? evtl. Office oder Windows-Updates?

Wichtig ist, dass auf den PCs allle Windows ServicePacks und alle Office Servicepacks eingespielt sind/werden.

Volker
Computers are like airconditioners - they stop working properly when you open Windows Ich bin unschuldig, ich habe sie nicht gewählt!
bei Antwort benachrichtigen
PaoloP Neo3000 „Access VBA-Code läuft nicht auf anderem PCs“
Optionen
VBA hat NICHTS mit Makro zu tun!

Makros unterliegen der VBA Syntax. Da sollte man nicht so pedantisch sein hinsichtlich der Formulierungen denk ich ich. Ansonsten helfen nur nähre Infos. Klingt nach einem Problem bzgl, konkurrierender Ausführung aber vielleicht auch nicht. Bei so einem Problem hilfts nur wenn du die Mdb veröffentlichst denk ich.
Jedes mal wenn jemand "Cloud" sagt, verliert ein Engel seine Flügel.
bei Antwort benachrichtigen
neanderix PaoloP „ Makros unterliegen der VBA Syntax. Da sollte man nicht so pedantisch sein...“
Optionen
Makros unterliegen der VBA Syntax.

Nein. Bei Excel mögen VBA Routinen und Makros - seit dem verschwinden der alten makrosprache - dasselbe sein (zumindest halten es die meinsten Excelianer dafür - VBA ist aber deutlich zu mächtig um eine VBA Routine "Makro" zu nennen), bei Access ist dem definitiv nicht so, auch wenn es einen Konverter von Makro nach VBA gibt.

Volker
Computers are like airconditioners - they stop working properly when you open Windows Ich bin unschuldig, ich habe sie nicht gewählt!
bei Antwort benachrichtigen
Neo3000 Nachtrag zu: „Access VBA-Code läuft nicht auf anderem PCs“
Optionen

@neanderix:
Sorry, bin wieder recht spät am Antworten.
Ok, Makro ist hier wohl etwas unpassend, allein schon wegen der Größe. Makro klingt so winzig :-))
Ich hab allerdings auch nie wirklich einen Unterschied bisher feststellen können zwischen VBA Code und Makro Code was den Syntax angeht, wenn man mal den den Unterschied des Funktionsumfangs der jeweiligen Officeanwendung aussenvor lässt.

Ich hab schon vor aus der DB nachher ein Front und Backend zu machen mit zentralem Datenbestand aber zum Testen der Funktionen würd ich den Schritt erst lieber als zweites machen wenn alle Funktionen laufen (ist für tests einfach leicher handzuhaben find ich).

Auf 2007 entwickelt

Updates, Servicepacks usw. war auch mein Gedanke, kam bisher aber zeitlich nicht zum nachgucken. Soweit ich weiß hab ch aber keine besonderen Funktionen im Code oder so wo man sagen könnte "ah, da könnte/müsste upgedatet werden", werd ich aber noch gucken. Obwohl bei ServicePacks immer etwas sensibel reagiere. Man denke an damaliges ServicePack 3 von XP :-(.

@PaoloP
welche Infos bräuchtest du denn? Codeabschnitte? bin mir nicht so sicher ob die das so gutheißen wenn ich die GANZE DB veröffentlich*g*. Das Paradoxe ist das es ja schon "funktioniert" aber meist nur im Einzelschrittmodus, also ob er bei normaler Auführung absaufen würde. Und ohne Fehlermeldung geht nun die Sucherei los. Ich versuch das mal noch nit der Update Sache von neandrix.

Merci euch beiden

Greetz
Kai

bei Antwort benachrichtigen
neanderix Neo3000 „@neanderix: Sorry, bin wieder recht spät am Antworten. Ok, Makro ist hier wohl...“
Optionen
oweit ich weiß hab ch aber keine besonderen Funktionen im Code oder so wo man sagen könnte "ah, da könnte/müsste upgedatet werden", werd ich aber noch gucken.

Gerade wenn du innerhalb MSO entwickelst ist es wichtig, dass immer alle Office-Servicepacks eingespielt werden!

@PaoloP
welche Infos bräuchtest du denn? Codeabschnitte? bin mir nicht so sicher ob die das so gutheißen wenn ich die GANZE DB veröffentlich*g*.


Die Tabellenstruktur, formulare, Abfragen CodeModule und ein paar anonymisierte Daten würden tun.

Eine Frage hätt ich allerdings noch:
sind das grundsätzlich nur vista-Rechner auf denen es nicht geht oder nur XP-Rechner oder gemischt?

Volker
Computers are like airconditioners - they stop working properly when you open Windows Ich bin unschuldig, ich habe sie nicht gewählt!
bei Antwort benachrichtigen
Neo3000 Nachtrag zu: „Access VBA-Code läuft nicht auf anderem PCs“
Optionen

@neanderix
Makro wahr hier wohl auch der falsche Ausdruck...Makro klingt so winzig*g*, und das ist hier schon lang nimmer der Fall.
Hm..soweit ich weiß werden die "Makros" in Office als VBA Code erzeugt und wenn man, vorangestellt, den unterschiedlichen VBA-Funktionsumfang der Office Anwendungen mal außenvor läßt sind hier Markos doch eigentlich VBA(Code), oder?;-)...Es ist wohl eine Bezeichnungssache wann ein (VBA)Code als Makro bezeichnet werden kann oder nicht mehr (Stichwort "Komplexität")....Aber ok, HIER handelt es nicht nicht um Makros :-).

@PaoloP
Na ob die das so gut heißen wenn ich die GANZE DB veröffenltliche wage ich zu bezweifeln...aber wenn Codeabschnitte oder andere bestimmte Sachen helfen könnten?
Was meinst du mit "konkurrierender Ausführung?"
Das Paradoxe ist ja das die die ich bisher geprüft habe im Einzelschrittmode laufen aber nicht im normalen.
Als ob er bei normaler "Ausführgeschwindigkeit" auf die Schnauze fliegt.
Ich versuch solang mal noch die Sache mit den Updates von neanderix, obwohl ich bei Updates recht sensibel geworden bin im Bezug auf das Gesamtsystem. Man erinnere sich an 1. ServicePack 3 für XP*g*

Greetz
Kai

bei Antwort benachrichtigen
neanderix Neo3000 „@neanderix Makro wahr hier wohl auch der falsche Ausdruck...Makro klingt so...“
Optionen
Makro wahr hier wohl auch der falsche Ausdruck...Makro klingt so winzig*g*, und das ist hier schon lang nimmer der Fall.
Hm..soweit ich weiß werden die "Makros" in Office als VBA Code erzeugt


Das ist bislang nur in Excel und Word der Fall, trotzdem käme ich nie auf die Idee, dort erstellte VBA-Routinen als "Makro" zu bezeichnen - dafür ist VBA einfach zu mächtig.

Unter Access wird noch zwischen Makrosprache und VBA unterschieden, zumindest bis einschliesslich Access 2003 (Das war bis vor ein paar Jahren auch in Excel und Word so!)
Makros werden in Access allerdings auch nicht mit einem Makro-Recorder erzeugt, sondern müssen von Hand getippt werden - genau wie VBA-Code.

Computers are like airconditioners - they stop working properly when you open Windows Ich bin unschuldig, ich habe sie nicht gewählt!
bei Antwort benachrichtigen