VBA – Sélectionner une Feuille, Activer une Feuille et Obtenir la Feuille Active
In this Article
Cet article traite de l’objet ActiveSheet en VBA. Il explique également comment activer, sélectionner et accéder aux feuilles de calcul (et bien plus encore). Pour plus d’informations sur l’utilisation des feuilles de calcul en VBA, consultez notre guide complet sur les feuilles de calcul en VBA.
ActiveSheet
En VBA, l’objet ActiveSheet désigne la feuille de calcul active. Une seule feuille peut être active à la fois.
Activer une Feuille de Calcul (Définir la Feuille Active)
Pour définir la feuille active, utilisez Worksheet.Activate :
Worksheets("Entrées").Activate
La commande Activate permet d’accéder à la feuille et de modifier la feuille visible.
L’exemple ci-dessus utilise le nom de la feuille (onglet). Vous pouvez plutôt utiliser le nom du code VBA de la feuille de calcul :
Feuil1.Activate
Nom de la Feuille Active
Pour obtenir le nom de la feuille active :
msgbox ActiveSheet.Name
Feuilles Sélectionnées et Feuille Active
A tout moment, une seule feuille peut être la feuille active. Cependant, plusieurs feuilles de travail peuvent être sélectionnées en même temps.
Lorsque plusieurs feuilles de calcul sont sélectionnées, seule la feuille de calcul la plus élevée est considérée comme active.
Sélectionner une Feuille de Calcul
Si vous souhaitez sélectionner une feuille de calcul au lieu de l’activer. Utilisez plutôt .Select.
Sélectionner une Feuille de Calcul par son Nom d’Onglet
Cette fonction permet de sélectionner une feuille de calcul en fonction du nom de son onglet
Sheets("Entrées").Select
Sélectionner une Feuille de Calcul par son Numéro d’Index
Cette opération sélectionne une feuille de calcul en fonction de sa position par rapport aux autres onglets
Worksheets(1).Select
Sélectionner une Feuille de Calcul avec son Nom de Code VBA
Feuil1.Select
La sélection de feuilles de calcul par nom de code permet d’éviter les erreurs dues aux changements de nom d’onglet de la feuille.
Sélection de la Feuille de Calcul Actuelle
Pour sélectionner la feuille de travail en cours d’édition (feuille active), utilisez l’objet ActiveSheet :
ActiveSheet.Select
Autres Exemples d’Activation et de Sélection de Feuilles
Attribuer la Feuille Active à une Variable
Cette opération permet d’affecter la feuille active à une variable de type objet Worksheet.
Dim fc As Worksheet
Set fc = ActiveSheet
Renommer la Feuille Active
Cette opération permet de modifier le nom de la feuille active.
ActiveSheet.Name = "Nouveau Nom"
With ActiveSheet
L’utilisation de l’instruction With vous permet de rationaliser votre code lorsque vous travaillez avec des objets (tels que Sheets ou ActiveSheet).
With ActiveSheet
.Name = "NouvelleFeuille"
.Cells.Clear
.Range("A1").Value = .Name
End With
Remarquez que vous n’avez pas besoin de répéter « ActiveSheet » avant chaque ligne de code. Cela peut représenter un gain de temps considérable lorsque vous travaillez avec une longue liste de commandes.
Boucle dans les Feuilles Sélectionnées
La macro suivante parcourt en boucle toutes les feuilles sélectionnées, en affichant leur nom.
Sub ObtenirNomsFeuillesSélectionnées()
Dim fc As Worksheet
For Each fc In ActiveWindow.SelectedSheets
MsgBox fc.Name
Next fc
End Sub
Aller à la Feuille Suivante
Ce code permet d’accéder à la feuille suivante. Si la feuille active est la dernière feuille, il passe à la première feuille du classeur.
If ActiveSheet.Index = Worksheets.Count Then
Worksheets(1).Activate
Else
ActiveSheet.Next.Activate
End If
La Programmation VBA simplifiée
Ne cherchez plus de code VBA en ligne. Découvrez AutoMacro – un générateur de code VBA qui permet aux débutants de créer leurs propres procédures avec un minimum de connaissances en programmation et avec de nombreuses fonctionnalités permettant à tous les utilisateurs de gagner du temps !