Vba: een lijst krijgen met alle geopende werkmappen


U kunt een For Each- lus in VBA gebruiken om een lijst te krijgen van alle geopende Excel-werkmappen.

Hier is een gebruikelijke manier om dit in de praktijk te doen:

 Sub ListAllOpenWorkbooks()

Dim wbName As String
Dim wb As Workbook

'add each open workbook to message box
For Each wb In Application.Workbooks
    wbName = wbName & wb.Name & vbCrLf
Next

'display message box with all open workbooks
MsgBox wbName

End Sub

Deze specifieke macro genereert een berichtvenster met een lijst met alle geopende Excel-werkmappen.

Het volgende voorbeeld laat zien hoe u deze macro in de praktijk kunt gebruiken.

Voorbeeld: Haal een lijst op met alle geopende werkmappen met behulp van VBA

Laten we aannemen dat de volgende drie Excel-werkmappen momenteel geopend zijn:

  • honkbal_data.xlsx
  • voetbal_data.xlsx
  • hockey_data.xlsx

Laten we zeggen dat we VBA willen gebruiken om de namen van al deze open werkmappen weer te geven.

We kunnen hiervoor de volgende macro maken:

 Sub ListAllOpenWorkbooks()

Dim wbName As String
Dim wb As Workbook

'add each open workbook to message box
For Each wb In Application.Workbooks
    wbName = wbName & wb.Name & vbCrLf
Next

'display message box with all open workbooks
MsgBox wbName

End Sub

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

In het berichtvenster worden de namen van elk van de geopende werkmappen weergegeven, waarbij elke unieke werkmap in een eigen rij wordt vermeld.

Merk op dat we de constante vbCrLf in de For Each- lus hebben gebruikt om een harde return in te voegen, waardoor de cursor naar de volgende regel wordt verplaatst.

Hierdoor konden we elke geopende werkmap op een eigen regel in het berichtenvenster weergeven.

Aanvullende bronnen

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

Hoe een bestand te hernoemen met VBA
Bestanden in een map weergeven met VBA
Hoe alle bestanden in een map te openen met VBA
Hoe u kunt controleren of een bestand bestaat met behulp van VBA

Einen Kommentar hinzufügen

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