Objet Classeur (Excel)

Cet objet représente un classeur Microsoft Excel.

Remarques

L’objet Workbook est membre de la collection Workbooks . La collection Workbooks contient tous les objets Workbook actuellement ouverts dans Microsoft Excel.

La propriété ThisWorkbook de l’objet Application renvoie le classeur dans lequel le code Visual Basic s’exécute. Il s'agit généralement du classeur actif. Toutefois, si le code Visual Basic fait partie d'une macro complémentaire, la propriété ThisWorkbook ne renverra pas le classeur actif. Dans ce cas, le classeur actif est celui appelant la macro complémentaire, alors que la propriété ThisWorkbook renvoie le classeur de la macro complémentaire.

Si vous créez un complément à partir de votre code Visual Basic, vous devez utiliser la propriété ThisWorkbook pour qualifier toute instruction qui doit être exécutée sur le classeur que vous compilez dans le complément.

Exemple

Utilisez Workbooks (index), où index est le nom ou le numéro d’index du classeur, pour renvoyer un seul objet Workbook . L'exemple suivant montre comment activer le classeur 1.

Workbooks(1).Activate

Le numéro d'index indique l'ordre dans lequel les classeurs ont été ouverts ou créés. Workbooks(1) est le premier classeur créé et Workbooks(Workbooks.Count) le dernier. Le fait d'activer un classeur ne modifie pas son numéro d'index. Tous les classeurs sont inclus dans le nombre d’index, même s’ils sont masqués.

La propriété Name renvoie le nom du classeur. Vous ne pouvez pas définir le nom en utilisant cette propriété ; si vous devez changer le nom, utilisez la méthode SaveAs pour enregistrer le classeur sous un nom différent.

L'exemple suivant montre comment activer la feuille Sheet1 dans le classeur intitulé Cogs.xls (le classeur doit être déjà ouvert dans Microsoft Excel).

Workbooks("Cogs.xls").Worksheets("Sheet1").Activate

La propriété ActiveWorkbook de l’objet Application renvoie le classeur actuellement actif. L'exemple suivant définit le nom de l'auteur dans le classeur actif.

ActiveWorkbook.Author = "Jean Selva"

Cet exemple envoie un e-mail à un onglet de feuille de calcul à partir du classeur actif à l’aide d’une adresse e-mail et d’un objet spécifiés. Pour exécuter ce code, la feuille de calcul active doit contenir l'adresse de messagerie dans la cellule A1, l'objet dans la cellule B1, et le nom de la feuille de calcul à envoyer dans la cellule C1.

Sub SendTab()
   'Declare and initialize your variables, and turn off screen updating.
   Dim wks As Worksheet
   Application.ScreenUpdating = False
   Set wks = ActiveSheet

   'Copy the target worksheet, specified in cell C1, to the clipboard.
   Worksheets(Range("C1").Value).Copy

   'Send the content in the clipboard to the email account specified in cell A1,
   'using the subject line specified in cell B1.
   ActiveWorkbook.SendMail wks.Range("A1").Value, wks.Range("B1").Value

   'Do not save changes, and turn screen updating back on.
   ActiveWorkbook.Close savechanges:=False
   Application.ScreenUpdating = True
End Sub

Événements

Méthodes

Propriétés

Voir aussi

Assistance et commentaires

Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.