[ 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
[ Davorenko @ 14.09.2021. 12:22 ] @
primjenio sam primjer na svoju tablicu za registratore,
Međutim kada sam postavio kod da se učitava druga slika na mjesto dva nije uspio učitati sliku, (porebno je da se svaka učtava posebno)
Možete li neko reću u čemu griješim
[ Davorenko @ 15.09.2021. 10:50 ] @
Rješeno,

Bio je jedan End Sub viška

LP