Code om imagebox met foto te vullen

Status
Niet open voor verdere reacties.

Martijn Kist

Gebruiker
Lid geworden
3 jan 2010
Berichten
33
Hallo VBA enthousiasten,

Ik heb een spreadsheet (*.xlsm) gemaakt met gegevens over de schilderijen die wij hebben. Met de gegevens van deze spreadsheet wil ik een userform gaan vullen. Ik weet hoe ik de textboxen moet vullen met de steeds verschillende gegevens die opgevraagd worden.

Ik weet NIET:o hoe ik een imagebox moet vullen met steeds de bij de gegevens horende foto.

De theorie achter mijn opzet is:

Het met een zoekterm (bijvoorbeeld een nummer) naar voren halen van de specifieke gegevens van 1 bepaald schilderij en deze gegevens inclusief de juiste foto op de userform plaatsen.

De lokatie van de foto's is in de verkenner van windows 1 mapje verder te vinden.

- lokatie van het excel bestand (spreadsheet): F:\Martijn Kist\Paintings\Inventory list of paintings.xlsm
- lokatie van de foto's : F:\Martijn Kist\Paintings\Photo's of paintings\*.jpg

Ik heb in de spreadsheet in de laatst gebruikte kolom de precieze lokatie van de foto's geplaatst als tekst.

Kan iemand mij helpen om in ieder geval een begin op te zetten.

Alvast bedankt.

Mvrgr,

Martijn Kist
 
Plaats je bestand met userform eens hier zodat we je gerichter kunnen helpen.
 
Beste allemaal,

Ik heb (na wat speurwerk) besloten de imagebox van de sheet af te halen en de foto direct op de sheet in een cel te laten plaatsen. Om te voorkomen dat de ingevoegde foto enorme proporties aanneemt heb ik het maximale waardes meegegeven.

Ik heb het nu al verschillende keren geprobeerd en het werkt.

Daarvoor gebruik ik de volgende code:

Code:
'Plaatst de foto van het schilderij in de imagebox op frmspecifiek
Dim Path, Sign As String
Path = "H:\Martijn Kist\Inventarisatie\Kunst\foto's\"
Sign = txtindex.Text
Image1.Picture = LoadPicture(Path & Sign & ".jpg")

'Verwijderd alle foto's van de sheet "Printpagina"
Sheets("Printpagina").Shapes.SelectAll
Selection.Delete

'Plaatst een nieuwe foto op de Sheet "Printpagina" in Cel "C4"
With Workbooks("Paintings.xlsm").Sheets("Printpagina").Range("C4").Select
With Workbooks("Paintings.xlsm").Sheets("Printpagina").Pictures.Insert(Path & Sign & ".jpg")
With .ShapeRange
.LockAspectRatio = msoTrue
.Width = 180
.Height = 180
End With
End With
End With

Bij deze is dus mijn vraagstuk opgelost.

Eventuele op of aanmerkingen zijn natuurlijk altijd welkom.

Mvrgr,

Martijn Kist
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan