collapse

* Benutzer Info

 
 
Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?

* Wer ist Online

  • Punkt Gäste: 61
  • Punkt Versteckte: 0
  • Punkt Mitglieder: 1
  • Punkt Benutzer Online:

* Forenstatistik

  • stats Mitglieder insgesamt: 13953
  • stats Beiträge insgesamt: 66365
  • stats Themen insgesamt: 8942
  • stats Kategorien insgesamt: 5
  • stats Boards insgesamt: 17
  • stats Am meisten online: 415

Autor Thema: Abfrage falschen Wert eingetragen Laufzeitfehler 2427  (Gelesen 684 mal)

Offline Icemann1970

  • Access-Profi
  • **
  • Beiträge: 178
Abfrage falschen Wert eingetragen Laufzeitfehler 2427
« am: März 06, 2018, 03:13:28 »
Hallo. Ich habe beim öffnen eine Abfrage (Abfrage Generator) erstellt. Im Feld GeräteNummer mit dem Kriterium [Bitte die Geräte Nummer eingeben]. Wenn dies erfolgreich eingegeben wurde filtert er anhand der Gerätenummer eine Kategorie, anhand dieser Kategorie setzt er im Registerformular verschiedene Register auf Visible. Soweit alles gut.
Private Sub Form_Open(Cancel As Integer)

    Me!RegisterStr0.Pages![ChecklisteLKW].Visible = False

End Sub
Option Compare Database
Option Explicit

Public Function fncPruefen()
Dim strFehlerText As String, intFehlerzahl As Integer: intFehlerzahl = 1
    fncPruefen = True

If DCount("*", "Objekt", "[GeräteNummer]='" & Me![GeräteNummer] & "'") > 0 Then
        strFehlerText = strFehlerText & intFehlerzahl & ".--> Diese Gerätenummer ist nicht vergeben" & vbCrLf
        intFehlerzahl = intFehlerzahl + 1
        fncPruefen = False
   End If

 If fncPruefen = False Then
        If intFehlerzahl = 2 Then strFehlerText = Mid(strFehlerText, 3)
        Select Case MsgBox("Es sind " & intFehlerzahl - 1 & " Felder nicht ausgefüllt ! " & vbCrLf & vbCrLf & strFehlerText _
        & vbCrLf & vbCrLf & " Sie haben eine falsche Gerätenummer eingegeben", vbOK)
Private Sub Form_Load()
If fncPruefen = False Then
   
    Dim Element As Variant, strAdr As String

Exit Sub
End If

If Me.Kategorie = "LKW" Then

    Me!RegisterStr0.Pages![ChecklisteLKW].Visible = True

End If

Wenn aber eine Gerätenummer eingegeben wird, die nicht existiert kommt der Laufzeitfehler 2427
Mag mir da einer von Euch bei helfen ?
Mfg. Udo
 

Offline ebs17

  • Access-Meister
  • ***
  • Beiträge: 883
Re: Abfrage falschen Wert eingetragen Laufzeitfehler 2427
« Antwort #1 am: März 06, 2018, 14:33:06 »
Statt den User in irgendeine Parameternachfrage etwas eintippen zu lassen und damit Fehler zu provozieren (die Mitteilung, dass er etwas falsch und umsonst gemacht hat, freut den User dann auch immer wieder), sollte man dem User helfen, dass er nur richtig starten kann, z.B. mit einer Auswahlliste (Kombinationsfeld) von vorhandenen Gerätenummern. Damit entfiele der gesamte Prüfmechanismus sowie dann auch die einzubauenden Fehler.
Mit freundlichem Glück Auf!

Eberhard
 

Offline Icemann1970

  • Access-Profi
  • **
  • Beiträge: 178
Re: Abfrage falschen Wert eingetragen Laufzeitfehler 2427
« Antwort #2 am: März 06, 2018, 18:34:46 »
Hallo Eberhard,
dein Einwand ist klar aber da es sich nicht um große LKW`s handelt, wächst die Stückzahl von Jahr zu Jahr um ca 300. Also ich finde in diesem Fall besser einmal den User zu belästigen und er eine neue "richtige" Nummer eintippen muss als nach 2-3 Jahren in einem Kombifeld sich mühsam auf die Gerätenummer z.B.:" 856" zu scrollen und da kann er ja auch aus versehen eine Zahl drüber oder drunter auswählen.
Ich hatte an den folgenden Code gedacht, setzt aber nicht meinen Willen um das Formular zu schließen, das andere zu öffnen und die Prozedur zu beenden.Private Sub Form_Load()
If fncPruefen = False Then

DoCmd.Close acForm, "MeinAktuellesFormular" 
DoCmd.OpenForm "MeinEinstiegsFormular"

Exit Sub
End If     '<--- oder Else

If Me.Kategorie = "LKW" Then 

    Me!RegisterStr0.Pages![ChecklisteLKW].Visible = True

End If
Mfg. Udo
 

Offline Lachtaube

  • Access Guru
  • ****
  • Beiträge: 1227
Re: Abfrage falschen Wert eingetragen Laufzeitfehler 2427
« Antwort #3 am: März 06, 2018, 19:40:47 »
Udo, Deine unfertigen Code-Fragmente kann ich nirgends zuordnen. Vielleicht beschreibst Du die Ausgangslage einmal so, dass sich potentielle Helfer ein Bild der beteiligten Formulare nebst Tabellen machen können. Und dann erklärst Du auch bitte Schritt für Schritt den gewünschten Ablaufplan. Darf ruhig etwas länger ausfallen. :)
Grüße von der (⌒▽⌒)
 

Offline ebs17

  • Access-Meister
  • ***
  • Beiträge: 883
Re: Abfrage falschen Wert eingetragen Laufzeitfehler 2427
« Antwort #4 am: März 06, 2018, 20:56:33 »
Zitat
mühsam auf die Gerätenummer z.B.:" 856" zu scrollen
Die eingestellte Eigenschaft "Automatisch ergänzen" würde die Mühsal deutlich reduzieren. Angebotene zusätzliche Spalten (zur Ansicht) würden bei Auswahl und Validierung sehr unterstützend wirken.

Beim persönlichen Tippen erwartest Du keine Tippfehler bzw. eingebildete Zahlendreher, sondern da hätte ein User alle Nummern und richtigen Zuordnungen dazu im Kopf und könnte sie reproduzieren?
Mit freundlichem Glück Auf!

Eberhard
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7268
Re: Abfrage falschen Wert eingetragen Laufzeitfehler 2427
« Antwort #5 am: März 06, 2018, 23:27:24 »
Hallo,
Zitat
einem Kombifeld sich mühsam auf die Gerätenummer z.B.:" 856" zu scrollen
Vieleicht solltest Du Dich mal mit den Eigenschaften eines Kombis beschäftigen. Keine Auswahl ist schneller und fehlersicherer als die Auswahl mit einem Kombifeld, vor allen Dingen auch wegen den bereits erwähnten zusätzlichen Anzeigemöglichkeiten.
Mit der Eingabe von 856 weißt Du noch lange nicht ob Du die Zahl richtig in Erinnerung, möglicherweis ist sie ja falsch und Du hast was falsches gewählt.
Nimm eine Kombifeld, alles andere halte ich für unkomfortabel und fehlerträchtig.


Gruß
Klaus