Access-o-Mania

Access-Forum (Deutsch/German) => Bericht => Thema gestartet von: mad am Dezember 05, 2016, 12:00:19

Titel: Bezeichnungsfeld ausgrauen bzw. schraffieren
Beitrag von: mad am Dezember 05, 2016, 12:00:19
Hallo Zusammen,

habe folgendes Problem, ich habe per Abfrage einen Bericht erstellt. Dieser Bericht dient nur als Druckvorlage auf dem Anwesende Kollegen unterschreiben und ggf. eine Zeit eintragen können.
Auf dem Bericht habe ich allerdings auch ein Kontrollkästchen (Atemschutz) hinter jedem Namen und ein "Bezeichnungsfeld20" als Platzhalten für den handschriftlichen Eintrag der Zeit wieviel Minuten der Kollege unter Atemschutz war.
Nun möchte ich, wenn im Kontrollkästchen (Atemschutz) kein Häckchen gesetzt ist, daß das "Bezeichnungsfeld20" ausgegraut oder schraffiert wird. Dann sieht man nämlich gleich das es sich hier um keinen Atemschutzträger handelt und somit auch keine Zeit eingetragen werden kann.

Folgenden Code habe ich leider ohne Erfolg ausprobiert

Private Sub Bezeichnungsfeld20__AfterUpdate()
If Me!Atemschutz = True Then
    Me!Bezeichnungsfeld20.BackColor = vbWhite
Else
    Me!Bezeichnungsfeld20.BackColor = vbGray
End If
End Sub


Vielleicht könnte mir jemand helfen.
Danke
mad
Titel: Re: Bezeichnungsfeld ausgrauen bzw. schraffieren
Beitrag von: Lachtaube am Dezember 05, 2016, 12:12:14
In Berichten sollte das Format-Ereignis des Bereichs, in dem das Steuerelement liegt, der richtige Ort zur "malerischen Gestaltung" sein.
Titel: Re: Bezeichnungsfeld ausgrauen bzw. schraffieren
Beitrag von: mad am Dezember 11, 2016, 10:06:04
Ich habe den Code jetzt wie folgt auf den Detailbereich (nach Formatierung) gelegt, leider tut sich immer noch nichts.

Private Sub Detailbereich_Format(Cancel As Integer, FormatCount As Integer)
    If Me!Atemschutztraeger = 1 Then
    Me!Bezeichnungsfeld20.BackColor = vbWhite
        Else
    Me!Bezeichnungsfeld20.BackColor = vbGray
    End If
End Sub



Gruss
mad
Titel: Re: Bezeichnungsfeld ausgrauen bzw. schraffieren
Beitrag von: MzKlMu am Dezember 11, 2016, 10:15:47
Hallo,
ein KK hat nicht 1 wenn angehakt, sondern -1. Am besten verwendet man True wie Du es im 1.Beitrag schon gemacht hast. Warum hast Du jetzt 1 genommen für den Vergleich ?
Titel: Re: Bezeichnungsfeld ausgrauen bzw. schraffieren
Beitrag von: MaggieMay am Dezember 11, 2016, 23:17:50
Zitat von: mad am Dezember 11, 2016, 10:06:04
Ich habe den Code jetzt wie folgt auf den Detailbereich (nach Formatierung) gelegt, leider tut sich immer noch nichts.
In welcher Ansicht wird der Bericht geöffnet?
In der Berichtsansicht werden die Format- (und Print-) Ereignisse nicht durchlaufen.
Titel: Re: Bezeichnungsfeld ausgrauen bzw. schraffieren
Beitrag von: mad am Dezember 23, 2016, 22:04:57
Hallo Zusammen,

konnte mich wegen Krankheit leider in letzter Zeit nicht melden.

Hallo MzKlMu,
habe True und -1 versucht, tut sich aber leider nichts.

Hallo MaggieMay,
der Bericht wird in der Seitenansicht geöffnet, aber geht trotzdem nicht.

An was könnte es event. noch liegen?


Gruss
mad
Titel: Re: Bezeichnungsfeld ausgrauen bzw. schraffieren
Beitrag von: MzKlMu am Dezember 24, 2016, 07:15:43
Hallo,
bitte zeige den aktuellen Code.
Titel: Re: Bezeichnungsfeld ausgrauen bzw. schraffieren
Beitrag von: DF6GL am Dezember 24, 2016, 09:32:54
Hallo,


--vbGray  gibt es nicht. (A2010)
--In einem Bericht sind ungebundene KK nicht datensatzweise editierbar und auswertbar.
--In einem Bericht sind gebundene KK nicht editierbar
--Das Ganze gelingt nur, wenn das KK in der Tabelle mitgeführt, in einem Formular editiert und der Bericht in Seitenansicht geöffnet wird..

Tipp:   In jedem Modul(kopf) "Option explicit" eintragen.
Titel: Re: Bezeichnungsfeld ausgrauen bzw. schraffieren
Beitrag von: MaggieMay am Dezember 25, 2016, 00:53:53
Hallo,

selbstverständlich muss das Kontrollkästchen aus der Abfrage gefüllt werden.
Dann sollte folgendes funktionieren:
Private Sub Detailbereich_Format(Cancel As Integer, FormatCount As Integer)
    If Me!Atemschutz = True Then
        Me!Bezeichnungsfeld20.BackColor = vbWhite
    Else
        Me!Bezeichnungsfeld20.BackColor = vbGrey
    End If
End Sub

vorausgesetzt die beteiligten Steuerelemente befinden sich im Detailbereich.

PS:
Der Eintrag von "Option Explicit" im Kopf eines jeden Moduls und das Anhaken der VBA-Option "Variablendeklaration erforderlich" sorgt dafür, dass Schreibfehler wie "vbGray" beim Kompilieren erkannt werden. Darauf sollte man also nicht verzichten!
Titel: Re: Bezeichnungsfeld ausgrauen bzw. schraffieren
Beitrag von: mad am Januar 04, 2017, 10:08:58
Hallo Zusammen,
habe Gray in Grey geändert, die Steuerelemente befinden sich im gleichen Detailbereich und das Kontrollkästchen wird aus der Abfrage gefüllt. Aber leider funktioniert es immer noch nicht.
Habe auch mal "Option Explicit" wie von DF6GL vorgeschlagen eingetragen. Dann kommt aber die Fehlermeldung: Variable nicht definiert.

Gruss
mad
Titel: Re: Bezeichnungsfeld ausgrauen bzw. schraffieren
Beitrag von: MzKlMu am Januar 04, 2017, 10:18:51
Hallo,
ZitatDann kommt aber die Fehlermeldung: Variable nicht definiert.
genau das ist ja der Sinn dieses Eintrags. Zeige jetzt bitte noch mal den aktuellen Code und nenne die Variable die nicht definiert ist.
Es wäre geschickt gewesen, wenn Du das gleich gemacht hättest, wie sonst soll man einen Fehler finden.
Titel: Re: Bezeichnungsfeld ausgrauen bzw. schraffieren
Beitrag von: mad am Januar 04, 2017, 11:03:49
Entschuldigung,

im Anhang das Bild mit dem Code und welche Variable er anmekert.
Es darf auch eine andere Farbe sein, event. Schwarz.
Ich hoffe das hilft weiter.


Danke
mad
Titel: Re: Bezeichnungsfeld ausgrauen bzw. schraffieren
Beitrag von: MzKlMu am Januar 04, 2017, 11:30:42
Hallo,
vbgrey gibt es nicht als Farbkonstante. Du kannst auch einen Farbcode zuweisen.
Stell im Feld manuell die gewünschte Hintergrundfarbe ein. In den Eigenschaften findest Du dann für den Hintergrund eine Farbzahl, kopieren und für die Zuweisung verwenden.
Titel: Re: Bezeichnungsfeld ausgrauen bzw. schraffieren
Beitrag von: Lachtaube am Januar 04, 2017, 11:42:56
Einen Grauton würde ich mir aus dem Stegreif noch mit RGB(&C0, &HC0, &HC0) zutrauen zuzuweisen. :)
Titel: Re: Bezeichnungsfeld ausgrauen bzw. schraffieren
Beitrag von: mad am Januar 04, 2017, 11:44:07
Vielen Dank,
hat funktioniert. Habe 0 für schwarz eingegeben.


Danke nochmals für die Hilfe bei allen.
Gruss
mad