Come inserire unimmagine in una cella utilizzando VBA in Excel

Puoi facilmente inserire immagini in fogli di calcolo Excel e modificarle con codice macro. Ecco come inserire un'immagine in una cella utilizzando VBA in Excel .

Come inserire un'immagine in una cella utilizzando VBA in Excel

Visual Basic for Applications, abbreviato in VBA, è una forma di Visual Basic 6 integrata nei programmi di Microsoft Office. Attraverso la codifica, VBA consente di automatizzare le attività nelle applicazioni di Office, incluso Excel. In alcuni casi, puoi persino aggiungere nuove funzionalità a Excel utilizzando VBA.

Anche se è necessario lavorare con il codice per utilizzare VBA, ciò non significa che VBA sia pieno di lettere e numeri. Con VBA in Excel puoi creare una macro che ti consente di inserire un'immagine in una cella o in un intervallo di celle. Ecco cosa devi sapere sull'inserimento di immagini nelle celle in Excel utilizzando VBA.

Come inserire immagini nelle celle utilizzando VBA in Excel

Per creare una macro che inserisce un'immagine in una cella di Excel utilizzando VBA, non è necessaria alcuna conoscenza avanzata di Visual Basic. Tutto quello che devi fare è attivare gli strumenti per sviluppatori, creare una macro e incollare il codice appropriato. Naturalmente puoi anche inserire immagini in Excel senza utilizzare VBA. Tuttavia, in questo articolo ci concentreremo su VBA.

1. Attiva gli strumenti per sviluppatori

Per utilizzare VBA in Excel, è necessario abilitare gli strumenti per sviluppatori. Questa azione abiliterà la scheda Sviluppatore nella barra multifunzione, che è disabilitata per impostazione predefinita.

  1. Apri Excel .
  2. Vai al menu File .
  3. Fai clic su Opzioni nella parte inferiore dello schermo. Verrà visualizzata la finestra Opzioni di Excel .
  4. In Opzioni di Excel, vai alla scheda Personalizza barra multifunzione .
  5. Nelle schede principali , seleziona Sviluppatore .

Come inserire un'immagine in una cella utilizzando VBA in Excel

Ora gli strumenti per sviluppatori, incluso l'accesso VBA, sono abilitati. Non è necessario farlo ogni volta che desideri utilizzare VBA in Excel. Gli strumenti per sviluppatori saranno sempre abilitati finché non li disabiliti.

2. Crea macro e inserisci il codice

  1. In Excel, vai alla scheda Sviluppatore .
  2. Nella sezione Codice, seleziona Macro .
  3. Nella nuova finestra, inserisci il nome della tua macro in Nome macro . L'articolo utilizzerà insertPhotoMacro .
  4. Fare clic su Crea .

Come inserire un'immagine in una cella utilizzando VBA in Excel

Dopo aver fatto clic su Crea, la finestra VBA si aprirà e visualizzerà il codice per la tua macro. Attualmente il codice sarà composto da 2 righe: una Sub per avviare la macro e una End Sub per terminarla.

Come inserire un'immagine in una cella utilizzando VBA in Excel

Aggiungi un piccolo codice a questa macro. Aggiungi la seguente riga di codice tra le due righe:

Dim photoNameAndPath As Variant
Dim photo As Picture
photoNameAndPath = Application.GetOpenFilename(Title:="Select Photo to Insert")
If photoNameAndPath = False Then Exit Sub
Set photo = ActiveSheet.Pictures.Insert(photoNameAndPath)
With photo
.Left = ActiveSheet.Range("A1").Left
.Top = ActiveSheet.Range("A1").Top
.Width = ActiveSheet.Range("A1").Width
.Height = ActiveSheet.Range("A1").Height
.Placement = 1
End With

Il codice finale sarà simile a questo:

Come inserire un'immagine in una cella utilizzando VBA in Excel

Non devi preoccuparti di salvare questo processo. Tutte le modifiche apportate in VBA vengono salvate immediatamente.

Ora è il momento di vedere il codice in azione:

  1. Chiudi la finestra VBA.
  2. Vai alla scheda Sviluppatore in Excel.
  3. Seleziona Macro dalla sezione Codice.
  4. Evidenzia la macro che hai appena creato.
  5. Fare clic su Esegui .

Ora si aprirà un messaggio che ti chiederà di individuare il file immagine che desideri inserire. Seleziona la foto, quindi fai clic su Apri. Ora vedrai l'immagine nella cella A1.

Nota, Excel ridurrà l'immagine in modo che si adatti alla cella A1. Puoi cambiarlo e modificare il codice per inserire immagini in altre celle, anche in un intervallo di celle. Nella sezione successiva, separeremo il codice e spiegheremo i parametri.

3. Codice diviso

Affinché il codice VBA funzioni nel modo desiderato, è necessario comprenderlo. Facendo ciò, puoi modificare il codice per inserire immagini in qualsiasi cella di qualsiasi dimensione.

Sub insertPhotoMacro()
Dim photoNameAndPath As Variant
Dim photo As Picture
photoNameAndPath = Application.GetOpenFilename(Title:="Select Photo to Insert")
If photoNameAndPath = False Then Exit Sub
Set photo = ActiveSheet.Pictures.Insert(photoNameAndPath)
With photo
.Left = ActiveSheet.Range("A1").Left
.Top = ActiveSheet.Range("A1").Top
.Width = ActiveSheet.Range("A1").Width
.Height = ActiveSheet.Range("A1").Height
.Placement = 1
End With
End Sub

