crack24
Goto Top

Access Bericht öffnen mit Paramaterübergabe

Hallo,

ich habe eine Access 2003 DB von meinem Vorgänger, die ich bearbeite möchte.

Ich möchte einen Button erstellen, der mir auf Knopfdruck einen Bericht in der Vorschau anzeigt. Ich habe mal so angefangen

Private Sub Befehl26_Click()
DoCmd.OpenReport "Angebot Fax Frz", acViewPreview, , "AID= """ & Formulare!Angebot!AID & """"
End Sub

Es soll dann die ID des Angebots an den Bericht übergeben werden, damit genau dieser Datensatz angezeigt wird. Der Druckbutton ist nicht im Formular Angebot sondern in einem anderen Formular.

Ich bekomme beim Klick auf den Button immer die Fehlermeldung "Laufzeitfehler 424 - Objekt erforderlich". Irgendwas stimmt da mit der Where-Klausel nicht oder?

Gruß,
Oliver

Content-Key: 206357

Url: https://administrator.de/contentid/206357

Printed on: April 24, 2024 at 07:04 o'clock

Member: SlainteMhath
SlainteMhath May 13, 2013 at 07:26:13 (UTC)
Goto Top
Moin,

sieht eigentlich korrekt aus. Geht denn der Bericht auf, wenn du manuell den Filter direkt in den Bericht einträgst oder dem darunterliegenden Query einträgst?

lg,
Slainte
Member: crack24
crack24 May 13, 2013 at 08:00:16 (UTC)
Goto Top
Ich habe den Filter jetzt mal direkt in den Bericht eingetragen. Unter Eigenschaften-Filter: [AID]=[Formulare]![Angebot]![AID]

Wenn ich dann auf den Button klicke, fragt er noch einen Wert für ein Feld ab und dann sieht es so aus als ob der Bericht auf geht und direkt wieder zu geht. Das kann ich mir irgendwie nicht erklären.
Member: SlainteMhath
SlainteMhath May 13, 2013 at 08:04:05 (UTC)
Goto Top
...fragt er noch einen Wert für ein Feld ab...
Das ist wohl das Problem. Evtl. Tippfehler? Oder ein Feld aus einem geshclossenen Formular?

Hast Du ActiveX Steuerelemente auf dem Report? Barcodes o.ä.? Evtl. wird hier eines nicht mir einem Wert gefüllt.
Member: crack24
crack24 May 13, 2013 at 08:21:49 (UTC)
Goto Top
Ich habe das Feld was noch abgefragt wurde gelöscht. Hat sich nichts geändert.

ActiveX oder Barcodes habe ich keine drauf. Der Bericht wurde vorher per Makro geöffnet, damit klappt auch alles. Aber weil Makros nicht mag wollte ich das Öffnen über VBA machen.

Im deutschen Access muß ich noch [Formulare]![Angebot]![AID] schreiben und nicht [Forms]![Angebot]![AID]? Oder kann man beides? Macht allerdings auch keinen Unterschied wenn ich das ändere.
Member: crack24
crack24 May 13, 2013 at 11:59:54 (UTC)
Goto Top
Jetzt hab ich es. Hochkomma war falsch, weil der Datentyp AutoWert ist und nicht Text.

So gehts jetzt
Private Sub Befehl26_Click()
DoCmd.OpenReport "Angebot Fax Frz", acViewPreview, , "[AID]= " & Nz(Forms!Angebot.AID, 0)
End Sub