• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

foto invoegen

Status
Niet open voor verdere reacties.

mimi68

Gebruiker
Lid geworden
11 jun 2008
Berichten
68
ik probeer een foto offerte te maken
nu moet ik in elke cel een foto plaatsen
de foto's staan ergens op de harde schijf en moeten worden ingevoegd
de foto's komen wel in dezelfde kolom onderelkaar
17.57 is de kolombreedte en 75 is de celhoogte
als ik ze een voor een binnen haal moet ik deze ook nog verkleinen
is er een mogelijkheid om dit klusje te versnellen
alvast mijn dank
mimi
 
mimi, probeer volgende eens. Het enige dat nog aangepast moet worden is de plaats waar de foto's moeten komen.
Heb je nog vragen dan horen we het wel.
Code:
Sub Insert_Pict()
   'Courtesy of Dave Hawley of Ozgrid.com
    Dim Pict() As Variant
    Dim ImgFileFormat As String
    Dim lRow As Long, lLoop As Long
    Dim lTop As Long
    Dim sShape As Shape
     
    ActiveSheet.Protect False, False, False, False, False
    ImgFileFormat = "Image Files jpg (*.jpg),*.jpg,(*.bmp),others, tif (*.tif),*.tif"
     
GetPict:
    Pict = Application.GetOpenFilename(ImgFileFormat, MultiSelect:=True)
     'Note you can load in nearly any file format
    If Not IsArray(Pict) Then
        Debug.Print "No files selected."
        Exit Sub
    End If
     
    lRow = 10
    For lLoop = LBound(Pict) To UBound(Pict)
         
        lTop = Cells(lRow, "F").Top
        Set sShape = ActiveSheet.Shapes.AddPicture(Pict(lLoop), msoFalse, msoCTrue, Cells(1, 7).Left, lTop, 96, 75)
                            'expression.AddPicture(Filename, LinkToFile, SaveWithDocument, Left, Top, Width, Height)
       lRow = lRow + 1
Next lLoop
End Sub

Mvg

Rudi
 
Laatst bewerkt:
hoe bedoel je waar de foto moeten komen, neem aan dat je de cel bedoeld
als dit het geval is waar moet ik dit dan aanpassen?
heb even een voorbeeldje toegevoegd
gr mimi
 

Bijlagen

Zet alle foto's in 1 map. Start de macro en selecteer in de map alle foto's in één keer. Klik op openen en alle foto's worden geïmporteerd.

Mvg

Rudi
 

Bijlagen

is er dan een link die a.d.h.v. het artikelnummer de foto, opgeslagen onder de naam het artikelnummer, op de juiste plaats zet
ps kan je bijlage niet openen kan me niet aanmelden????
 
Laatst bewerkt:
goedemorgen Rudi, het werkt perfect dank je wel
is er ook nog een mogelijkheid dat de foto's in volgorde van selecteren worden ingevoegd ipv op nummer van afbeelding
het komt nu binnen op volgorde van foto 1,2,3,
het zou fijn zijn als het binnenkomt op bijv 4,6,2,1,8,3,
en in het midden van de cel
heb wel de foto iets aangepast naar 80-70 ipv 96-75
 
Hoe ga je aan Excel vertellen welke foto waar moet komen? Hardgecodeerd in de VBA op basis van de filename of zo?
 
wigi, ik ben nog niet zo thuis in vba maar is er een mogelijkheid dat de volgorde van selecteren wordt aangehouden of dat de cel F17kijkt naar cel A17 (=artikelnr11001001)
en hier foto 11001001 inzet met bij. een vertikaal zoekfunctie????
gr mimi :confused:
 
wigi, ik ben nog niet zo thuis in vba maar is er een mogelijkheid dat de volgorde van selecteren wordt aangehouden of dat de cel F17kijkt naar cel A17 (=artikelnr11001001)
en hier foto 11001001 inzet met bij. een vertikaal zoekfunctie????
gr mimi :confused:

Hoe zien de bestandsnamen van de foto's eruit en wat staat er precies in kolommen F en A?
 
Wigi,
de foto heeft hetzelfde nummer als het artikelnummer en is een jepg
cel a17 = artikelnummer 11001001 en in f17 moet dan de foto komen 11001001.jepg
het vba van Rubi werkt wel komt alleen op volgorde binnen
gr mimi
 
Mimi, sorry voor de late reactie MAAR heb een workaround gevonden.(denk ik):D
Pas je bestand aan zoals in bijlage. In kolom A de artikelnummers en in kolom G het pad en de extensie aanpassen in de eerste cel en met de vulgreep naar beneden trekken. Klik daarna op de knop.
Suc6

Edit: vergeet ook het bereik in myarray niet aan te passen
Mvg

Rudi
 

Bijlagen

Laatst bewerkt:
rudi, was wel een latertje vannacht MAAR het werkt wel erg mooi hoor.
is het dan ook nog mogelijk dat de foto in het midden geplaatst wordt en de foto iets te verkleinen
wat een piet lut he maar dan ziet het er wel erg netjes uit
 
Laatst bewerkt:
Mimi, ik werk s'nachts dus dat is geen probleem.
On topic: wat betreft de grootte en de plaatsing is het eigenlijk een kwestie van proberen tot de juiste plek gevonden is.
Pak een oefenbestandje met enkele foto's en experimenteren maar.
De plaatsing naar links wijzig je door bij de onderstaande regel het positieve getal te vergroten of te verkleinen tot de gewenste plaatsing
Code:
Set sShape = ActiveSheet.Shapes.AddPicture(myarray(lLoop), msoFalse, msoCTrue, Cells(1, 6).Left [COLOR="Red"]+ 9[/COLOR], lTop, 75, 60)
De verplaatsing naar onder wijzig je door in onderstaande regel het positieve getal te vergroten of verkleinen tot de gewenste plaatsing
Code:
lTop = Cells(lRow, "F").Top [COLOR="red"]+ 8[/COLOR]
De grootte van de foto heb je zelf al eens aangepast dus dat is geen probleem. Begin dus met het formaat van je foto op punt te stellen en dan is het maar proberen tot de foto's juist geplaatst zijn.

Mvg

Rudi
 
rudi,
hartelijk dank voor je fantastische hulp
het is gelukt om de foto in het midden te krijgen
beide +9 en 75-60
zag het niet gemaakt om 211 fotootjes met de hand intevoegen en te verkleinen:thumb::thumb:
 
Graag gedaan en succes verder

Mvg

Rudi
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan