W raporcie mam etykietę "Numer protokołu" oraz pole [nr_protokołu]. Nie każdy rekord zawiera dane w polu [nr_protokołu]. Zatem w raporcie w każdym rekordzie jest wyświetlana etykieta "Numer protokołu", ale nie w każdym rekordzie jest są wyświetlane dane z pola [nr_protokołu]. Czy można zrobić tak, aby gdy pole [nr_protokołu] jest puste nie wyświetlała się etykieta "Numer protokołu"?
Najprościej bez kodu to zmienienie tej etykiety na pole tekstowe i żródle dać coś takiego:
iif(isnull([nr_protokołu]),null,"Numer protokołu")
Super, działa. Bardzo dziękuję za pomoc.
To zapytam jeszcze o jedno. Co zrobić w przypadku, gdy pole nie wyświetla się z powodu braku danych (przypadek powyżej), a pod nim i nad nim są inne wyświetlające się pola i chciałbym, aby nie było przerwy pomiędzy polem górnym a dolny? Krótko mówiąc, aby w takiej sytuacji pole dolne przesuwało się o jeden wiersz do góry. Czy jest to wykonalne? Próbowałem ustawiać właściwość "Można zmniejszać", ale to nic nie zmienia.
To już inna zabawa, ustaw właściwość można zwiększać na tak i ustaw wysokość kontrolki na minimalną wartość chyba 0,01 cm, (oczywiście kontrolki poniżej wyrównaj do tej małej wielkości) wtedy pusta się nie powiększy, a wypełniona będzie ok.
Zrobiłem tak jak sugerujesz (kontrolka ma wysokość 0, 002 mm i "Można zwiększać" - tak) i co do zasady wszystko działa. Tylko, że raport ma postać tabeli i gdy kontrolka ma zawartość i się powiększa to powiększa się cały wiersz tabeli, a nie sama kontrolka. Czy można to wyeliminować?
Ja nie rozumiem, przecież zmieniasz etykietę która ma stałą nazwę, więc zaprojektuj tak aby się mieściła.
Chyba się nie rozumiemy. Etykieta w szerokości kontrolki się mieści. Natomiast, gdy kontrolka się powiększa w pionie, bo posiada zawartość to w dół przesuwa się to co jest pod nią, a także wszystko co znajduje się na prawo i na lewo od niej na tym samym poziomie. Czyli przesuwa się cały wiersz.
To ustaw porządany rozmiar, wyłącz można powiększać, i w zdarzeniu Przy Formatowaniu sekcji szczegółów daj taki kod:
me.nazwakontrolki.visible = Not isnull(me.nazwakontrolki)
Wszystko działa fajnie, gdy raport jest pokazywany w trybie raportu. Gdy jest uruchamiany w trybie wydruku pojawia się błąd i komunikat "Nie można uruchomić makra niestandardowego w tym raporcie, co uniemożliwia renderowanie raportu."
@Miromat: nie ma szkalnej kulu, albo dasz przykład w postaci pliku accdb, albo nie będe wstanie pomóc
Już jest OK. Nie zgadzały się nazwy kontrolek.