Office: Feld aus einem Formular im Modul ansprechen

Helfe beim Thema Feld aus einem Formular im Modul ansprechen in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, habe WIN 7 Prof. 64 Bit und Office 2010 Prof. Ich habe folgendes Problem. In einem Formular habe ich in Basic diverse Prüfungen... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Siegbert.b@t-online.de, 7. Februar 2014.

  1. Feld aus einem Formular im Modul ansprechen


    Hallo zusammen,
    habe WIN 7 Prof. 64 Bit und Office 2010 Prof.
    Ich habe folgendes Problem.
    In einem Formular habe ich in Basic diverse Prüfungen hinterlegt. Nun will ich zum Beispiel ein Feld
    „A“ prüfen. Dieses Feld will ich in einem separaten Modul weiter bearbeiten.

    Also mal ein Beispiel:

    If A=“X“ then
    Jetzt Modul aufrufen (ich weis wie es geht)
    Und jetzt im Modul wieder das Feld A ansprechen.
    (Was muss ich machen, wie muss ich das Feld vorher definieren Kann mir jemand ein Beispiel machen?)

    End if

    Für Eure Hilfe wäre ich sehr Dankbar.
    Gruß
    Siegbert
     
    Siegbert.b@t-online.de, 7. Februar 2014
    #1
  2. Exl121150 Erfahrener User
    Hallo Siegbert,

    angenommen Du hast im Formular ein TextBox-Feld namens "txtBezeichnung". Dieses möchtest Du überprüfen, ob es den Inhalt "Schokolade" hat. Falls ja, möchtest Du in einem anderen Modul eine Prüfroutine namens "TestBezeichnung" aufrufen. Dazu übergibst Du beim Aufruf dieser Sub/Function auch einen Zeiger auf das Feld - deshalb besitzt die formale Parameterliste von TestBezeichnung die Paramaterdeklaration "Feld As TextBox" und die aktuelle Parameterliste des Prozeduraufrufs
    entweder (1.Variante): "TestBezeichnung txtBezeichnung"
    oder (2.Variante): "Call TestBezeichnung(txtBezeichnung)".
    Das Ganze kann man statt mit einem Positionsparameter auch als benannten Parameter gestalten:
    (entweder 1.Variante): "TestBezeichnung Feld:=txtBezeichnung"
    (oder 2. Variante): "Call TestBezeichnung(Feld:=txtBezeichnung)"
    (d.h. wird "Call" verwendet, sind die Parameterklammern Pflicht; wird dagegen kein "Call" verwendet, dürfen die Parameterklammern nicht verwendet werden!!)
    Code:
       '....
       If txtBezeichnung.Value ="Schokolade" Then
          TestBezeichnung txtBezeichnung
       End If
       '....
    
    Code im anderen Modul:
    Code:
    [B][COLOR="#0000CD"]Public[/COLOR][/B] Sub TestBezeichnung[COLOR="#0000CD"][B](Feld As TextBox)[/B][/COLOR]
      If Feld.Name="txtBezeichnung" Then
         If Feld.Value="Schokolade" Then
            '... weiterer Code
         Else
            '... weiterer Code
         End If
      ElseIf Feld.Name = "txtStück" Then
            '... weiterer Code
      Else
            '... weiterer Code
      End If
            '... weiterer Code ... etc.
    End Sub
    
     
    Zuletzt bearbeitet: 9. Februar 2014
    Exl121150, 9. Februar 2014
    #2
  3. Hallo Anton,

    habe es gerade gelesen, da ich weg war. Muss aber wieder für ein paar Tage wegfahren. Werde es danach ausprobieren und Dir schreiben, ob ich es verstanden habe. Bin am Samstag nächste Woche wieder zu Hause.

    Danke für Deine Meldung

    Gruß
    Siegbert
     
    Siegbert.b@t-online.de, 15. Februar 2014
    #3
  4. Feld aus einem Formular im Modul ansprechen

    Hallo Anton,

    habe es nicht hinbekommen.. Habe eine einfache Subroutine gemacht um das zu testen. Bin wahrscheinlich zu Blöd.
    Ich zeige Dir mal die Routine. Vielleich kannst Du mir helfen. Manchmal ist das ja peinlich wie blöd man sich anstellen kann.

    Hier die Routine:

    Private Sub DatumBis_AfterUpdate()
    Dim z
    Dim y
    Dim ANZAHL1 As TextBox

    z = 0
    y = 0
    Anzahl = 0
    z = Month(DatumVon)
    y = Month(DatumBis)
    Anzahl = y - z + 1
    ANZAHL1 = Anzahl

    If ANZAHL1.Value = "1" Then Call Test(Feld:=ANZAHL1)
    '*


    End Sub

    Public Sub Test(Feld As TextBox)
    If Feld.Name = "anzahl1" Then
    If Feld.Value = 1 Then
    MsgBox ("Das Kennziffer für den aufgeteilen Verbrauch fehlt," _
    & Chr(13) & "oder der Betrag fehlt." _
    & Chr(13) & "Bitte ein korrekte Kennziffer eingeben")
    End If
    End If
    End Sub
     
    Siegbert.b@t-online.de, 21. Februar 2014
    #4
  5. Exl121150 Erfahrener User
    Hallo Siegbert,

    Code:
    [COLOR="#0000CD"]Option Explicit  [/COLOR]'<== sehr empfehlenswert!
    
    Private Sub DatumBis_AfterUpdate()
      Dim z As Integer
      Dim y As Integer
    [COLOR="#0000CD"]  Dim Anzahl As Integer[/COLOR]
    [COLOR="#008000"]  '
      'ANZAHL1: Als "TextBox" mit dem Namen "ANZAHL1" ins Formular aufnehmen!
      '         Die Eigenschaft "Sichtbar" (Visible) auf "Nein" (False) stellen,
      '         sodass das Feld im Formular unsichtbar ist.
      '
    [/COLOR]  Anzahl = 0
      z = Month(DatumVon)
      y = Month(DatumBis)
      Anzahl = y - z + 1
      ANZAHL1.Value = Anzahl
      
      If ANZAHL1.Value = 1 Then Call Test(Feld:=ANZAHL1)
      
    End Sub
    
    Public Sub Test(Feld As TextBox)
      If Feld.Name = "ANZAHL1" Then
        If Feld.Value = 1 Then
          MsgBox "Die Kennziffer für den aufgeteilten Verbrauch fehlt," & vbCrLf & _
                 "oder der Betrag fehlt." & vbCrLf & _
                 "Bitte eine korrekte Kennziffer eingeben!"
        End If
      End If
    End Sub
    
     
    Zuletzt bearbeitet: 21. Februar 2014
    Exl121150, 21. Februar 2014
    #5
  6. Hallo Anton,

    Danke das hat jetzt funktioniert. Wieder etwas gelernt.

    Schönen Gruß
    Siegbert
     
    Siegbert.b@t-online.de, 24. Februar 2014
    #6
