• 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.

plaatjes koppelen aan een excel bestand

Status
Niet open voor verdere reacties.

woodman

Gebruiker
Lid geworden
8 sep 2000
Berichten
33
ik heb een offerte bestand waarin op tabblad 1 de invoer wordt opgegeven en op tabblad 2 de artikelnummers de omschrijving en de prijs heb staan. Nu wil ik als ik op tabblad 1 de artikelnummers ingeef automatisch de omschrijving en de prijs krijgen. Dat is me met vert.zoeken gelukt.

Als extra wil ik nu achter de prijs ook een afbeelding presenteren op tabblad 1. Tabblad 1 print ik uit om aan een klant op te sturen. Echter ik krijg het niet voorelkaar om op tabblad 2 achter de prijs een cel met plaatjes van het artikel te krijgen zodat wanneer ik op tabblad 1 (het invoer scherm) het artikelnr invoer automatisch het juiste plaatje achter de omschrijving en de prijs krijg.

tabblad 1
aantal / artikelnr / omschrijving / prijs/ plaatje

tabblad 2
artikelnr / omschrijving / prijs / plaatje

Dus alleen het koppelen van het plaatje lukt niet omdat ik het plaatje niet op tabblad 2 tevoorschijn kan toveren.

Ik heb het geprobeerd met een hyperlink maar dat werkt niet goed omdat ik dan op tabblad 1 achter de prijs de hyperlink te zien krijg en daar heeft de klant niets aan, ik wil het plaatje zien.

Wie weet hoe ik dit kan oplossen ?

Thanx, Ron Woodman
 
Er zijn twee mogelijkheden, beiden maken gebruik van VBA.

Bij de eerste methode worden alle afbeeldingen in het document geplaatst, wat bij veel afbeeldingen een enorm grote file zal opleveren.

Op blad 2 worden alle afbeeldingen in een opmerking geplaatst.
  • Klik met de rechtermuistoets op een cel en kies Opmerking invoegen in het snelmenu.
  • Verwijder de eventuele tekst uit de opmerking.
  • Klik met de rechtermuistoets op de rand van de opmerking en kies Opmerking opmaken in het snelmenu.
  • Ga naar Kleuren en lijnen/Opvulling: Kleur/Opvuleffecten/Figuur
  • Selecteer de afbeelding en sluit het opmaakvenster af.
  • Versleep nu de randen van de opmerking om de grootte te bepalen.
Herhaal deze bewerking voor alle in te voegen afbeeldingen.

Om nu op blad1 deze afbeeldingen te tonen kan je een Worksheet_Change macro gebruiken die de gewenste cel kopieert vanuit Blad2.

Een tweede methode is het invoegen van de gewenste figuur op Blad1 direct met een macro.

Je kan dan op Blad2 voor elk artikel de naam en het pad vermelden waar de afbeelding staat, en dan bij een wijziging op Blad1 een macro starten om die figuur op te halen. Je kan deze macro maken via Macro opnemen en dan hierin de nodige aanpassingen aanbrengen om het pad uit de gewenste cel te halen.
 
Hoi Ingrid,

Bedankt voor je snelle en professionele antwoord.

Ik weet alleen niet hoe je jouw opmerking met worksheet change macro moet toepassen?

Is het niet mogelijk om met vert.zoeken het plaatje (net zoals prijs en omschrijving) op te roepen?

"Om nu op blad1 deze afbeeldingen te tonen kan je een Worksheet_Change macro gebruiken die de gewenste cel kopieert vanuit Blad2."

Kun je dit nog uitleggen hoe dat werkt.

Bedankt
Groet, Ron
 
Nog even een aanvulling;

ik heb in de formule deze verwijzing staan

=ALS(ISLEEG(B6);" ";(VERT.ZOEKEN(B6;'tabblad2!'A:D;4;ONWAAR)))

in de formule is B6 het invoerveld

tabblad2 kolom A is het artikelnr en kolom D staat nu het plaatje zoals je hebt aangegeven

Echter met de bovenstaande formule krijg ik het plaatje niet te zien. Misschien met de door jou gegeven oplossing wel maar ik weet niet hoe je dat moet opgeven.

Is dat uberhaupt wel mogelijk?

Groet, Ron
 
Met een werkbladformule kan je enkel de inhoud van een cel kopiëren, nooit de opmaak, dus ook geen opmerking.

i.p.v. de formule die je nu gebruikt, kan je deze formule in D6 plaatsen:

=ALS(ISLEEG(B6);"";ALS(ISFOUT(VERGELIJKEN(B6;tabblad2!A:A;0));"";VERGELIJKEN(B6;tabblad2!A:A;0)))

Dan heb je nog volgende code nodig:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Intersect(Target, [B6]) Is Nothing Then Exit Sub
  If Target.Offset(0, 3) = "" Then
    Target.Offset(0, 2).Clear
  Else
    Sheets("tabblad2").Cells(Target.Offset(0, 3), 4).Copy _
      Destination:=Target.Offset(0, 2)
  End If
End Sub
kopieer de macro naar de werkblad-code
 
werkt dit ook als ik op meerdere tabbladen verschillende artikelen heb staan ??????
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan