Hoe controleer ik of een werkmap geopend is via vba?

Om te controleren of een werkmap open is met behulp van een VBA-code, moet u FOR EACH- lus gebruiken, die door alle werkmappen kan lopen die op dat moment open zijn en de naam van elke werkmap controleren met de naam die u noemde. U kunt een berichtvenster gebruiken om het resultaat van de lus te verkrijgen. Of u kunt ook de code uitvoeren om het resultaat in een cel in te voeren.

Controleer of een WERKBOEK GEOPEND is

  1. Eerst moet u de variabelen declareren die u in de code wilt gebruiken om een lus te maken.
    create a loop
  2. Gebruik een invoervak om de naam op te halen van de werkmap waarnaar u wilt zoeken.
    use an input box
  3. Start de lus om alle geopende werkmappen te doorlopen.
    start the loop to loop
  4. Schrijf code met IF STATEMENT om de naam van de werkmap te controleren met de naam die u in het invoervak hebt ingevoerd. Zodra de naam overeenkomt, wordt de werkmap geactiveerd, wordt een berichtvenster weergegeven waarin staat dat de werkmap is gevonden en wordt de procedure afgesloten.
    code with if statement
  5. Voltooi aan het einde de lus en gebruik een berichtvenster om een berichtvenster weer te geven als er niets is gevonden.
    end the loop and use a message box

Handige links: Een macro uitvoerenMacrorecorderVisual Basic EditorHandboek voor persoonlijke macro’s

Hier is de volledige code.

 Sub vba_check_workbook() Dim WB As Workbook Dim myWB As String myWB = InputBox(Prompt:="Enter the workbook name.") For Each WB In Workbooks If WB.Name = myWB Then WB.Activate MsgBox "Workbook Found!" Exit Sub End If Next WB MsgBox "Not Found" End Sub

Voeg een reactie toe

Je e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *