FAQ Visual Basic
FAQ Visual Basic Consultez toutes les FAQ
Nombre d'auteurs : 50, nombre de questions : 300, dernière mise à jour : 15 juin 2021
Rajoutez, au projet la référence "Microsoft Excel xx.x Object library"
(menu projet Référence)
puis utilisez par exemple CreateObject pour créer l'objet Microsoft Excel :
Private
Sub
CdOuvrirExcel_Click
(
)
Dim
oExcel As
Excel.Application
Set
oExcel =
CreateObject
(
"Excel.Application"
)
oExcel.Visible
=
True
'Affiche l'application excel
MsgBox
"Excel est ouvert"
oExcel.Quit
Set
oExcel =
Nothing
'libération mémoire..
End
Sub
Lien : Utiliser Excel à partir de Visual BasicUtiliser Excel à partir de Visual Basic
Rajoutez, au projet la référence "Microsoft Excel xx.x Object library"
puis utilisez la méthode Add de la collection Workbooks
Private
Sub
cdCreerClasseur_Click
(
)
Dim
oExcel As
Excel.Application
Dim
oWk As
Workbook
Set
oExcel =
CreateObject
(
"Excel.Application"
)
oExcel.Visible
=
False
'Masque l'application excel (valeur par défaut)
Set
oWk =
oExcel.Workbooks.Add
'rajoute par exemple la date et heure actuelle en Feuil1 cellule A1
oWk.Sheets
(
1
).Range
(
"A1"
) =
Now
'Sauve le classeur
oExcel.DisplayAlerts
=
False
' Pour éviter des questions si classeur déjà existant
oWk.SaveAs
App.Path
&
"\MonClasseur.xls"
oWk.Close
False
'Ferme le classeur
oExcel.Quit
Set
oWk =
Nothing
Set
oExcel =
Nothing
'libération mémoire..
End
Sub
Lien : Utiliser Excel à partir de Visual BasicUtiliser Excel à partir de Visual Basic
Rajoutez, au projet la référence "Microsoft Excel xx.x Object library"
puis utilisez la méthode Open de la collection Workbooks, pour ouvrir le classeur avant de le modifier
Private
Sub
cdModifClasseur_Click
(
)
Dim
oExcel As
Excel.Application
Dim
oWk As
Workbook
Set
oExcel =
CreateObject
(
"Excel.Application"
)
oExcel.Visible
=
False
'Masque l'application excel (valeur par défaut)
On
Error
Resume
Next
'Pour éviter les erreur si classeur n'existe pas
Set
oWk =
oExcel.Workbooks.Open
(
App.Path
&
"\MonClasseur.xls"
)
On
Error
GoTo
0
If
oWk Is
Nothing
Then
MsgBox
"Erreur sur ouverture classeur"
, vbCritical
Exit
Sub
End
If
'rajoute par exemple la date et heure actuelle sur la derniére ligne colonne A.
oWk.Sheets
(
1
).Range
(
"A65535"
).End
(
xlUp).Offset
(
1
, 0
) =
Now
'Sauve le classeur
oWk.save
oWk.Close
False
'Ferme le classeur
oExcel.Quit
Set
oWk =
Nothing
Set
oExcel =
Nothing
'libération mémoire..
End
Sub
Lien : Utiliser Excel à partir de Visual BasicUtiliser Excel à partir de Visual Basic
Rajoutez, au projet la référence "Microsoft Excel xx.x Object library"
une fois le classeur ouvert ( voir Modifier une classeur ) utilisez le code suivant pour l'insertion de la feuille
...
Set
oSh =
oWk.Worksheets.Add
oSh.Name
=
"Mafeuille"
'Renomme la feuille
oSh.Range
(
"C3"
) =
"Agit sur la feuille"
'============= fin ajout feuille
Set
oSh =
Nothing
' libération mémoire...
Rajoutez, au projet la référence "Microsoft Excel xx.x Object library"
Le classeur doit contenir la procédure publique à exécuter.
Private
Sub
cdLancerMacro_Click
(
)
Dim
oExcel As
Excel.Application
Dim
oWk As
Workbook
Set
oExcel =
CreateObject
(
"Excel.Application"
)
oExcel.Visible
=
True
Set
oWk =
oExcel.Workbooks.Open
(
App.Path
&
"\MonClasseur.xls"
)
On
Error
GoTo
0
If
oWk Is
Nothing
Then
MsgBox
"Erreur sur ouverture classeur"
, vbCritical
Exit
Sub
End
If
oExcel.Run
"MaMacro"
' lance la macro
Set
oWk =
Nothing
Set
oExcel =
Nothing
'libération mémoire..
End
Sub