2016-04-03 6 views
0

Dies ist meine erste Frage in diesem Forum, ich bin ein sehr Anfänger Datenbank, habe leider keine Codierkenntnisse, aber ich kann Makro ok und ich bin hübsch praktisch mit einem ausschneiden-und-einfügen VBA-Code :-)Zugriff auf Berichtsdetails - Ändern der Sichtbarkeit eines Objekts für jede Zeile

Ich habe einen Bericht innerhalb eines Formulars, und im Wesentlichen möchte ich Symbole darstellen, wenn einer von 4 Datenelemente für jede Zeile des Berichts vorhanden sind - wie dargestellt bei X in meinem Bild. screenshot Zum Beispiel erlaube ich dem Benutzer, ein Erinnerungsdatum festzulegen, um nach neuen Ergebnissen zu suchen - Ich möchte, dass ein Symbol sichtbar wird, wenn sie eine Erinnerung für diese Zeile gesetzt haben.

Bis jetzt habe ich ein paar Dinge ohne Erfolg versucht, einschließlich eines Unterberichts innerhalb des Berichtsdetails mit einem Makro 'ob Daten vorhanden, dann browsen' (entweder im Bericht/"onLoad" oder Detail/"onPrint" Ereignisse, oder ein 'wenn Daten vorhanden, ändern sichtbare Eigenschaft' Makro für ein Bild oder andere Bericht Detail Element.Kurz gesagt, ich finde keine Möglichkeit, etwas im Detailbereich des Berichts pro Reihe anders als die reinen Daten zu ändern innerhalb der referenzierten Tabellen.

ich bin sicher, dass eine einfache Lösung für dieses Problem gibt es, die ich gerade noch nicht gedacht, aber alle Vorschläge sehr geschätzt!

Antwort

0

Sie dies mit dem OnFormat Ereignisse des Einzelnen tun sek tion. Angenommen, Sie haben ein Feld in der Datenherkunft genannt optFlag und ein Label im Detailbereich genannt lblHello:

Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer) 
    If ([optFlag]) Then 
     lblHello.Visible = True 
    Else 
     lblHello.Visible = False 
    End If 
End Sub 

Der Trick besteht darin, dass dieses Ereignis nur feuert, wenn Sie den Bericht in der Seitenansicht öffnen. Es wird nicht ausgelöst, wenn Sie den Bericht in der Berichtsansicht öffnen.