Discussion:
Problem mit Me. nach Konvertierung
(zu alt für eine Antwort)
merome
2022-01-24 18:13:39 UTC
Permalink
Hallo,

ich konvertiere gerade eine uralt Access 2003 DB auf die aktuelle Version.

Ich habe Forms mit verschiedenem Code beim Öffnen Private Sub Form_Open(Cancel As Integer). Und da greife ich per Me. auf verschiedene Felder zu. Manche dieser Felder machen Probleme, manche nicht.

zB

Me.FIangelegt_user = gintBenutzerAktuellID
Me.angelegt_timestamp

Der erste Befehl klappt, der zweite bringt einen Fehler: access 2019 fehler beim kompilieren unzulässige Verwendung einer Eigenschaft.

Das Feld FIangelegt_user ist vom Datentyp Zahl (Long Integer),
das Feld angelegt_timestamp vom Datentyp Datum/Zeit (Standarddatum)

wo liegt das Problem?

Danke für zweckdienliche Hinweise.
Rob
Karl Donaubauer
2022-01-24 21:07:15 UTC
Permalink
Hallo!
Post by merome
ich konvertiere gerade eine uralt Access 2003 DB auf die aktuelle Version.
Ich habe Forms mit verschiedenem Code beim Öffnen Private Sub Form_Open(Cancel As Integer). Und da greife ich per Me. auf verschiedene Felder zu. Manche dieser Felder machen Probleme, manche nicht.
zB
Me.FIangelegt_user = gintBenutzerAktuellID
Me.angelegt_timestamp
Der erste Befehl klappt, der zweite bringt einen Fehler: access 2019 fehler beim kompilieren unzulässige Verwendung einer Eigenschaft.
Das Feld FIangelegt_user ist vom Datentyp Zahl (Long Integer),
das Feld angelegt_timestamp vom Datentyp Datum/Zeit (Standarddatum)
wo liegt das Problem?
Joo, solche Erfahrungen haben mich seinerzeit dazu gebracht, für
Steuerelemente immer ! statt . zu verwenden, auch wenn es wegen
Intellisense mühsam ist. s. den letzten Absatz in
https://www.donkarl.com?FAQ6.3

Eine Lösung könnte also das Ersetzen von allen Me.Steuerelement durch
Me!Steuerelement sein. Mühsam dabei ist natürlich, dass du aufpassen
musst, keine Eigenschaften zu erwischen.

Du kannst voher ja versuchen, ob Importieren, Decompile & Co das Problem
lösen, s.a. https://www.donkarl.com?FAQ1.27.
--
Servus
Karl
*********
Access News:

https://www.donkarl.com/?AEK, http://AccessDevCon.com
Access FAQ: https://www.donkarl.com
merome
2022-01-25 17:23:32 UTC
Permalink
Post by Karl Donaubauer
Hallo!
Post by merome
ich konvertiere gerade eine uralt Access 2003 DB auf die aktuelle Version.
Ich habe Forms mit verschiedenem Code beim Öffnen Private Sub Form_Open(Cancel As Integer). Und da greife ich per Me. auf verschiedene Felder zu. Manche dieser Felder machen Probleme, manche nicht.
zB
Me.FIangelegt_user = gintBenutzerAktuellID
Me.angelegt_timestamp
Der erste Befehl klappt, der zweite bringt einen Fehler: access 2019 fehler beim kompilieren unzulässige Verwendung einer Eigenschaft.
Das Feld FIangelegt_user ist vom Datentyp Zahl (Long Integer),
das Feld angelegt_timestamp vom Datentyp Datum/Zeit (Standarddatum)
wo liegt das Problem?
Joo, solche Erfahrungen haben mich seinerzeit dazu gebracht, für
Steuerelemente immer ! statt . zu verwenden, auch wenn es wegen
Intellisense mühsam ist. s. den letzten Absatz in
https://www.donkarl.com?FAQ6.3
Eine Lösung könnte also das Ersetzen von allen Me.Steuerelement durch
Me!Steuerelement sein. Mühsam dabei ist natürlich, dass du aufpassen
musst, keine Eigenschaften zu erwischen.
Du kannst voher ja versuchen, ob Importieren, Decompile & Co das Problem
lösen, s.a. https://www.donkarl.com?FAQ1.27.
--
Servus
Karl
*********
Access News: http://youtu.be/wpPYu6G_xcY
https://www.donkarl.com/?AEK, http://AccessDevCon.com
Access FAQ: https://www.donkarl.com
Me! funktioniert. Danke!

