Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: kingwambi am Februar 17, 2016, 13:58:22

Titel: Schreibschutz & Ausblenden beim Anzeigen
Beitrag von: kingwambi am Februar 17, 2016, 13:58:22
Hallo - was habe ich hier übersehen? Er sperrt nur die Datensätze, bei denen die Felder nicht ausgeblendet werden (Ergebnis_F = "1"). Ich komme nicht drauf. Bitte um eure Hilfe - Danke


Private Sub Form_Current()

Me.AllowEdits = Left(Kundennr.Column(1), 1) = "0"

If Me!Ergebnis_F = "1" Then
Me!Text229.Visible = True
Me!Text254.Visible = True
Me!Text233.Visible = True
Else
Me!Ergebnis_F = "2"
Me!Text229.Visible = False
Me!Text254.Visible = False
Me!Text233.Visible = False
End If
     
End Sub
Titel: Re: Schreibschutz & Ausblenden beim Anzeigen
Beitrag von: DF6GL am Februar 17, 2016, 16:27:43
Hallo,


was hat das Sperren mit   Ergebnis_F   zu tun?

Vielleicht willst Du ja so steuern:

.
.
ElseIf  Me!Ergebnis_F = "2" Then
.
.
Titel: Re: Schreibschutz & Ausblenden beim Anzeigen
Beitrag von: kingwambi am Februar 17, 2016, 16:42:41
Hallo

eigentlich hat es nichts miteinander zu tun - außer, dass beide "beim Anzeigen" ausgeführt werden . Die beiden sind unabhängig - funktionieren auch wenn ich je den anderen entferne. Nur miteinander nicht ganz.
Der Datensatz soll gesperrt sein wenn die Bedingung mit der Kundennummer erfüllt wird. Und Die Felder sollen ausgeblendet sein, wenn die Bedingungen mit dem Ergebnis erfüllt sind. Mit dem ElseIf funktionierte es nicht. Da ich jedoch nur minimalste VBA Kenntnisse habe bitte ich um Verständnis - ev habe ich auch etwas nicht verstanden.

Titel: Re: Schreibschutz & Ausblenden beim Anzeigen
Beitrag von: DF6GL am Februar 18, 2016, 08:27:36
Hallo,

ich verstehe

ZitatUnd Die Felder sollen ausgeblendet sein, wenn die Bedingungen mit dem Ergebnis erfüllt sind

nicht.  Wie genau meinst Du das?


If Me!Ergebnis_F = "1" Then
Me!Text229.Visible = True
Me!Text254.Visible = True
Me!Text233.Visible = True
ElseIf Me!Ergebnis_F = "2" Then
Me!Text229.Visible = False
Me!Text254.Visible = False
Me!Text233.Visible = False
End If


Dein Code sagt:  Wenn das Feld "Ergebnis_F" gleich 1 ist, dann werden die Textfelder auf sichtbar gesetzt. Ist das nicht der Fall, dann werden bei "Ergebnis_F" gleich 2 die Textfelder auf unsichtbar gesetzt. Trifft das auch nicht zu (also "Ergebnis_F" weder 1 noch 2) , dann passiert gar nichts.


Allowedits ist davon unabhängig und wird auf True gesetzt, wenn die Kundennummer mit "0" beginnt., ansonsten wird es auf False gesetzt.
Titel: Re: Schreibschutz & Ausblenden beim Anzeigen
Beitrag von: kingwambi am Februar 18, 2016, 18:02:43
Hallo - Ganz richtig. Genau so ist das gemeint. Es funktioniert auch fast. Gebe ich zu dem Schreibschutz den Befehl zum Ausblenden funktioniert alles bis auf, dass der Schreibschutz bei Me!Ergebnis_F = "2" nicht angewendet wird. Auch wenn ich es trenne und den Schreibschutz beim Öffnen und das Ausblenden beim Anzeigen ausführen lasse.
Titel: Re: Schreibschutz & Ausblenden beim Anzeigen
Beitrag von: DF6GL am Februar 18, 2016, 20:20:35
Hallo,

hast Du denn nun auch mal diesen Code eingesetzt : 

If Me!Ergebnis_F = "1" Then
  Me!Text229.Visible = True
  Me!Text254.Visible = True
  Me!Text233.Visible = True
[color=red]ElseIf Me!Ergebnis_F = "2" Then
[/color]  Me!Text229.Visible = False
  Me!Text254.Visible = False
  Me!Text233.Visible = False
End If



Was ist denn "Ergebnis_F"  überhaupt?
Titel: Re: Schreibschutz & Ausblenden beim Anzeigen
Beitrag von: kingwambi am Februar 19, 2016, 06:34:59
Hallo. Den Code habe ich übersehen  ::) - es funktioniert! Vielen Dank!! Schönen Tag noch - Liebe Grüße Jürgen