035. Archivio con Fotografie degli articoli

Download PDF

Damanda:

devo associare la foto in formato jpg di una regione italiana quando nella descrizione di un vino compare il nome di quella regione.
naturalmente ci sono 20 regioni + alcune nazioni x i vini esteri e le immagini devono comparire iu una cella con il risultato di un cerca verticale

Risposta:

Abbiamo ricevuto diverse richieste riguardanti questo argomento.
Vediamo una possibile soluzione.

PASSO 1: inserire nel foglio un oggetto “Immagine”

Per farlo bisogna cliccare sul tab “Sviluppo” (Developer) , menù “Inserisci”, tra gli oggetti “Active X” selezionare l’icona “Immagine”, trascianarla nel foglio e dimensionarla a piacere.

Dopo essersi assicurati di essere in modalità Design, clicchiamo con il tasto destro sull’oggetto Immagine e quindi su proprietà.
Nella proprietà “Nome” appare il nome di default assegnato da Excel all’immagine,
se volete potete modificarlo ma vi consiglio in ogni caso di farlo in questo modo “Immagine_NomeAvostraScelta”.
Vi sarà più semplice capire nel codice che tipo di oggetto state trattando.
Impostate la propietà “PictureSizeMode” come “fmPictureSizeModeZoom”. In questo modo Excel provvederà a dimensionare automaticamente la dimensione della foto in base alla grandezza dell’oggetto Immagine.

PASSO2: creare una cartella dove depositare le fotografie

Nella cartella che contiene il file, ho creato una sottocartella chiamata “Fotografie”
e dentro di essa ho salvato le fotografie da caricare in formato “.jpg”.
Per impostare un percorso diverso, bisogna modificare l’istruzione

PercorsoCartellaFotografie = ThisWorkbook.Path & "\Fotografie"

PASSO 3: determinare quando far apparire la fotografia

Nel file d’esempio ho utilizzato l’evento “SelectionChange” del foglio “ARCHIVIO”
che permette di eseguire una macro ogni qualvolta viene selezionata una cella del foglio.

Il codice per caricare la fotografia dell’oggetto immagine è il seguente:

Sheet1.Image1.Picture = LoadPicture(PercorsoCartellaFotografie & "\" & Sheet1.Cells(ActiveCell.Row, 2) & ".jpg")

Selezionado il vino “Negramaro” la macro assegna:
– alla variabile “ActiveCell.Row” il valore 2,il numero della riga selezionata
– alla variabile “Sheet1.Cells(ActiveCell.Row, 2)” il valore della riga 2 colonna 2, “PUGLIA”

Posto di aver salvato la fotografia chiamata “PUGLIA.jpg”, la macro la caricherà nell’oggetto Immagine.

Nel file d’esempio ho creato anche un foglio “FATTURA” con il codice precedente lanciato dall’evento “Calculate” quando si seleziona un vino dal menù a tendina che ho inserito nella cella B5.

Quando la si seleziona, la funzione Cerca.Vert (VlookUp) dentro la cella B8 restiuisce la regione d’appartenza che è presa per alimentare il valore del percorso della fotografia.

A voi il file:
APRI

Riccardo Vincenti

The following two tabs change content below.