Sommario
Se siete alla ricerca di alcuni dei modi più semplici per utilizzare VBA Offset dell'intervallo, allora troverete questo articolo degno di nota. Iniziamo con le modalità di utilizzo di VBA Offset di gamma.
Scarica il libro di lavoro
VBA Offset intervallo.xlsm11 modi per utilizzare l'offset di intervallo in VBA
Ho la seguente tabella di dati che contiene le informazioni di alcuni studenti di un'università. Utilizzando questo set di dati, spiegherò i modi in cui si usa la funzione VBA Offset di gamma.
A questo scopo, ho utilizzato Microsoft Excel 365 è possibile utilizzare qualsiasi altra versione in base alle proprie esigenze.
Metodo 1: selezione di una cella mediante l'uso dell'intervallo in VBA
In questo caso, selezioneremo una cella contenente il nome Daniel Defoe. A questo scopo, si utilizzerà il metodo Funzione GAMMA in VBA .
Passo-01 :
Vai a Sviluppatore Scheda Visual Basic Opzione
Poi, il Editor Visual Basic si aprirà.
Vai a Inserire Scheda Modulo Opzione
Successivamente, un Modulo verrà creato.
Passo-02 :
➤Scrivete il seguente codice
Sub SelectCell() Range("B8").Select End Sub
Selezionerà la cella B8 .
➤Stampa F5
Risultato :
In questo modo, si otterrà la cella che contiene Daniel Defoe selezionato.
Per saperne di più: Come utilizzare l'oggetto Range di VBA in Excel
Metodo-2: selezione di un gruppo di celle contigue mediante l'uso di VBA Range
È possibile selezionare un intervallo di celle contigue, come nel caso dell'opzione Nome dello studente e la colonna Risultato nella tabella seguente, seguendo questo metodo.
Passo-01 :
➤Segui Passo-01 di Metodo-1
Sub ContiguousCells() Range("B5:C10").Select End Sub
Selezionerà le celle da B5 a C10 .
➤Stampa F5
Risultato :
Successivamente, si otterranno le celle in Colonna B e Colonna C selezionato.
Metodo 3: selezionare un gruppo di celle non contigue utilizzando l'intervallo in VBA
Si supponga di voler selezionare gli studenti denominati William David e Michael Anthony compresi i rispettivi Indirizzo e-mail Per selezionare le celle non congrue si può seguire questo metodo.
Passo-01 :
➤Segui Passo-01 di Metodo-1
Sub nonContiguous() Range("B6,D6,B9,D9").Select Sub finale
Selezionerà le celle B6 , D6 , B9, e D9 .
➤Stampa F5
Risultato :
Quindi, si otterranno le celle contenenti il nome dello studente William David , Michael Anthony, e i rispettivi Indirizzo e-mail selezionato.
Metodo 4: selezionare un gruppo di celle non contigue e un intervallo utilizzando VBA Range
Con questo metodo è possibile selezionare contemporaneamente un intervallo di celle e alcune celle non contigue.
Passo-01 :
➤Segui Passo-01 di Metodo-1
Sub nonContiguouswithrange() Range("B5:B10,D6,D10").Select End Sub
Selezionerà l'intervallo di celle nell'intervallo B5:B10 e le altre due celle D6 , D10 .
➤Stampa F5
Risultato :
Successivamente, si otterranno le celle della colonna Nome dello studente e due ID e-mail per William David e Donald Paul selezionato.
Metodo 5: selezionare un intervallo utilizzando l'offset dell'intervallo in VBA
È possibile selezionare un intervallo di celle nella finestra Colonna Nome dello studente utilizzando l'opzione Funzione OFFSET .
Passo-01 :
➤Segui Passo-01 di Metodo-1
Sub selectrangeoffset() Range("A1:A6").Offset(4, 1).Select End Sub
All'inizio, Intervallo("A1:A6") selezionerà l'intervallo A1:A6 e poi Offset(4, 1) si sposterà di 4 righe verso il basso dalla cella A1 e 1 colonna sul lato destro. Successivamente, il numero uguale di celle nell'intervallo A1:A6 sarà selezionato da qui.
➤Stampa F5
Risultato :
In questo modo, si selezionerà la colonna Nome dello studente .
Metodo-6: VBA Offset intervallo negativo
È possibile selezionare l'opzione Colonna ID e-mail seguendo questo metodo.
Passo-01 :
➤Segui Passo-01 di Metodo-1
Sub negativerangeoffset() Range("F11:F16").Offset(-6, -2).Select End Sub
All'inizio, Intervallo("F11:F16") selezionerà l'intervallo F11:F16 e poi Offset(-6, -2) si sposterà di 6 righe verso l'alto dalla cella F11 e 2 colonne sul lato sinistro. Successivamente, il numero uguale di celle nell'intervallo F11:F16 sarà selezionato da qui.
➤Stampa F5
Risultato :
Successivamente, sarà possibile selezionare la colonna Indirizzo e-mail .
Letture simili:
- VBA per ogni cella dell'intervallo in Excel (3 metodi)
- Come contare il testo in Excel (7 semplici trucchi)
Metodo 7: Selezione di un intervallo rispetto alla cella attiva
Qui abbiamo una cella attiva (cella A1 ) e rispetto a questa cella, selezioneremo l'intervallo di dati in questo metodo.
Passo-01 :
➤Segui Passo-01 di Metodo-1
Sub actvcell() Range(activecell.Offset(4, 1), activecell.Offset(9, 3)).Select End Sub
Qui, activecell è A1
La prima parte activecell.Offset(4, 1) selezionerà una cella 4 righe in basso e 1 colonna a destra dalla cella A1 e la seconda parte activecell.Offset(9, 3) selezionerà una cella 9 righe in basso e 3 colonne a destra della cella A1 .
Infine, verranno selezionate tutte le celle tra queste due celle.
➤Stampa F5
Risultato :
Sarà quindi possibile selezionare l'intero intervallo di dati.
Metodo-8: Copiare un intervallo
Se si desidera copiare un intervallo di celle, è possibile seguire questo metodo.
Passo-01 :
➤Segui Passo-01 di Metodo-1
Sub copyrangeoffset() Range("A1:A6").Offset(4, 1).Copy End Sub
All'inizio, Intervallo("A1:A6") selezionerà l'intervallo A1:A6 e poi Offset(4, 1) si sposterà di 4 righe verso il basso dalla cella A1 e 1 colonna a destra. Dopodiché, un numero uguale di celle nell'intervallo A1:A6 sarà selezionato da qui.
Infine, copierà i valori nell'intervallo B5:B10 .
➤Stampa F5
Risultato :
Successivamente, sarà possibile copiare l'intervallo di dati nel file Colonna Nome dello studente .
Metodo 9: Eliminazione di un intervallo
Qui mostreremo il modo in cui cancellare un intervallo di dati usando VBA codice.
Passo-01 :
➤Segui Passo-01 di Metodo-1
Sub dltrangeoffset() Range("F11:F17").Offset(-7, -2).Delete End Sub
In primo luogo, Intervallo("F11:F17") selezionerà l'intervallo F11:F17 e poi Offset(-7, -2) si sposterà di 7 righe verso l'alto dalla cella F11 e 2 colonne sul lato sinistro. Successivamente, il numero uguale di celle nell'intervallo F11:F17 sarà selezionato da qui.
Infine, eliminerà l'intervallo D4:D10 .
➤Stampa F5
Risultato :
In questo modo, si copierà l'intervallo di dati nel file Colonna ID e-mail .
Metodo 10: Utilizzo di VBA Range Offset per inserire un valore
Qui abbiamo una cella vuota (abbiamo rimosso il valore in questa cella per spiegare questo metodo) nel file Colonna Nome dello studente e vogliamo riempirlo con il nome Giuseppe Michele Utilizzando un VBA possiamo inserire facilmente questo valore.
Passo-01 :
➤Segui Passo-01 di Metodo-1
Sub valuerangeoffset() Range("A1").Offset(6, 1).Value = "Joseph Michael" End Sub
In primo luogo, Intervallo("A1") selezionerà la cella A1 e poi Offset(6, 1) si sposterà di 6 righe verso il basso dalla cella A1 e 1 colonna sul lato destro. Successivamente, la cella B7 sarà selezionato e, infine, inserirà il valore "Joseph Michael" in questa cella.
➤Stampa F5
Risultato :
In questo modo, si otterrà il nome Giuseppe Michele in cella B7 .
Metodo-11: utilizzo di VBA Range Offset per ottenere l'output
Supponiamo di voler scrivere Passato o Mancata corrispondenza ai nomi degli studenti a seconda della Colonna dei risultati dove Passo o Bocciatura è stato scritto in una parentesi. Per trovare questa sottostringa nel file Colonna dei risultati e scriverlo nel Colonna Pass/Fail seguire questo metodo.
Passo-01 :
➤Segui Passo-01 di Metodo-1
Sub CheckSubstring() Dim cell As Range For Each cell In Range("C5:C10") If InStr(cell.value, "Pass")> 0 Then cell.Offset(0, 1).value = "Passed" Else cell.Offset(0, 1).value = "Failed" End If Next cell End Sub
Qui, l'intervallo di celle C5:C10 è selezionato da Intervallo("C5:C10") che è il Colonna dei risultati
InStr(valore cella, "Passo")> 0 è la condizione in cui il numero è maggiore di zero (quando la cella contiene "Passo" ) allora la riga successiva continuerà e fornirà l'output nella cella adiacente come Passato In questo caso, la cella adiacente sarà selezionata da cella.offset(0, 1) , il che significa che si sposterà di 1 colonna a destra rispetto alla cella di input.
Se la condizione diventa falsa, significa che una cella non contiene alcun "Passo" allora la linea sotto Altro verrà eseguito e fornirà il valore di uscita nella cella adiacente come Fallito .
Questo ciclo continuerà per ogni cella.
➤Stampa F5
Risultato :
Si otterranno quindi le uscite Superato o bocciato nel Promosso/Fallito colonna.
Sezione pratica
Per fare pratica da soli, abbiamo messo a disposizione un Pratica come di seguito in un foglio chiamato Pratica . per favore, fatelo da soli.
Conclusione
In questo articolo, ho cercato di illustrare i modi più semplici per utilizzare VBA Spero che vi sia utile. Se avete suggerimenti o domande, non esitate a condividerli con noi.