Afbeelding in een rapport

Status
Niet open voor verdere reacties.

frankie59

Gebruiker
Lid geworden
25 sep 2008
Berichten
154
Goedenavond,
Ik heb een access database waarmee ik mijn website vul.
Ik heb een tabel met artikelnummer, naam, prijs en een veld met een link naar een afbeelding bijvoorbeeld:https://gistron.com/img/ic.php?type=i&file=55791_1.jpg.
Deze afbeelding wordt dan gedownload en in de site gezet.

Nu wil ik graag in de betreffende tabel een knop waarmee ik een rapport maak met de tekst uit die regel en de bijbehorende afbeelding.

Ik heb geen idee hoe ik dit voor elkaar kan krijgen.

Heeft iemand een idee?

Ik hoor het graag.

Met vriendelijke groet,

Frank.
 
In een tabel kan je geen knop opnemen. Knoppen kan je alleen op formulieren plaatsen.
 
Nee, stom, klopt.
Ik heb een knop op het formulier wat een rapport kan openen.
Met deze code (gevonden op deze site, maar krijg hem niet werkend)

'If Dir(Me.FotoPad & "" & Me.FotoNaam) <> "" Then
'Me.imgAfbeelding.Picture = Me.FotoPad & "" & Me.FotoNaam
'Else
' Me.imgAfbeelding.Picture = ""
' End If
 

Bijlagen

  • Screenshot_2.png
    Screenshot_2.png
    4,5 KB · Weergaven: 15
1: Klopt je code wel? Ik zie geen extra backslash in je code, dus die moet dan in het veld(?) Fotopad zitten, anders werkt de code sowieso niet. Verder is het de vraag waar je de code aanroept, want een rapport werkt anders als een formulier. Mooier is natuurlijk een voorbeeldje van jou...
 
Wat bedoel je als je zegt dat je het niet werkend krijgt? Krijg je een foutmelding of zie je geen afbeelding?

Het is me niet helemaal duidelijk wat er in fotopad en fotonaam staat. In je oorspronkelijke vraag suggereer je dat de link zoals die op de site moet komen opslaat in de tabel. Die twee velden duiden op lokale verwijzingen.
 
Ik heb een voorbeeldje gemaakt.

Er is een tabel en daarop is een formulier gemaakt.
Op dit formulier is een knop aanwezig, die een rapport maakt en afdrukt.

In dit rapport is een veld image1 aanwezig. Dit is een link naar een afbeelding bij de dealer https://www.complies.nl/media/catal...d90933c84e38fc9fe9a225/w/6/w650rb-256-rfs.jpg.

Ik gebruik dat rapport om snel een offerte te maken.
De teksten etc. is geen probleem.
Ik had graag op dat rapport een afbeelding ( die van de link uit de tabel, image1).

Ik heb een voorbeeld bestand bijgevoegd.

Alvast bedankt voor de moeite.
 

Bijlagen

  • Voorbeeld.rar
    24 KB · Weergaven: 12
De verwarring blijft (bij mij) bestaan. In een van je posts heb je het over een FotoPad en FotoNaam. Die velden zie ik niet terug in de tabel.

Het probleem in de voorbeeld database is denk ik (ook) dat je verwijst naar een afbeelding op internet.
Ik maakte in jouw rapport een gebeurtenis "Bij opmaken" op de detailsectie van het rapport en een afbeelding-control (Plaatje):
Code:
Private Sub Details_Format(Cancel As Integer, FormatCount As Integer)
    Me.Plaatje.Picture = "D:\OneDrive\Data\Afbeeldingen\calimero.png"
End Sub

Dat werkte. Als ik in plaats van de verwijzing naar een afbeeldingsbestand op een lokale drive verwijs naar image1, wordt niets getoond.

De oplossing is denk ik, aangenomen dat post #3 de werkelijkheid weergeeft, je oorspronkelijk code te gebruiken en die op de juiste plaats (
"Bij opmaken" op de detailsectie) aan te roepen.
 
Laatst bewerkt:
Bedankt voor je bericht.

Ik heb in dit forum een vraag gevonden, die ongeveer gelijk was.
Hierop kwam onderstaande code.

De code is:

[CODE}If Dir(Me.FotoPad & "" & Me.FotoNaam) <> "" Then
Me.imgAfbeelding.Picture = Me.FotoPad & "" & Me.FotoNaam
Else
Me.imgAfbeelding.Picture = ""
End If

(tussen de "" moet een slash, maar als ik hem hier plak is hij weg)

Ja, de moeilijkheid is inderdaad dat het plaatje van internet gehaald dient te worden.
Het kan zomaar zijn dat wat ik zou willen helemaal niet mogelijk is binnen Access.
Een plaatje van de harddisk afhalen is hierbij (voor mij) onbruikbaar.

Wanneer het links of rechtsom wel zou lukken, zou ik daar erg blij mee zijn, omdat ik dan vanaf mijn access programmaatje snel offerte kan printen/mailen.
 
Laatst bewerkt:
Het kan zomaar zijn dat wat ik zou willen helemaal niet mogelijk is binnen Access.
De manier waarop je code tussen CODE tags probeert te krijgen is niet geheel foutloos :). Ik snap je procedure ook niet helemaal, want als je het plaatje nog niet hebt, hoe weet je dan hoe het heet, en waar het is te vinden? Je zult dat toch érgens moeten hebben (staan). Zelf zou ik, als het steeds maar om 1 of twee plaatjes per keer gaat, de afbeelding handmatig opslaan in een tijdelijke map, en de afbeelding(en) bij het maken van het rapport met VBA hernoemen (de naam haal je dan uit artikelnaam o.i.d.) en verplaatsen. Niet alleen is het maken van het rapport dan een fluitje van een cent (bekende locatie immers), het rapport is ook reproduceerbaar omdat je de afbeelding nu wél hebt opgeslagen. Doe je dat niet, dan moet je élke keer dat je het rapport (geldt ook voor formulier) opent, het plaatje opnieuw opzoeken en inladen. En wie garandeert jou dag alle plaatjes die je gebruikt altijd op het internet zijn terug te vinden?

wat betreft de quote die ik er uit heb gevist: ik heb een code gevonden waarmee je wellicht een plaatje van een internet pagina kan downloaden. Komt uit Excel, maar lijkt mij niet zo moeilijk om die om te bouwen.

Code:
[COLOR=#000000][FONT=UICTFontTextStyleBody]Sub downloadJPGImages()[/FONT][/COLOR][COLOR=#000000]
[/COLOR]
[COLOR=#000000][FONT=UICTFontTextStyleBody] Set oXMLHTTP = CreateObject("MSXML2.XMLHTTP.6.0")[/FONT][/COLOR]
[COLOR=#000000][FONT=UICTFontTextStyleBody] Set oBinaryStream = CreateObject("ADODB.Stream")[/FONT][/COLOR]
[COLOR=#000000][FONT=UICTFontTextStyleBody] adTypeBinary = 1[/FONT][/COLOR]
[COLOR=#000000][FONT=UICTFontTextStyleBody] oBinaryStream.Type = adTypeBinary[/FONT][/COLOR]

[COLOR=#000000][FONT=UICTFontTextStyleBody]  sPath = Me.FolderName & Me.Fotonaam[/FONT][/COLOR]
[COLOR=#000000][FONT=UICTFontTextStyleBody]  sURI = Me.URL[/FONT][/COLOR][COLOR=#000000]
[/COLOR]
[COLOR=#000000][FONT=UICTFontTextStyleBody]  On Error GoTo HTTPError[/FONT][/COLOR]
[COLOR=#000000][FONT=UICTFontTextStyleBody]  oXMLHTTP.Open "GET", sURI, False[/FONT][/COLOR]
[COLOR=#000000][FONT=UICTFontTextStyleBody]  oXMLHTTP.Send[/FONT][/COLOR]
[COLOR=#000000][FONT=UICTFontTextStyleBody]  aBytes = oXMLHTTP.responsebody[/FONT][/COLOR]
[COLOR=#000000][FONT=UICTFontTextStyleBody]  On Error GoTo 0[/FONT][/COLOR]
[COLOR=#000000]
[/COLOR]
[COLOR=#000000][FONT=UICTFontTextStyleBody]  With oBinaryStream[/FONT][/COLOR]
[COLOR=#000000][FONT=UICTFontTextStyleBody]       .Open[/FONT][/COLOR]
[COLOR=#000000][FONT=UICTFontTextStyleBody]        .Write aBytes[/FONT][/COLOR]
[COLOR=#000000][FONT=UICTFontTextStyleBody]        .SaveToFile sPath, 2[/FONT][/COLOR]
[COLOR=#000000][FONT=UICTFontTextStyleBody]        .Close[/FONT][/COLOR]
[COLOR=#000000][FONT=UICTFontTextStyleBody] End With[/FONT][/COLOR]
[COLOR=#000000]
[/COLOR]
[COLOR=#000000][FONT=UICTFontTextStyleBody] Exit Sub
[/FONT][/COLOR]
 
Hallo Octofish,

Ja het is best moeilijk.
De tabel komt van enkele dealers en in totaal zijn het 3000+ artikelen.
Deze hebben allemaal een naam, omschrijving, prijs en een link naar een artikel bij hun op de site.
Deze file wordt ingelezen door software van de website.
Deze software trekt deze afbeeldingen binnen en zo komt alles op de site.

In access heb ik een programma om er van alles aan te wijzigen etc.
Deze wijzigingen worden geëxporteerd naar CSV en ingelezen door de software van de site.

Ik maak in dit access programma ook offertes, maar nu moet ik steeds de afbeeldingen handmatig plakken van mijn site en is heel bewerkelijk.
Handmatig is dit niet te doen.

Als er een mogelijkheid zou zijn, dan zou ik daar erg blij mee zijn.

De code die je gestuurd hebt, gaat erg ver boven mijn pet.
 
Afbeelding van web

@frankie59

Staat in de url altijd .jpg achteraan of ook wel .bmp etc.


Groetjes,
 
De code die je gestuurd hebt, gaat erg ver boven mijn pet.
Misschien goed om je te realiseren dat die code een plaatje van internet binnenhaalt en opslaat in een map. Je moet er een code zoals genoemd in post #3 erachter plakken om op het rapport het aldus opgeslagen plaatje zichtbaar te krijgen.
Ik heb uit nieuwsgierigheid even wat zitten uitproberen en het werkend gekregen. Omdat ik OctaFish niet te veel voor een van zijn vele voeten wil lopen, ben ik nog wat terughoudend om een en ander te posten.
 
Laatst bewerkt:
frankie59

Probeer het hier maar even mee, zie rar bestand: Bekijk bijlage WEBFOTOinrapport.rar

Wel even de volgende regel aanpassen (2x) waar je zelf de foto's wilt neer zetten.

Code:
fileName = "D:\Afbeeldingen\WebFoto" & Format(Now, "ddmmyyyyhhmmss") & "." & ResEx(x) '*******************



Groetjes,
 
Beste Pletter,

Wat een werk heb je er aan gehad, maar het werkt als een tierelier.
Gezien de code, was ik hier never nooit uitgekomen.

Ik krijg een rapport precies zoals ik bedoelde!
Ik ga dit weekend ermee aan de slag.

Heel erg bedankt.

Ik laat je nog weten hoe het is gegaan.

Fijn weekend.
 
Kan volgens mij allemaal wat korter en overzichtelijker en zonder aanpassing (met dank aan OctaFish).
 

Bijlagen

  • VoorbeeldXPS.zip
    43,7 KB · Weergaven: 16
Dank je wel XPS 351

Ja inderdaad, dit werkt ook perfect.
Volgens mij kan ik dit zo in mijn programma invoegen.

Ik ga in het weekend aan de slag ermee.

Iedereen Octafish, XPS351 en Pletter, heel erg bedankt.

Ik laat het weten,

Fijn weekend.
 
Beste mensen,

Ik heb alles in kunnen voegen en het werkt gewoon perfect.
Heel erg bedankt allemaal.

Fijne feestdagen.

Met vriendelijke groet,

Frank.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan