Hallo,
Ordnerstruktur:
Hauptordner
- Bilder
ich habe eine Accessdatenbank in welcher ich in einem Formular diverse Werte einlese und diese Verarbeite. Dabei soll zu jedem Nutzer ein Bild abgelegt werden. Die Bilder befinden sich im Ordner Bilder.
Um das Bild nun dort hin zu bekommen habe ich ein Feld [Anmeldenummer] festgelegt in welche ich die Bildnummer schlussendlich schreibe.
diese wird über die SetzenWert funktion aufgerufen, wenn ich ins nächste Textfeld springe (dadurch ist das Bild sichtbar)
Die SetzenWert funktion sieht wie folgt aus:
Element: [bildFahrzeugbild].[bild]
Ausdruck:[Application].[CurrentProject].[Path] & "\Bilder" & Jahr(Jetzt()) & "\" & Format([txAnmeldenummer];"00000") & ".jpg"
So funktioniert auch alles einwandfrei, wenn sich die Datenbank direkt im Hauptordner befindet.
Anschließend drücke ich auf ein Druckenmakro, welches einen Bericht öffnet, in welchem das Bild wieder aufgerufen wird und ausdruckt:
Steuerelemntinhalt: Bild
Mehr wurde hier nicht festgelegt.
Soweit funktioniert auch alles und er druckt den Bericht inkl. hinterlegtes Bild.
Dies liegt jetzt alles auf der Dropbox. ich habe aber nicht das Datenvolumen um immer die Datenbank mit der Dropbox zu synchen, daher würde ich gerne die Datenbank lokal auf einem Netzlaufwerk ablegen und von dort auf die Bilder auf der Dropbox zugreifen (Dropboxordner auch als Netzlaufwerk freigeben).
Also habe ich den Dropboxordner als Laufwerk "Z:" freigegeben
und die Datenbank, dass sie von mehreren benutzt werden kann als Laufwerk "Y:"
um nun auf die Bilder zu zu greifen muss ich natürlich auch bei SetzenWert etwas anpassen:
Element: [bildFahrzeugbild].[bild]
Ausdruck:"Z:\Bilder" & Jahr(Jetzt()) & "\" & Format([txAnmeldenummer];"00000") & ".jpg"
Sieht soweit gut aus und funktioniert auch im FOrumlar super.
Doch wenn ich jetzt auf Drucken gehe geht es nicht mehr.
Folgender Fehler erscheint:
Makroname:
BerDatenblatt : Detailbereich : onPrint: Eingebettetes Makro
Aktionsname: SetzenWert
Argumente: "[bildDruckbild].[Picture]; [Application].[CurrentProject].[Path]....
Druckmakro sieht so aus:
DoCmd.RunCommand acCmdSaveRecord 'Speichern
DoCmd.RunCommand acCmdRefresh 'Aktualisieren
DoCmd.OpenReport "berDatenblatt", acViewNormal, , "ID=" & Me!ID
und eigentlich hatte bzw. habe ich ja:
[Application].[CurrentProject].[Path] durch "Z:" ersetzt. Aber da dies wieder auf den Projektpfad zugreifen will. der aber nun leer ist, erscheint dieser Fehler.
Ich habe auch nirgends in dem BERDatenblatt gefunden woe application.... path... aufgerufen wird und weiß daher nicht wie ich dort den Pfad ändern kann, dass er auf Z: zugreift?
Jemand eine Idee? Hilfe!!!
Verzweifel hier schon seit Tagen
Danke
Peter
Hallo,
ZitatAktionsname: SetzenWert
Argumente: "[bildDruckbild].[Picture]; [Application].[CurrentProject].[Path]....
da bleibt dir wohl nichts anderes übrig, als das Makro den geänderten Vorgaben entsprechend anzupassen.
Wo genau ist das Problem, was ist deine Frage?
Hier mal mein komplettes Makro zum Drucken:
Private Sub BtnSpeichern_Drucken_Click()
On Error GoTo Error_1
DoCmd.RunCommand acCmdSaveRecord 'Speichern
DoCmd.RunCommand acCmdRefresh 'Aktualisieren
DoCmd.OpenReport "berDatenblatt", acViewNormal, , "ID=" & Me!ID
'springe nach Datenblatt Ansicht Normal Drucke aktuelle ID
DoCmd.GoToRecord , "", acNewRec 'Neuer Datensatz anlegen (Blanko)
Me.txAnmeldenummer = 99999
Me.TxVorname.SetFocus
Me.txAnmeldenummer.SetFocus
'DoCmd.Close 'Schließt aktuelles Formular
'DoCmd.Close acForm, "frmTeilnehmer_Suchen"
'DoCmd.OpenForm "frmNavigation", acNormal ', , , , acDialog
Exit_1:
Exit Sub
Error_1:
anzeige = MsgBox("Keine Daten eingegeben oder kein Bild eingefügt" & vbCrLf, vbOKOnly, "Fehler beim Drucken ")
Resume Exit_1
End Sub
Dort habe ich das von dir rot markierte nicht stehen.
Ich habe das rot markierte NUR in der aktion SetzenWert stehen. Und dieses habe ich durch den Laufwerkspfad Z: ersetzt.
Dann kommt dieser Fehler. Aber ich weiß nicht WO er passieren soll, da ich diesen Pfad sonst nirgends stehen habe.
*confused*
Hallo,
ich (wir) bin auch *confused* ...
Was hast Du nun? Ein Makro oder eine Ereignisprozedur?
Das, was Du zuletzt zeigst, ist eine Ereignisprozudur und kein Makro.
Das Makro, um das es sich vermutlich dreht, befindet sich im Bericht in dessen Detailbereichs-Ereignis "Beim Drucken" (onPrint)
ZitatMakroname:
BerDatenblatt : Detailbereich : onPrint: Eingebettetes Makro
Aktionsname: SetzenWert
Argumente: "[bildDruckbild].[Picture]; "Z:\Bilder" & Jahr(Jetzt()) & "\" & Format([txAnmeldenummer];"00000") & ".jpg"
....
Dort solltest Du den Pfad anpassen.
Hallo habe jetzt ganz lange gesucht WO das genau ist und habe es schlussendlich gefunden :D
Ich musste im Bericht unter "beim Drucken" (Da war nochmal die SetzenWertFunktion, was ich jedoch nicht mehr wusste :X) und drot ändern.
Anschließend hat alles einwandfrei funktioniert* juhU*