VBA ActiveSheet & Hoe een blad te activeren of te selecteren

In dit artikel wordt het ActiveSheet-object in VBA besproken. Er wordt ook besproken hoe u werkbladen kunt activeren, selecteren en er naartoe kunt gaan (en nog veel meer). Lees onze volledige VBA-werkbladengids voor meer informatie over het werken met werkbladen in VBA.

ActiveSheet

In VBA verwijst ActiveSheet naar het momenteel actieve werkblad. Er kan slechts één blad tegelijk actief zijn.

Werkblad activeren (De ActiveSheet instellen)

Gebruik Worksheet.Activate om de ActiveSheet in te stellen:

1 Werkbladen ("Invoer"). Activeren

De opdracht Blad activeren zal feitelijk naar het blad "gaan", waardoor het zichtbare blad wordt gewijzigd.

In het bovenstaande voorbeeld wordt de naam Blad (tabblad) gebruikt. In plaats daarvan kunt u de VBA-codenaam voor het werkblad gebruiken:

1 Blad1.Activeren

ActiveSheet-naam

Om de ActiveSheet-naam te krijgen:

1 msgbox ActiveSheet.name

Geselecteerde bladen versus ActiveSheet

Op elk moment kan slechts één werkblad de ActiveSheet zijn. Er kunnen echter meerdere werkbladen tegelijk worden geselecteerd.

Wanneer meerdere werkbladen zijn geselecteerd, wordt alleen het "bovenste" werkblad als actief beschouwd (de ActiveSheet).

Selecteer werkblad

Als u een werkblad wilt selecteren in plaats van het te activeren. Gebruik in plaats daarvan .Select.

Selecteer werkblad op tabbladnaam

Dit selecteert een werkblad op basis van de naam van het bladtabblad

1 Bladen ("Invoer"). Selecteer

Selecteer werkblad op indexnummer

Dit selecteert een werkblad op basis van zijn positie ten opzichte van andere tabbladen

1 Werkbladen(1).Selecteer

Selecteer werkblad met VBA-codenaam

1 Blad1.Selecteer

Door werkbladen op codenaam te selecteren, kunnen fouten worden voorkomen die worden veroorzaakt door wijzigingen in de werkbladnaam.

Selecteer huidig ​​werkblad

Gebruik het ActiveSheet-object om het huidige werkblad te selecteren:

1 ActiveSheet.Selecteer

Meer Activeer / selecteer bladvoorbeelden

Zet ActiveSheet op Variabel

Hiermee wordt de ActiveSheet toegewezen aan een werkbladobjectvariabele.

123 Dim ws als werkbladStel ws = ActiveSheet in

ActiveSheet-naam wijzigen

Hierdoor wordt de ActiveSheet-naam gewijzigd.

1 ActiveSheet.Name = "NieuweNaam"

Met ActiveSheet

Door de With-instructie te gebruiken, kunt u uw code stroomlijnen wanneer u met objecten werkt (zoals Spreadsheets of ActiveSheet).

12345 Met ActiveSheet.Name = "StartFresh".Cellen.Wissen.Bereik("A1").Waarde = .NaamEindigt met

Merk op hoe u "ActiveSheet" niet voor elke regel code hoeft te herhalen. Dit kan enorm veel tijd besparen bij het werken met een lange lijst met opdrachten.

Doorloop geselecteerde bladen

De volgende macro loopt door alle geselecteerde bladen en toont hun namen.

12345678 Sub GetSelectedSheetsName()Dim ws als werkbladVoor elke ws in ActiveWindow.SelectedSheetsMsgBox ws.NaamVolgende wsEinde sub

Ga naar volgend blad

Deze code gaat naar het volgende blad. Als de ActiveSheet het laatste werkblad is, gaat het naar het eerste werkblad in de werkmap.

12345 Als ActiveSheet.Index = Worksheets.Count DanWerkbladen(1).ActiverenAndersActiveSheet.Volgende.ActiverenStop als

U zal helpen de ontwikkeling van de site, het delen van de pagina met je vrienden

wave wave wave wave wave