Importiert hatte ich eh, hat aber nix genutzt...

Ich arbeitete mich jetzt Schrit für Schritt durch, um die DB komplett konvertiert zum Laufen zu bringen. Ich fürchte, die eine oder andere Frage wird noch auftauchen ;-)

LG aus Wien-Mitte

P.S. Suchen/Ersetzen im VB-Editor kenne ich (natürlich), andernfalls hätte ich wohl Notepad++ verwendet, aber wohl kaum Word ;-)
merome
2022-01-26 17:51:45 UTC
Permalink
Post by merome
Post by Karl Donaubauer
Hallo!
Post by merome
ich konvertiere gerade eine uralt Access 2003 DB auf die aktuelle Version.
Ich habe Forms mit verschiedenem Code beim Öffnen Private Sub Form_Open(Cancel As Integer). Und da greife ich per Me. auf verschiedene Felder zu. Manche dieser Felder machen Probleme, manche nicht.
zB
Me.FIangelegt_user = gintBenutzerAktuellID
Me.angelegt_timestamp
Der erste Befehl klappt, der zweite bringt einen Fehler: access 2019 fehler beim kompilieren unzulässige Verwendung einer Eigenschaft.
Das Feld FIangelegt_user ist vom Datentyp Zahl (Long Integer),
das Feld angelegt_timestamp vom Datentyp Datum/Zeit (Standarddatum)
wo liegt das Problem?
Joo, solche Erfahrungen haben mich seinerzeit dazu gebracht, für
Steuerelemente immer ! statt . zu verwenden, auch wenn es wegen
Intellisense mühsam ist. s. den letzten Absatz in
https://www.donkarl.com?FAQ6.3
Eine Lösung könnte also das Ersetzen von allen Me.Steuerelement durch
Me!Steuerelement sein. Mühsam dabei ist natürlich, dass du aufpassen
musst, keine Eigenschaften zu erwischen.
Du kannst voher ja versuchen, ob Importieren, Decompile & Co das Problem
lösen, s.a. https://www.donkarl.com?FAQ1.27.
--
Servus
Karl
*********
Access News: http://youtu.be/wpPYu6G_xcY
https://www.donkarl.com/?AEK, http://AccessDevCon.com
Access FAQ: https://www.donkarl.com
Me! funktioniert. Danke!
Importiert hatte ich eh, hat aber nix genutzt...
Ich arbeitete mich jetzt Schrit für Schritt durch, um die DB komplett konvertiert zum Laufen zu bringen. Ich fürchte, die eine oder andere Frage wird noch auftauchen ;-)
LG aus Wien-Mitte
P.S. Suchen/Ersetzen im VB-Editor kenne ich (natürlich), andernfalls hätte ich wohl Notepad++ verwendet, aber wohl kaum Word ;-)
Hallo Karl,

die nächste Hürde: ich habe aus Access 2003 noch eine Benutzerverwaltung in einer system.mdw, die wohl jetzt nicht mehr funktioniert. Ich brauche allerdings eine (zumindest einfache) Benutzerverwaltung, weil viele DB Aktionen benutzerabhängig sind. Was für eine Lösung würdest du empfehlen?

Beim Googeln bin ich darauf gestoßen:
https://access-im-unternehmen.de/Benutzerverwaltung_mit_verschluesselten_Kennwoertern/

denkst du, das ist was Brauchbares?

LG Rob
Karl Donaubauer
2022-01-26 21:46:36 UTC
Permalink
Hallo!

