[ Davorenko @ 12.09.2017. 10:39 ] @
Putem VBA Koda sam napravio

import gif ili jpg slike u excel.


Private Sub Worksheet_Change(ByVal Target As Range)
Dim strFile As String

If Target.Address = "$A$1" Then
Me.Image1.Picture = LoadPicture("")
strFile = ThisWorkbook.Path & "\Proizvodi\" & Target.Value & ".gif"
If Dir(strFile) <> "" Then Me.Image1.Picture = LoadPicture(strFile): Exit Sub
strFile = ThisWorkbook.Path & "\proizvodi\" & Target.Value & ".jpg"
If Dir(strFile) <> "" Then Me.Image1.Picture = LoadPicture(strFile)

End If
End Sub

I to radi sasvim ok

Obzirom da imam više Sheetova u kojima se ista slika ponavlja linkao sam ćeliju a1

sa sheetom =PARAMETRI!B36 npr kdje će biti upisan naziv slike.

Problem nastupa kada se promjeni opis naziva slike u =PARAMETRI!B36 te se ista ne osvježi sve dok manualno ne uđem u ćeliju A1
Postoji li način da prilikom promjene u polju =PARAMETRI!B36 se automatski osvježe polja gdje se nalazi slika.

LP
[ jaskojsako @ 12.09.2017. 20:30 ] @
pozdrav
trebao si staviti primjer lakse bi bilo
ali provjeri u option-formulas-calculation options-treba da bude automatic

lp
[ Davorenko @ 21.09.2017. 13:11 ] @

Evo u prilogu konkretnog primjera,

Potrebno je na lokaciji gdje je spremljen xlsm file, napraviti folder proizvodi iz kojeg će se putem koda vući slike

Problem nastupa na sheet 1-3 kada se u sheetu parametri promjeni naziv slike (npr slika1 u slika2) tada excel automatski ne osvježava kollonu, nego je potrebno ući u svalu ćeliju ponaosob i rućno osvježiti podatke.

[ Jpeca @ 21.09.2017. 15:17 ] @
Događaj worksheet_change aktivira se kad korisnik izmeni sadržaj lista/ćelije na listu, a ne na rezultat formule, kao u tvom slučaju.

Da reaguješ na izmenu rezultat formule možeš koristiti događaj Worksheet_Calculate

U tvom slučaju čini mi se lakše
1/ Da koristiš događaj Worksheet_Activate - u tom slučaju slika će se izmeniti kad aktiviraš konkretan list. U primeru je tako urađeno. Da se ne bi ponavljao kod, procedura UpdateImage koja je ista za sve listove prebačena je u modul i poziva se iz svakog lista na Worksheet_Activate
ili
2/ Da na događaj Worksheet_Change na listu parametri (ćelija B2) pozoveš proceduru UpdateImage za sve listove

[ Davorenko @ 22.09.2017. 14:22 ] @
Shvatio sam kako ovo funkcionira primjenio sam na svoju tabelu i radi savršeno.

Imam još jedno pitanje:

Kada bih, na primjer recimo u sheetu parametri, ćelija A22 upisao root direktorij iz kojeg će se povlačiti slike npr c:\clike.

Na koji način u makro naredbi bi pozvao root direktorij naveden u polju A22, odnosno u umjesto ove linijie koda

strFile = ThisWorkbook.Path & "\Proizvodi\" & Target.Value & ".gif"

šta bi trebalo upisati da se povlače slike iz navedenog foldera

LP
[ Jpeca @ 22.09.2017. 15:30 ] @
Jednostavno zameniš ThisWorkbook.Path & "\Proizvodi\" sa tekstom iz ćelije na listu PARAMETRI:
Code:
 strFile = Sheets("PARAMETRI").Range("A22").Text & "\" & Sheets("PARAMETRI").Range("B2").Text