Habe folgendes Problem.
Bei meiner Druckfunktion kommt eine Fehler meldung wenn nichts in den Feldern steht.
"Unzulässige Verwendung von Null"
Dies ist mir auch Klar
Habe es jetzt mit If Not isNull versucht doch ich bekomms nicht richtig hin
funktioniert halbwegs aber es kommt ebenso eine Fehlermeldung
hier ein Teil des Codes für den Drucker.
Call EPL_File_export("Adressen", Me!Anrede, Me!Vorname & " " & Me!Nachname, Me!Strasse, Me!PLZ & " " & Me!Ort, Me!Land, Me!FreiTextfeld, "", "2")
mfg
Manuel
Hallo,
benutz für alle betroffenen Felder die nz()-Funktion:
Call EPL_File_export("Adressen", nz(Me!Anrede,"") , Me!Vorname & " " & Me!Nachname, Me!Strasse, Me!PLZ & " " & Me!Ort, Me!Land, Me!FreiTextfeld, "", "2")
Hallo, du KÖNNTEST einmal versuchen, die NULL-Inhalte abzufangen.
Das macht man in der Regel mit Hilfe der NZ-Funktion also sinngmäß folgendermasßen:
Call EPL_File_export("Adressen", NZ(Me!Anrede,""), NZ(Me!Vorname,"") & " " & NZ(Me!Nachname,""), NZ(Me!Strasse,""), NZ(Me!PLZ,"") & " " & NZ(Me!Ort,""), NZ(Me!Land,""), NZ(Me!FreiTextfeld,""), "", "2")
Wobei zu bemerken sei:
Sinnvoll wäre es, jene Felder, UNBEDINGT befüllt sein müsssen in der Tabelle als solche zu definieren.
Also z.B. beim Vornamen Eingabe erforderlich JA, Leere Zeichenfolge NEIN
Wird dann eine Neue Adresse angelegt und der Vorname nicht ausgefüllt wird sich Access darüber mokieren.
Damit du aber den Benutzer nicht zum Wahnsinn treibst solltest du das nur bei jenen Feldern machen, die UNBEDINGT gefüllt werden sollen und diese auch mit einem roten Sternchen z.B. am Formular kennzeichnen.
Beim FreiText würde das wenig Sinn machen, den fängst du mit der NZ-Funktion ab.
Lies auch in der Online-Hilfe über NZ nach!
HTH
Peter
Ja danke erstmal funktioniert gut!
Kannte diese Funktion gar nicht.
Ja werd mir das mal ansehen wie ichs dann mache.
Danke
mfg
Manuel
Und wie würde es mi IF funktionieren??
für die Felder
Me!Vorname
Me!Nachname
Me!Strasse
Me!PLZ
Me!Ort
Me!Land
Me!FreiTextfeld
würde für mich selber interessieren wie dies funktioniert.
Hallo,
If IsNull(Me!Vorname) Then
'mach was Passendes, wenn Me!Vorname NULL ist, z. B.: Me!Vorname=""
End If
If IsNull(Me!Nachname ) Then
'mach was Passendes, wenn Me!Nachname NULL ist
End If
.
.
.
.
Verstehe jetzt nicht ganz was du damit meinst ...
Freilich kann man auch mit einer Bedingung feststellen ob ein Feld ausgefüllt ist oder nicht aber das ist ein wenig umständlicher.
Du KÖNNTEST das z.B. im Ereignis 'Vor Aktualisierung' des Formulars machen (für JEDES benötigte Feld!)
Private Sub Form_BeforeUpdate(Cancel As Integer)
If IsNull(Me!Nachname) Then
MsgBox "Der Nachname muss angegeben werden!", vbExclamation, "Adressdaten"
Me!Nachname.SetFocus
Cancel = True
End If
'hier weitere Bedingungen für andere Felder einfügen
End Sub
hast du das gemeint?
EDIT: acResponse.... raus genommen, hat da nix zu suchen :-\
Hmmmm...
@DF6GL
...ich muss mich kürzer fassen sonst habe ich keinen Zeitvorteil ;D ;D ;D ;)
Hallo Peter,
nee, überlass es mir, wenig Prosa zu schreiben... ;D . Ich bin ziemlich schreibfaul.. 8)
Ich warte lieber nächstes Mal ein bißchen länger mit meinen Antworten/Beiträgen... ;)
Danke genau sowas habe ich gebraucht.
Sehr gut, freut uns... ;)
Nicht vergessen, bitte Beitrag auf 'gelöst' setzen, wenn alle Klarheiten beseitigt wurden ;)
Grüße
@database:
Response = acDataErrContinue ??? ;)
Du solltest Dir ruhig Zeit lassen, ich warte ja jetzt länger...... :P ;D ;D ;D ;D ;D
@Franz
12. Gebot:
Du sollst keinen Code kopieren und dann unvollständig gelesen auf SENDEN klicken! >:( >:( ;D
Das Teil stammt aus einer NotInList aus einer alten Muster DB -- selber schreiben wäre manchmal wirklich g'scheiter
Zitatich warte ja jetzt länger......
... danke, das hab' ich jetz gebraucht :D :D
Oh mann mir schläft langsam das Sitzfleich ein - ich bin schon froh, wennn ich kommende Woche wieder arbeiten gehen kann.