Excel VBA: contare le colonne con i dati (2 esempi)

  • Condividi Questo
Hugh West

Quando si dispone di una piccola tabella di dati con poche colonne, è facile contarle tutte. Ma per una tabella di dati di grandi dimensioni, è piuttosto difficile contare tutte le colonne senza errori. Inoltre, alcune colonne possono contenere dati, mentre altre possono essere completamente vuote. Pertanto, contare tutte le colonne con i dati nel caso di una tabella di dati di grandi dimensioni è piuttosto difficile. In questo articolo, imparerete 2 modi per contarecolonne con dati utilizzando VBA in Excel con facilità.

Scarica il quaderno di esercizi

Potete scaricare il file Excel dal seguente link ed esercitarvi con esso.

Contare le colonne con i dati.xlsm

2 modi per contare le colonne con i dati utilizzando VBA in Excel

1. Contare tutte le colonne di un foglio di lavoro con dati utilizzando un semplice codice VBA

Possiamo vedere le 3 colonne nella seguente tabella di dati. Ora utilizzeremo un codice VBA per determinare il numero di colonne utilizzate in un singolo foglio di lavoro di Excel.

❶ Prima di tutto, premere ALT + F11 per aprire l'editor VBA.

❷ Successivamente, creare un nuovo modulo da Inserire> Modulo.

Copiare quindi il seguente script VBA.

 Public Sub CountUsedColumns() With Sheet1.UsedRange MsgBox "Il numero di colonne con dati è: " & .Columns.Count End With End Sub 

❹ Quindi tornare all'editor VBA e premere CTRL + V per incollarlo.

❺ Ora salvate il codice VBA premendo CTRL + S pulsante.

❻ Per eseguire il codice VBA, accedere alla sezione Sviluppatore e fare clic su Macro Oppure, è sufficiente premere il tasto F5 chiave.

Il Macro apparirà una finestra di dialogo.

Tutto quello che dovete fare è fare clic sul pulsante Correre pulsante.

A questo punto apparirà una finestra di dialogo che dice che il numero di colonne con dati è 3.

Per saperne di più: Come contare il numero di colonne in Excel (3 metodi semplici)

2. Contare tutte le colonne di un dato intervallo di dati utilizzando un codice VBA di Excel

Il seguente codice VBA consente di contare tutte le colonne con dati in un determinato intervallo.

Per utilizzare il codice,

❶ Prima di tutto, aprire l'editor VBA premendo ALT + F11.

❷ Quindi andare a Inserire> Modulo per creare un nuovo modulo.

Copiare quindi il seguente script VBA.

 Sub CountColumnsInARange() Dim xRng As Worksheet Set xRng = Worksheets("Sheet1") MsgBox "Totale colonna: " & xRng.Range("B5:D5").Columns.Count End Sub 

❹ Tornare all'editor VBA e premere CTRL + V per incollarlo.

❺ Salvare ora il codice premendo CTRL + S.

❻ Andare al Sviluppatore e premere il tasto Macro per aprire il Macro finestra.

Oppure, è sufficiente premere il tasto F5 per utilizzare il tasto Macro finestra di dialogo.

❼ Dalla finestra di dialogo, scegliere il nome della funzione ContaColonneNell'intervallo e colpire il Correre pulsante.

Alla fine apparirà una piccola finestra di dialogo che indica che il numero totale di colonne è 3.

Per saperne di più: Come contare le colonne per VLOOKUP in Excel (2 metodi)

Altri codici VBA per contare le colonne in Excel

1. Usare il metodo VBA Range.End per restituire il numero dell'ultima colonna utilizzata.

Per ottenere il numero dell'ultima colonna utilizzata in un foglio di calcolo Excel,

❶ Prima di tutto, aprire l'editor VBA premendo ALT + F11.

❷ Quindi andare a Inserire> Modulo per creare un nuovo modulo.

❸ Copiare quanto segue VBA codice:

 Option Explicit Sub LastColumn() Dim xRng As Integer xRng = Range("B4").End(xlToRight).Column MsgBox xRng End Sub 

❹ Incollare e salvare il codice nell'editor VBA.

❺ Premere il tasto F5 per eseguire il codice di cui sopra.

Il numero dell'ultima colonna viene visualizzato in una finestra di dialogo a comparsa, come nella figura seguente:

Per saperne di più: Come contare le colonne fino al raggiungimento del valore in Excel

2. Utilizzare il metodo Range.Find per restituire il numero dell'ultima colonna utilizzata in Excel.

Se cercate codici VBA per restituire l'ultimo numero di colonna utilizzato, seguite i passaggi seguenti:

❶ Prima di tutto, premere ALT + F11 per aprire l'editor VBA.

❷ Successivamente, creare un nuovo modulo da Inserire> Modulo.

Copiare il seguente codice VBA:

 Sub LastUsedColumnNo() Dim xRng As Long xRng = Cells.Find(What:="*", _ After:=Range("B4"), _ LookAt:=xlPart, _ LookIn:=xlFormulas, _ SearchOrder:=xlByColumns, _ SearchDirection:=xlPrevious, _ MatchCase:=False).Column MsgBox "Last Used Column Numeber: " & xRng End Sub 

❹ Quindi tornare all'editor VBA e premere CTRL + V per incollarlo.

❺ Ora salvate il codice VBA premendo CTRL + S pulsante.

A questo punto, premere il tasto F5 per eseguire il codice di cui sopra.

Il numero dell'ultima colonna utilizzata viene visualizzato in una finestra di dialogo a comparsa, come nella figura seguente:

Cose da ricordare

  • Stampa ALT + F11 per aprire l'editor VBA.
  • È possibile premere ALT + F8 di avvalersi del Macro finestra di dialogo.
  • Per eseguire il codice VBA, premere il tasto F5.

Conclusione

Per riassumere, abbiamo discusso 2 modi per contare le colonne con i dati utilizzando VBA in Excel. Si consiglia di scaricare la cartella di lavoro pratica allegata a questo articolo e di esercitarsi con tutti i metodi. Non esitate a porre qualsiasi domanda nella sezione dei commenti qui sotto. Cercheremo di rispondere a tutte le domande pertinenti nel più breve tempo possibile. E visitate il nostro sito web ExcelWIKI per saperne di più.

Hugh West è un istruttore e analista di Excel di grande esperienza con oltre 10 anni di esperienza nel settore. Ha conseguito una laurea in Contabilità e Finanza e un Master in Economia Aziendale. Hugh ha una passione per l'insegnamento e ha sviluppato un approccio didattico unico che è facile da seguire e capire. La sua conoscenza approfondita di Excel ha aiutato migliaia di studenti e professionisti in tutto il mondo a migliorare le proprie competenze ed eccellere nella propria carriera. Attraverso il suo blog, Hugh condivide le sue conoscenze con il mondo, offrendo esercitazioni gratuite su Excel e formazione online per aiutare le persone e le aziende a raggiungere il loro pieno potenziale.