Forums Neueste Beiträge
 

dfirst-Funktion bringt Laufzeit-Fehler 2001 wenn im Ausdruck ein Bindestrich ist, Access 2000

27/01/2008 - 22:46 von Andreas Volkert | Report spam
Hallo liebe Newsgroup-Freunde,

darf ich euch um Hilfe bei der Lösung bzw. Erklàrung zu meinem Problem
bitten?

Ich habe lange nach dem Grund für einen Laufzeitfehler 2001 gesucht und habe
folgende merkwürdige Ursache gefunden.

In einem Kunden-Formular gebe ich über ein Dropdown-Feld (LKZ) das
Lànderkennzeichen ein bzw. wàhle es aus.
Das Dropdown-Feld verwendet eine Hilfstabelle HtblLand, in der es die
Lànderkennzeichen und die internationalen Vorwahlen gibt.

Nach der Auswahl des Lànderkennzeichens soll über eine dfirst Funktion

Me.Vorwahl = DFirst("Lànder-Vorwahl", "HtblLand", "lngCountryID=" & Me.LKZ)

die Vorwahl aus dem Lànder-Vorwahl Feld gesucht und in das Feld Vorwahl im
Kundenformular eingetragen werden.

Nachdem das nie geklappt hat (immer Abbruch mit Laufzeitfehler 2001), habe
ich alle möglichen Sachen ausprobiert und habe unter anderem das
Ausdrucks-Feld, in dem sich die Vorwahl befindet umbenannt in
"LànderVorwahl", also OHNE Bindestrich zwischen Lànder und Vorwahl. Die
Datenherkunft des DropDown-Feldes und den dFirst-Ausdruck habe ich
selbstverstàndlich auch geàndert in:

Me.Vorwahl = DFirst("LànderVorwahl", "HtblLand", "lngCountryID=" & Me.LKZ)

und plötzlich funktioniert das Ganze wie ich das immer gewohnt war (die
jetzige Datenbank stammt nicht von mir, ich selbst hàtte und habe nie
Bindestriche verwendet und bin wohl deshalb bisher auch noch nie auf dieses
Problem gestoßen!).

Kann das tatsàchlich sein, dass durch Benennung des Feldes MIT Bindestrich
die dFirst Funktion so auf einen Fehler làuft, obwohl das Feld doch in der
dFirst-Funktion mit Anführungszeichen "Lànder-Vorwahl" als String definiert
wird?

Habe ich noch einen anderen Denkfehler drin? Was kann ich machen, um den
Bindestrich dennoch beizubehalten, denn die Datenbank ist schon einigermaßen
umfangreich und die Umbenennungen verbieten sich mittlerweile.

Ich bedanke mich schon mal ganz 'heftig' für jegliche Information bzw. Hilfe
zu meinem Problem.

Viele Grüße aus München

Andi Volkert
 

Lesen sie die antworten

#1 Peter Doering
28/01/2008 - 00:16 | Warnen spam
Hallo,

Andreas Volkert wrote:

Ich habe lange nach dem Grund für einen Laufzeitfehler 2001 gesucht und habe
folgende merkwürdige Ursache gefunden.

In einem Kunden-Formular gebe ich über ein Dropdown-Feld (LKZ) das
Lànderkennzeichen ein bzw. wàhle es aus.
Das Dropdown-Feld verwendet eine Hilfstabelle HtblLand, in der es die
Lànderkennzeichen und die internationalen Vorwahlen gibt.

Nach der Auswahl des Lànderkennzeichens soll über eine dfirst Funktion

Me.Vorwahl = DFirst("Lànder-Vorwahl", "HtblLand", "lngCountryID=" & Me.LKZ)



Bindestrich ist ein Sonderzeichen. Tabellen-/Feldnamen muessen dann in []
eingeschlossen werden.

Me.Vorwahl = DFirst("[Lànder-Vorwahl]", "HtblLand", "lngCountryID=" &
Me.LKZ)

Siehe auch www.donkarl.com?FAQ1.5

Ausserdem solltest du statt der Punkte Rufzeichen verwenden, also
Me!Vorwahl statt Me.Vorwahl, siehe www.donkarl.com?FAQ6.3

Gruss - Peter

Ich beantworte keine Fragen per Email.
Mitglied im http://www.dbdev.org
FAQ: http://www.donkarl.com

Ähnliche fragen