Gallery
Excel - Power Query - Power Pivot - VBA
Share
Explore
VB Excel

icon picker
Classeurs

1 | Déclarer un classeur

On déclare une variable de type Workbook (classeur) pour ensuite manipuler le classeur avec la variable.
Par exemple, on déclare la variable classeurVente ainsi :
Dim classeurVente As Workbook

2 | Affecter un classeur

Le classeur est déjà ouvert

Set classeurVente = Workbooks("Ventes.xlsx")
OU
Set classeurVente = ActiveWorkbook
OU
Set classeurVente = ThisWorkbook
(le classeur contenant la macro, même s’il n’est pas actif)
OU
Set classeurVente = Workbooks(1)

Le classeur doit être ouvert

Set classeurVente = Workbooks.Open("C:\Ventes.xlsx")

Le classeur doit être créé

Set classeurVente = Workbooks.Add

3 | Manipuler un classeur

Activer un classeur

classeurVente.Activate

Enregistrer un classeur

Uniquement pour un classeur pour lequel on a déjà fait Enregistrer sous :
classeurVente.Save

Enregistrer sous un classeur

classeurVente.SaveAs Filename:=C:\Chemin\Fichier.xlsx, Fileformat:=LeFormat
LeFormat peut être égal à :
xlOpenXMLWorkbookMacroEnabled : xlsm
xlOpenXMLWorkbook : xlsx
xlExcel : xls

Fermer

Fermer un classeur en enregistrant les éventuelles modifications :
classeurVente.Close SaveChanges:=True

Fonctions personnalisées

La Fonction WorkbookIsOpen

Vérifie si un classeur est ouvert dans la session active d’Excel (si le fichier est ouvert dans une autre session d’Excel, la fonction ne le détecte pas)
Function WorkbookIsOpen(sName As String) As Boolean
Dim x As Workbook
On Error Resume Next
Set x = Workbooks(sName)
If Err = 0 Then WorkbookIsOpen = True _
Else WorkbookIsOpen = False
End Function

Résumé

image.png
Share
 
Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.