Sommario
In questo articolo, vi mostrerò come è possibile chiamare un oggetto Sub da un altro Sub o Funzione in VBA in Excel Imparerete a chiamare un Sub con o senza argomenti, così come entrambi Pubblico e Privato Sottotitoli .
Come chiamare una sub in VBA in Excel (visualizzazione rapida)
Nota: Qui un Sub chiamato Sub2 chiama un Sub chiamato Sub1 .
Scarica il quaderno di esercizi
Chiamata VBA Sub.xlsm
Scaricate questo libro di esercizi per esercitarvi nel compito mentre leggete questo articolo.
4 modi per richiamare una sub in VBA in Excel
Qui abbiamo un Sub in VBA chiamato Sub1 .
Se si esegue Sub1 , si otterrà il messaggio "Sub1 è in esecuzione".
Oggi il nostro obiettivo è quello di capire come possiamo chiamare questo Sub da un altro Sub o Funzione in tutti i modi possibili.
1. Chiamare una sub senza argomenti da un'altra sub in VBA in Excel
Per prima cosa, chiameremo un oggetto Sub senza alcun argomento da parte di un altro Sub in VBA .
Qui, Sub1 è il Sub senza argomenti.
Ora chiameremo il file Sub Sub1 da un altro Sub chiamato Sub2 .
Per chiamare il Sub Sub1 da un altro Sub è necessario utilizzare la riga di codice:
Sub1
Oppure
Chiamata Sub1
Ora, se si eseguire Sub2 , Sub1 verrà richiamato e il messaggio "Sub1 è in esecuzione". verrà visualizzato.
2. Chiamare una sub con gli argomenti di un'altra sub in VBA in Excel
Ora chiameremo un Sub con argomenti provenienti da un altro Sub in VBA .
Qui abbiamo cambiato il parametro Sub Sub1 in modo che contenga un argomento chiamato Valore_ingresso e quando viene eseguito, visualizza l'argomento.
Per chiamare questo Sub da un altro Sub ( Sub2 ), dobbiamo utilizzare la riga di codice:
Sub1(Valore_ingresso)
Oppure
Chiamare Sub1(Valore_ingresso)
Qui abbiamo utilizzato:
Chiamare Sub1(10)
Ora, quando eseguiamo Sub2 , Sub1 sarà richiamato con l'input 10 , e 10 sarà visualizzato in una schermata Casella di messaggio .
Letture simili:
- Come restituire un valore in una funzione VBA (valori sia di array che non di array)
- Utilizzare la funzione LCase in VBA in Excel (con 4 esempi)
- Come utilizzare la funzione VBA SPLIT in Excel (5 esempi)
- Utilizzare la funzione TRIM in VBA in Excel (Definizione + Codice VBA)
3. Chiamare una sub con/senza argomenti da una funzione definita dall'utente in VBA in Excel
Si può anche chiamare un Sub da un Funzione definita dall'utente in VBA .
⧭ Sub senza argomenti
Chiamiamo un Sub senza argomenti.
Anche in questo caso abbiamo cambiato il parametro Sub Sub1 a quello senza argomenti.
Ora creeremo un oggetto Funzione chiamato Funzione1 e chiamare Sub1 da quella funzione.
Per chiamare un Sub da una funzione, la riga di codice da utilizzare è la stessa:
Sub1
Oppure
Chiamata Sub1
Ora, se si inserisce Funzione1 in qualsiasi cella del foglio di lavoro, Sub1 verrà richiamato e verrà creato un file Casella di messaggio visualizzerà "Sub1 è in esecuzione". .
⧭ Sub con argomenti
Si può anche chiamare un Sub con gli argomenti di una classe Funzione definita dall'utente in VBA in Excel .
Qui abbiamo cambiato Sub1 a quello con argomenti di nuovo.
Ora abbiamo chiamato Sub1 da Funzione1 dalla riga di codice:
Chiamare Sub1(10)
Ora se inseriamo Funzione1 in una qualsiasi cella del nostro foglio di lavoro, mostrerà 10 in un Casella di messaggio .
4. Chiamare una sub privata da un'altra sub o funzione in VBA in Excel
Finora abbiamo chiamato un Sub pubblico da un altro Sub o Funzione Questa volta, mostreremo come si può chiamare un oggetto Sub privato da un altro Sub o Funzione in VBA .
⧭ Chiamata da un sub:
È possibile richiamare solo un elemento Sub privato da un altro Sub se si trovano nello stesso modulo del vostro VBA finestra.
Qui abbiamo cambiato Sub1 a un Sub privato aggiungendo il termine Privato nella prima riga e lo ha richiamato da Sub2 che si trova nello stesso modulo.
Ora se si esegue Sub2 , si otterrà un Casella di messaggio visualizzazione 10 .
⧭ Chiamata da una funzione:
Lo stesso vale per le funzioni. Per chiamare una funzione Sub privato da un Funzione in VBA , il Sub e il Funzione devono trovarsi nello stesso modulo.
Qui abbiamo inserito l'elemento Sub privato Sub1 e il Funzione Funzione1 nello stesso modulo.
Ora se inseriamo Funzione1 in qualsiasi cella del nostro foglio di lavoro, un Casella di messaggio visualizzerà 10 .
Sintesi
Ecco il riassunto di tutti i punti discussi oggi:
- È possibile chiamare un Sub da un altro Sub o Funzione definita dall'utente in VBA utilizzando il termine "Chiamare" con il nome del file Sub o semplicemente mettendo il nome del file Sub .
- Se il Sub da richiamare contiene un elemento argomento è necessario chiamare l'opzione Sub con qualsiasi valore di tale argomento .
- Se il Sub da richiamare è dichiarato come un elemento Privato uno, è necessario chiamarlo da un altro Sub o Funzione dello stesso modulo.
Conclusione
Utilizzando questi metodi, è possibile chiamare un metodo Sub da un altro Sub o Funzione in VBA Se avete domande, non esitate a porcele.