Connexion entre VBA Access et Excel
Résolu/Fermé
A voir également:
- Connexion entre VBA Access et Excel
- Liste déroulante excel - Guide
- Formule excel - Guide
- Si et excel - Guide
- Word et excel gratuit - Guide
- Facebook connexion - Guide
4 réponses
yg_be
Messages postés
21795
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 septembre 2023
1 379
27 juin 2022 à 18:56
27 juin 2022 à 18:56
bonjour,
qu'as-tu essayé, quel résultat as-tu obtenu?
qu'as-tu essayé, quel résultat as-tu obtenu?
J'ai trouvé cela sur internet :
chemin = Application.CurrentProject.Path & "\Classeur1.xlsx"
Set fenetre = CreateObject("Excel.Application")
Set classeur = fenetre.Workbooks.Open(chemin)
recuperation = classeur.Sheets("Feuil1").Range("B1").Value
MsgBox (recuperation)
classeur.Sheets("Feuil1").Range("B2").Value = "Test envoie"
MsgBox (classeur.Sheets("Feuil1").Range("B2").Value)
fenetre.Application.DisplayAlerts = False
fenetre.Quit
Set fenetre = Nothing
Set classeur = Nothing
----------------------------------------------------------------------------------------------------------------------------------------------------------
Et pour le résultat, il arrive à récupérer la valeur du champs B1 dans la feuille 1 mais il n'arrive pas à écrire dans B2.
chemin = Application.CurrentProject.Path & "\Classeur1.xlsx"
Set fenetre = CreateObject("Excel.Application")
Set classeur = fenetre.Workbooks.Open(chemin)
recuperation = classeur.Sheets("Feuil1").Range("B1").Value
MsgBox (recuperation)
classeur.Sheets("Feuil1").Range("B2").Value = "Test envoie"
MsgBox (classeur.Sheets("Feuil1").Range("B2").Value)
fenetre.Application.DisplayAlerts = False
fenetre.Quit
Set fenetre = Nothing
Set classeur = Nothing
----------------------------------------------------------------------------------------------------------------------------------------------------------
Et pour le résultat, il arrive à récupérer la valeur du champs B1 dans la feuille 1 mais il n'arrive pas à écrire dans B2.
yg_be
Messages postés
21795
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 septembre 2023
1 379
27 juin 2022 à 19:21
27 juin 2022 à 19:21
"il n'arrive pas": que se passe-t-il? message d'erreur?
qu'affiche le second msgbox?
qu'affiche le second msgbox?
Le second MsgBox affiche correctement "Test envoie" mais quand je vais sur Excel pour voir la case B2 rien n'a été écrit. Case vide
yg_be
Messages postés
21795
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 septembre 2023
1 379
27 juin 2022 à 19:34
27 juin 2022 à 19:34
C'est normal, tu ne sauves pas le classeur Excel.
Suggestion:
Suggestion:
Option Compare Database Option Explicit Private Sub ty() Dim fenetre As Excel.Application, classeur As Excel.Workbook Dim chemin As String, recuperation As String chemin = Application.CurrentProject.Path & "\Classeur1.xlsx" Set fenetre = New Excel.Application Set classeur = fenetre.Workbooks.Open(chemin) recuperation = classeur.Sheets("Feuil1").Range("B1").Value MsgBox (recuperation) classeur.Sheets("Feuil1").Range("B2").Value = "Test envoie" MsgBox (classeur.Sheets("Feuil1").Range("B2").Value) Call classeur.Close(True) fenetre.Application.DisplayAlerts = False fenetre.Quit Set fenetre = Nothing Set classeur = Nothing End SubIl est nécessaire d'ajouter "Microsoft Excel nn Object Library" dans les références de l'application.