All'inizio del codice, l'istruzione Dim viene utilizzata per determinare il tipo di variabile. Abbiamo due tipi di variabili: photoNameAndPath e photo . Prima la variabile e poi l'immagine.

Da lì, viene eseguita la variabile photoNameAndPath e verrà aperta un'applicazione per ottenere la posizione del file foto. Questa operazione viene eseguita tramite Application.GetOpenFileName . Il parametro Titolo è facoltativo. Il contenuto al suo interno viene visualizzato come nome della finestra.

Utilizzando If photoNameAndPath = False Then Exit Sub , se viene fornito un indirizzo non valido o vuoto, il processo terminerà. Tuttavia, se viene fornito un file adatto, Set photo = ActiveSheet.Pictures.Insert(photoNameAndPath) indica che l'immagine deve essere impostata come variabile come definito originariamente. Verrà inserito nel foglio di lavoro attivo.

Infine, utilizza Con foto e le 5 righe successive per determinare la posizione della foto. .Left e .Top si riferiscono alla posizione iniziale, mentre .Width e .Height si riferiscono alla posizione finale. Se intendi inserire immagini in un'altra cella o in un intervallo, queste sono le righe che dovresti modificare.

.Posizionamento indica che l'immagine deve essere ridimensionata per adattarsi alla cella o inserita a mano libera. Impostandolo su 1 lo ridimensionerà in base alla cella.

Infine, il codice precedente utilizza End With , quindi End Sub per chiudere la macro. Ora puoi modificare le variabili photoNameAndPath e photo con qualsiasi altro nome tu voglia. Ricorda solo di mantenere i nomi coerenti in tutto il codice.

Sopra è come utilizzare VBA per inserire immagini nelle celle in Excel . Spero che l'articolo ti sia utile.

Lascia un commento

Ubuntu Server Booting into Emergency Mode: A Step-by-Step Rescue Guide

Ubuntu Server Booting into Emergency Mode: A Step-by-Step Rescue Guide

Diagnose Ubuntu Server emergency mode safely. Read boot logs, check root and fstab mounts, repair a failed unit, handle filesystem errors, and verify a clean reboot.

Come configurare una VPN WireGuard Point-to-Site su Debian 12

Come configurare una VPN WireGuard Point-to-Site su Debian 12

Configura un server VPN WireGuard su Debian 12 per un client remoto. Configura le chiavi, l'inoltro IPv4, il NAT con nftables, l'accesso tramite firewall e i controlli di connessione.

Guida dettagliata alla protezione di Debian 12 per la conformità CIS

Guida dettagliata alla protezione di Debian 12 per la conformità CIS

Proteggi una workstation Debian 12 con un flusso di lavoro CIS Benchmark accurato: seleziona il profilo corretto, applica le patch in modo sicuro, verifica i servizi e gli accessi, configura nftables e documenta le prove.

Debian 12 on a Low-RAM VPS: How to Reduce MySQL OOM Crashes

Debian 12 on a Low-RAM VPS: How to Reduce MySQL OOM Crashes

Diagnose MySQL OOM kills on Debian 12, check VPS memory limits, configure swap, and tune database memory and concurrency without promising a universal fix.

Come creare un desktop Debian come sistema immutabile basato su OSTree

Come creare un desktop Debian come sistema immutabile basato su OSTree

Scopri come creare e testare un desktop OSTree derivato da Debian in una macchina virtuale, incluse la preparazione dell'albero di sistema, l'integrazione di avvio, i controlli di distribuzione e il rollback.

How to Mount a Remote SSHFS Directory Automatically at Boot in Debian

How to Mount a Remote SSHFS Directory Automatically at Boot in Debian

Configure an SSHFS boot mount in Debian with SSH keys, fstab, and systemd automount. Includes reboot checks, permissions, timeouts, and troubleshooting.

Manutenzione casa a Roma a ottobre 2026: checklist per pioggia, umidità e riscaldamento

Manutenzione casa a Roma a ottobre 2026: checklist per pioggia, umidità e riscaldamento

Checklist di manutenzione casa a Roma e nel Lazio per ottobre 2026: grondaie, infissi, muffa e riscaldamento, con consigli sicuri e responsabilità di inquilini e proprietari.

Cosa piantare a Roma e nel Lazio a ottobre 2026: orto, aromatiche e fiori settimana per settimana

Cosa piantare a Roma e nel Lazio a ottobre 2026: orto, aromatiche e fiori settimana per settimana

Guida pratica per ottobre 2026 nel Lazio: semine dirette, trapianti, aromatiche e fiori, con indicazioni su caldo, piogge e rischio di gelate.

Le tendenze del podcasting da conoscere nel 2026: una guida per principianti.

Le tendenze del podcasting da conoscere nel 2026: una guida per principianti.

Sei un neofita del podcasting? Scopri le tendenze del 2026 che plasmeranno video, visibilità, trascrizioni, intelligenza artificiale, analisi dei dati, monetizzazione e un piano di lancio pratico.

Masterclass sui contenuti generati dagli utenti: crea contenuti che conquistano la fiducia e stimolano l'azione.

Masterclass sui contenuti generati dagli utenti: crea contenuti che conquistano la fiducia e stimolano l'azione.

Una masterclass pratica sui contenuti generati dagli utenti (UGC) per reperire, ottenere le autorizzazioni, fornire istruzioni, pubblicare e misurare i contenuti di clienti e creatori senza comprometterne l'autenticità.