Thema:

Feld aus einem Formular im Modul ansprechen

Die Seite wird geladen...
  1. Feld aus einem Formular im Modul ansprechen - Similar Threads - Feld Formular Modul

  2. Wert aus Formular-Feld an SQL-Statement übergeben

    in Microsoft Access Hilfe
    Wert aus Formular-Feld an SQL-Statement übergeben: Hallo werte Access-Helfer, ich möchte in einem Unterformular (neues Angebot anlegen) nur die Werte in einer DropSown-Box angezeigt bekommen, die zu diesem Hauptformular (Kontakte dieses Kunden)...
  3. Inhalte aus 4 Feldern aus aktuellem Formular in Zwischenablage kopieren

    in Microsoft Access Hilfe
    Inhalte aus 4 Feldern aus aktuellem Formular in Zwischenablage kopieren: Hallo und guten Morgen, ich möchte die Inhalte von 4 Feldern (NICHT den ganzen Datensatz) per Button-Klick aus dem aktuellen Formular in die Zwischenablage kopieren, um diese dann z.B. in eine...
  4. Daten in bestimmtes Feld in Access Formular

    in Microsoft Access Hilfe
    Daten in bestimmtes Feld in Access Formular: Hallo, ich möchte eingescannte Daten über eine Software via Javascript in ein bestimmtes Feld in Access schreiben. Das Schreiben in eine bestimmte Tabelle ist mir klar und über ein normales...
  5. Feld aus Formular 1 im Formular 2 darstellen

    in Microsoft Access Hilfe
    Feld aus Formular 1 im Formular 2 darstellen: Hi vlt kann mir ja jemand Helfen oder hat eine Idee, vlt habe ich auch nur einen Denkfehler. Es geht um das frm_RechnungErstellen, das ist rechts unten ein Feld Gesamtsumme. Dieses Feld müsste in...
  6. Einem OLE-Feld ein Objekt per Formular zuweisen

    in Microsoft Access Hilfe
    Einem OLE-Feld ein Objekt per Formular zuweisen: Hallo zusammen, ich habe eine Tabelle mit mehreren Feldern. Eins davon ist vom Typ OLE und soll ein Bild einer Unterschrift für den späteren Bericht enthalten. Ich möchte ein Formular erzeugen,...
  7. Feld im Formular formatieren

    in Microsoft Access Hilfe
    Feld im Formular formatieren: Hallo Forum, erstmal ein gutes frohes neues Jahr! Zu meinem jetzigen Problem ist es, das ich in einem Formular in einem Datumsfeld (Das hat das Format Datum/Uhrzeit/ gerne formatieren möchte. Der...
  8. Hinzufügen eines Felds zu einem Formular oder Bericht

    in Microsoft Access Tutorials
    Hinzufügen eines Felds zu einem Formular oder Bericht: Hinzufügen eines Felds zu einem Formular oder Bericht Access für Microsoft 365 Access 2019 Access 2016 Access 2013 Access 2010 Access 2007...
Schlagworte: