Inserimento immagini dinamiche in Excel 2007

Anonimo
2013-05-14T13:43:39+00:00

Ciao, vorrei sapere come fare per inserire un campo immagine il cui contenuto sia variabile al variare del contenuto di una determinata cella dello stesso foglio di lavoro. Ho provato con controllo immagine ActiveX ma non riesco, come posso fare?

Grazie mille

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento
Risposta accettata dall'autore della domanda
Anonimo
2013-05-14T14:05:56+00:00

Ciao, vorrei sapere come fare per inserire un campo immagine il cui contenuto sia variabile al variare del contenuto di una determinata cella dello stesso foglio di lavoro. Ho provato con controllo immagine ActiveX ma non riesco, come posso fare?

Grazie mille

Se le immagini non sono molte, puoi partire da qui:

http://www.maurogsc.eu/esempiforum10/cambiaimmagini.zip

Se le immagini sono molte, meglio non tenerle nel foglio. Puoi partire da qui:

http://www.maurogsc.eu/esempiforum13/cambiaimmagini2.zip

La risposta è stata utile?

10+ persone hanno trovato utile questa risposta.
0 commenti Nessun commento

64 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2014-02-20T10:58:07+00:00

    Ciao Mauro,

    un passetto alla volta inizio ad entrarci...o almeno mi sembra...(le ComboBox non c'entravano nulla, scusa).

    Esiste la possibilità di definire la larghezza dell'immagine e farle ridimensionare a quella larghezza mantenendo le proporzioni? L'altezza può essere variata, in questo modo, ma fissando in cm la larghezza.

    Ti copio qui il codice che sto usando:

    Private Sub Worksheet_Change(ByVal Target As Range)

        Dim s As String

        s = ThisWorkbook.Path & ""

        With Target

            If .Address = "$A$7" Then

                If .Value <> "" Then

                    Me.Image1.Picture = _

                        LoadPicture(s & .Value & ".jpg")

                    Me.Image1.AutoSize = True

                    Me.Image1.Top = Me.Range("B25").Top

                    Me.Image1.Left = Me.Range("B25").Left

                End If

            ElseIf .Address = "$AJ$27" Then

                If .Value <> "" Then

                    Me.Image2.Picture = _

                        LoadPicture(s & .Value & ".jpg")

                    Me.Image2.AutoSize = True

                    Me.Image2.Top = Me.Range("Z25").Top

                    Me.Image2.Left = Me.Range("Z25").Left

                End If

            End If

        End With

    End Sub

    Grazie ancora,

    Alessio.

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2014-02-19T16:01:44+00:00

    Mauro buongiorno,

    quando dici Image1 e Image2 ti riferisci ai nomi dei controlli, che sono dei combo-box, giusto? Ora se io voglio dare un nome ad un nuovo controllo come faccio?

    Grazie,

    Alessio.

    PS: se mi dai un telefono ti chiamo e provi a spiegarmi a voce? Non so come fare...

    Image1 e Image2 sono controlli Immagine inseriti così:

    • Scheda: Sviluppo
    • Pulsante: Inserisci
    • E nei controlli ActiveX seleziono e disegno sul foglio il controllo

    Per modificarne il nome:

    • Controllare se si è in modalità Ptogettazione (il pulsante deve essere attivo)
    • Selezionare il controllo Image al quale si vuol modificare il nome con il tasto dx del mouse
    • Selezionare Proprietà
    • Modificare la proprietà (Name) inserendo il nuovo nome

    Non ho capito cosa abbiano a che fare le ComboBox.

    E ci mancherebbe che mi mettessi anche a rispondere al telefono per queste cose... ;-)

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2014-02-19T15:46:04+00:00

    Mauro buongiorno,

    quando dici Image1 e Image2 ti riferisci ai nomi dei controlli, che sono dei combo-box, giusto? Ora se io voglio dare un nome ad un nuovo controllo come faccio?

    Grazie,

    Alessio.

    PS: se mi dai un telefono ti chiamo e provi a spiegarmi a voce? Non so come fare...

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2014-01-16T14:13:44+00:00

    Mauro anche la tua risposta del 9 gennaio è stata molto utile. Ti chiedo un'altra cosa di ordine generale. Il modulo che hai usato è un active-x combo-box se non erro. Come hai fatto a mettere il controllo direttamente nella cella, tanto che non è selezionabile? Come faccio a modificare le proprietà?

    Volevo provare anche a mettere un altro modulo ma non riesco a capire come associare la cella, il modulo e la macro...

    Scusa lo so che sono cose di base...

    Saluti,

    Alessio.

    Come ho già scritto in una precedente risposta:

                    Me.Image1.Top = Me.Range("F10").Top

                    Me.Image1.Left = Me.Range("F10").Left

    Posiziona il controllo Image1 nell'angolo in alto a sx della cella F10 del foglio.

    Quindi se hai Image2 da posizionare in F15:

                    Me.Image2.Top = Me.Range("F15").Top

                    Me.Image3.Left = Me.Range("F15").Left

    Modifica i riferimenti a F10 e F15 con i tuoi.

    Se vuoi spostarli *a mano*:

    • Scheda Sviluppo
    • Seleziona il pulsante: Modalità progettazione
    • Sposta i tuoi controlli
    • Prima di Uscire, seleziona nuovamente il pulsante (non deve essere evidenziato)

    La risposta è stata utile?

    0 commenti Nessun commento