[Eigentlich sollte man für neue Themen auch eine neue Diskussion
beginnen, aber mit angepasstem Betreff ist das Thema auch halbwegs
auffindbar.]
Post by merome
...
die nächste Hürde: ich habe aus Access 2003 noch eine Benutzerverwaltung in einer system.mdw, die wohl jetzt nicht mehr funktioniert. Ich brauche allerdings eine (zumindest einfache) Benutzerverwaltung, weil viele DB Aktionen benutzerabhängig sind. Was für eine Lösung würdest du empfehlen?
https://access-im-unternehmen.de/Benutzerverwaltung_mit_verschluesselten_Kennwoertern/
denkst du, das ist was Brauchbares?
Ich kenne den Autor recht gut und er weiß meistens, was er tut. ;-)
Bis zum "Ende des frei verfügbaren Artikels" sah es brauchbar aus, auch
wenn ich es selber ein wenig anders mache. Wenn's dir die paar Euro wert
ist, dann schicke sie André ruhig und spare dir damit die meiste Arbeit!
--
Servus
Karl
*********
Access News: http://youtu.be/wpPYu6G_xcY
https://www.donkarl.com/?AEK, http://AccessDevCon.com
Access FAQ: https://www.donkarl.com
HR Ernst
2022-01-25 09:35:08 UTC
Permalink
Post by merome
Hallo,
ich konvertiere gerade eine uralt Access 2003 DB auf die aktuelle Version.
Ich habe Forms mit verschiedenem Code beim Öffnen Private Sub Form_Open(Cancel As Integer). Und da greife ich per Me. auf verschiedene Felder zu. Manche dieser Felder machen Probleme, manche nicht.
zB
Me.FIangelegt_user = gintBenutzerAktuellID
Me.angelegt_timestamp
Der erste Befehl klappt, der zweite bringt einen Fehler: access 2019 fehler beim kompilieren unzulässige Verwendung einer Eigenschaft.
Das Feld FIangelegt_user ist vom Datentyp Zahl (Long Integer),
das Feld angelegt_timestamp vom Datentyp Datum/Zeit (Standarddatum)
wo liegt das Problem?
Danke für zweckdienliche Hinweise.
Rob
Von mir angrdachte, aber nicht überprüfte Vorgehensweise:
Den gesamten Code kopieren, in ein neues, leeres Word-Dokument einfügen ->
suchen "Me." -> ersetzen "Me!" -> alles kopieren und anstelle des alten
Codes einfügen -> Compilieren -> testen.

Viel Erfolg
--
Gruß

HR Ernst
Karl Donaubauer
2022-01-25 10:23:56 UTC
Permalink
Hallo!
Post by HR Ernst
...
Den gesamten Code kopieren, in ein neues, leeres Word-Dokument einfügen ->
suchen "Me." -> ersetzen "Me!" -> alles kopieren und anstelle des alten
Codes einfügen -> Compilieren -> testen.
Wozu denn Word?
Was du beschreibst, macht man traditionell mit SQL-Text für Access (in
Versionen ohne das rel. neue F+R im SQL-Editor), aber doch nicht mit
VBA, denn Suchen/Ersetzen bieetet sogar schon der 90er-Jahre VBA-Editor.
--
Servus
Karl
*********
Access News: http://youtu.be/wpPYu6G_xcY
https://www.donkarl.com/?AEK, http://AccessDevCon.com
Access FAQ: https://www.donkarl.com
HR Ernst
2022-01-25 13:39:27 UTC
Permalink
Post by Karl Donaubauer
Hallo!
Post by HR Ernst
...
Den gesamten Code kopieren, in ein neues, leeres Word-Dokument einfügen ->
suchen "Me." -> ersetzen "Me!" -> alles kopieren und anstelle des alten
Codes einfügen -> Compilieren -> testen.
Wozu denn Word?
Was du beschreibst, macht man traditionell mit SQL-Text für Access (in
Versionen ohne das rel. neue F+R im SQL-Editor), aber doch nicht mit
VBA, denn Suchen/Ersetzen bieetet sogar schon der 90er-Jahre VBA-Editor.
Du hast natürlich wie immer Recht. Ich habe die Suchen-/Ersetzen-Funktion
im Code nie benötigt und war gerade überrascht, dass es sie bei der
Code-Funktion auch gibt. Somit ist der Umweg über Word natürlich
vollkommen überflüssig. Aber: Wie geschrieben, es war halt nur "so eine
Idee"...

Aber: Wäre der Vorgang im Code mit Suchen ("Me.") -> Ersetzen ("Me!") denn
sinnvoll für den OP?
--
Gruß

HR Ernst
Loading...