Vba: het aantal vellen in een werkmap tellen


U kunt de volgende methoden gebruiken om het aantal vellen in een werkmap in Excel te tellen:

Methode 1: Tel het aantal vellen in de actieve werkmap

 SubCountSheetsActive ()
   Range(" A1 ") = ThisWorkbook.Worksheets.Count
End Sub

Methode 2: tel het aantal vellen in een open werkmap

 SubCountSheetsOpen ()
    Range(" A1 ") = Workbooks(" my_data.xlsx ").Sheets.Count
End Sub

Methode 3: tel het aantal vellen in een gesloten ringband

 SubCountSheetsClosed ()
    Application.DisplayAlerts = False
    Set wb = Workbooks.Open(" C:\Users\Bob\Desktop\my_data.xlsx ")
    
    'count sheets in closed workbook and display count in cell A1 of current workbook
    ThisWorkbook.Sheets(1).Range(" A1 ").Value = wb.Sheets.Count

    wb.Close SaveChanges:=True
    Application.DisplayAlerts = True
End Sub

De volgende voorbeelden laten zien hoe u elk van deze methoden in de praktijk kunt gebruiken.

Voorbeeld 1: Tel het aantal vellen in een actieve werkmap

Laten we zeggen dat we de volgende Excel-werkmap open hebben en deze bekijken:

We kunnen de volgende macro gebruiken om het totale aantal bladen in deze werkmap te tellen en het aantal in cel A1 weer te geven:

 SubCountSheetsActive ()
   Range(" A1 ") = ThisWorkbook.Worksheets.Count
End Sub

Wanneer we deze macro uitvoeren, ontvangen we de volgende uitvoer:

Merk op dat cel A1 de waarde 6 bevat.

Dit vertelt ons dat er 6 bladen in dit werkboek zitten.

Voorbeeld 2: Tel het aantal vellen in een open map

Stel dat we een Excel-werkmap hebben met de naam my_data.xlsx met twee geopende werkbladen, maar we bekijken deze momenteel niet.

We kunnen de volgende macro gebruiken om het totale aantal bladen in deze werkmap te tellen en het aantal in cel A1 van de actieve werkmap weer te geven:

 SubCountSheetsOpen ()
    Range(" A1 ") = Workbooks(" my_data.xlsx ").Sheets.Count
End Sub

Wanneer we deze macro uitvoeren, ontvangen we de volgende uitvoer:

Merk op dat cel A1 de waarde 2 bevat.

Dit vertelt ons dat er twee bladen in de open werkmap zijn met de naam my_data.xlsx .

Voorbeeld 3: Het aantal vellen tellen in een gesloten ringband

Stel dat we een Excel-werkmap hebben met de naam my_data.xlsx met twee bladen die momenteel niet geopend zijn, maar zich op de volgende bestandslocatie bevinden:

C:\Gebruikers\Bob\Desktop\mijn_data.xlsx

We kunnen de volgende macro gebruiken om het totale aantal bladen in deze werkmap te tellen en het aantal in cel A1 van het eerste blad van de actieve werkmap weer te geven:

 SubCountSheetsClosed ()
    Application.DisplayAlerts = False
    Set wb = Workbooks.Open(" C:\Users\Bob\Desktop\my_data.xlsx ")
    
    'count sheets in closed workbook and display count in cell A1 of current workbook
    ThisWorkbook.Sheets(1).Range(" A1 ").Value = wb.Sheets.Count

    wb.Close SaveChanges:=True
    Application.DisplayAlerts = True
End Sub

Wanneer we deze macro uitvoeren, ontvangen we de volgende uitvoer:

Merk op dat cel A1 de waarde 2 bevat.

Dit vertelt ons dat er twee bladen in de gesloten werkmap staan met de naam my_data.xlsx .

Opmerking : In de code vertelt Application.DisplayAlerts=False aan VBA dat het proces van het openen van de gesloten werkmap, het tellen van de bladen en het vervolgens sluiten van de werkmap niet moet worden weergegeven.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in VBA kunt uitvoeren:

VBA: het aantal rijen binnen bereik tellen
VBA: cellen tellen met specifieke tekst
VBA: Hoe COUNTIF- en COUNTIFS-functies te schrijven

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert