Visual Basic for Application, VBA in breve, è una forma di Visual Basic 6 integrata nei programmi di Microsoft Office. Attraverso la codifica, VBA consente di automatizzare le attività nei programmi di Office, incluso Excel. In alcuni casi, puoi persino aggiungere nuove funzionalità a Excel utilizzando VBA.
Sebbene sia necessario lavorare con il codice per utilizzare VBA, ciò non significa che VBA sia tutto lettere e numeri. Con VBA in Excel, puoi creare una macro che ti consente di inserire immagini in una cella o in un intervallo di celle. Continua a leggere per scoprire tutto su di esso!
Come inserire un'immagine in una cella utilizzando VBA in Excel
Per creare una macro per inserire immagini nelle celle di Excel utilizzando VBA, in realtà non è necessaria alcuna conoscenza avanzata di Visual Basic. Tutto quello che devi fare è abilitare gli strumenti per sviluppatori, creare la macro e incollare il codice giusto.
Tuttavia, se sei interessato a imparare VBA e scrivere il tuo codice un giorno, abbiamo analizzato il codice VBA nella terza sezione. Certo, puoi anche
inserire immagini in Excel senza utilizzare VBA. Ma questo articolo riguarda come farlo tramite VBA. Andiamo al sodo!Per utilizzare VBA in Excel, è necessario abilitare gli strumenti per sviluppatori in Excel. Ciò abiliterà la scheda Sviluppatore nella barra multifunzione, che è disabilitata per impostazione predefinita.
- Apri Excel.
- Vai al File menù.
- Clicca su Opzioni nella parte inferiore dello schermo. Questo aprirà la finestra Opzioni di Excel.
- In Opzioni di Excel, vai a Personalizza il nastro scheda.
- Sotto Schede principali, controllo Sviluppatore.
Ora gli strumenti per sviluppatori, incluso l'accesso a VBA, sono abilitati per te. Non è necessario farlo ogni volta che si desidera utilizzare VBA in Excel. Gli strumenti per sviluppatori rimarranno abilitati fino a quando non li disabiliti.
2. Creazione della Macro e Inserimento del Codice
Ora è il momento di passare alla creazione della macro. In alternativa, potresti anche creare un pulsante utilizzando VBA per questo compito, ma continueremo con le macro.
- In Excel, vai al file Sviluppatore scheda.
- Nel Codice sezione, selezionare Macro.
- Nella nuova finestra, inserisci un nome per la tua macro sotto Nome macro. Useremo insertFotoMacro.
- Clic Creare.
Dopo aver fatto clic su Crea, la finestra VBA si aprirà e visualizzerà il codice per la tua macro. In questo momento, il codice sarà composto da due righe: A Sub per avviare la macro e an Fine Sub per farla finita.
Aggiungiamo del codice a questa macro. Aggiungi il seguente codice tra le due righe:
Dim photoNameAndPath COME Variante
Foto oscura COME Immagine
photoNameAndPath = Applicazione. GetOpenFilename (Titolo:="Selezionare Foto AInserire")
Se fotoNomeAndPath = Falso Poi Uscita Sub
Impostato foto = Foglio attivo. Immagini. Inserisci (photoNameAndPath)
Con foto
.Sinistra = ActiveSheet. Allineare("A1").Sinistra
.Top = Foglio attivo. Allineare("A1").Superiore
.Width = Foglio attivo. Allineare("A1").Larghezza
.Height = ActiveSheet. Allineare("A1").Altezza
.Posizionamento = 1
FINECon
Il tuo codice finale dovrebbe essere qualcosa di simile al seguente:
Non devi preoccuparti di salvare i tuoi progressi. Ogni modifica apportata in VBA viene immediatamente salvata.
Ora è il momento di vedere il codice al lavoro.
- Chiudi la finestra VBA.
- Vai al Sviluppatore scheda in Excel.
- Selezionare Macro dal Codice sezione.
- Evidenziare la macro appena creata.
- Clic Correre.
Ora si aprirà un prompt che ti chiederà di individuare il file immagine che desideri inserire. Seleziona la tua immagine e poi clicca Aprire. Ora dovresti vedere la tua foto nella cella A1!
Si noti che l'immagine inserita viene ridotta per adattarsi alla cella A1. Puoi modificarlo e anche cambiare il codice per inserire l'immagine in altre celle o anche in un intervallo di celle. Nella sezione successiva, analizzeremo il codice e spiegheremo i parametri al lavoro.
3. Abbattere il codice
Per fare in modo che questo codice VBA funzioni per te nel modo desiderato, devi capirlo. Una volta fatto, puoi modificare il codice per inserire foto in qualsiasi cella di qualsiasi dimensione. Esamineremo il codice poco alla volta per renderlo più facile da capire.
Sub insertFotoMacro()
Dim photoNameAndPath COME Variante
Foto oscura COME Immagine
photoNameAndPath = Applicazione. GetOpenFilename (Titolo:="Selezionare Foto AInserire")
Se fotoNomeAndPath = Falso Poi Uscita Sub
Impostato foto = Foglio attivo. Immagini. Inserisci (photoNameAndPath)
Con foto
.Sinistra = ActiveSheet. Allineare("A1").Sinistra
.Top = Foglio attivo. Allineare("A1").Superiore
.Width = Foglio attivo. Allineare("A1").Larghezza
.Height = ActiveSheet. Allineare("A1").Altezza
.Posizionamento = 1
FINECon
FINE Sub
Una volta avviato il codice, usiamo il file Dim istruzione per determinare il tipo di variabile. Abbiamo due variabili qui: photoNameAndPath E foto si. Abbiamo determinato il primo come a Variante e quest'ultimo come a Foto.
Da lì, la variabile photoNameAndPath viene eseguita e apre un'applicazione per ottenere la posizione del file immagine. Questo è fatto attraverso Applicazione. OttieniNomeFileAperto. IL Titolo parametro è facoltativo e il contenuto in esso viene visualizzato come nome della finestra.
Usando Se photoNameAndPath = False Then Exit Sub, specifichiamo che se viene fornito un indirizzo non valido o vuoto, il processo deve essere terminato. Tuttavia, se viene fornito un file appropriato, allora Imposta foto = ActiveSheet. Immagini. Inserisci (photoNameAndPath) indica che l'immagine deve essere impostata come variabile foto definita in precedenza e deve essere inserita nel foglio di calcolo attivo.
Finalmente usando Con foto e le cinque righe che la seguono, elaboriamo il posizionamento dell'immagine. .Sinistra E .Superiore indicare le località di partenza, mentre .Larghezza E .Altezza indicare le posizioni finali. Se stai cercando di inserire l'immagine in altre celle o in un intervallo, queste sono le linee che dovresti modificare.
.Posizionamento indica se l'immagine deve essere dimensionata con le celle o inserita in forma libera. Impostandolo su 1 lo ridimensionerà con le celle.
In definitiva, usiamo Termina con poi Fine Sub per chiudere la macro. Si noti che è possibile modificare il file photoNameAndPath E foto variabili con qualunque altro nome ti piaccia. Ricorda solo di mantenere i nomi coerenti in tutto il codice.
Ottieni di più in Excel con VBA
Excel è davvero uno strumento meraviglioso per organizzare e analizzare i dati, ma ciò non significa che Excel sia incapace quando si tratta di grafica. Sebbene le foto e le bitmap non siano l'abito più forte di Excel, Excel è ancora perfettamente in grado di gestirle.
Sebbene tu possa inserire immagini in Excel utilizzando l'interfaccia come faresti in altre app di Office, puoi farlo anche utilizzando VBA. Con VBA, puoi automatizzare questa attività e persino accoppiarla con altre attività da eseguire contemporaneamente. Le possibilità con VBA in Excel sono infinite.