ADO sous Excel

Résolu/Fermé
Papyx Messages postés 315 Date d'inscription dimanche 16 septembre 2007 Statut Membre Dernière intervention 17 septembre 2021 - 16 sept. 2021 à 08:54
Papyx Messages postés 315 Date d'inscription dimanche 16 septembre 2007 Statut Membre Dernière intervention 17 septembre 2021 - 17 sept. 2021 à 09:50
Bonjour,

je suis sous office 2007.
Je voudrais savoir si on peut traiter plusieurs onglets dans un fichier Excel fermé, avec ADO?



Configuration: Windows / Chrome 93.0.4577.63
A voir également:

3 réponses

yg_be Messages postés 23535 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2025 Ambassadeur 1 579
16 sept. 2021 à 12:25
bonjour,
"traiter" consiste en quoi?
si cela fonctionne avec un onglet, je pense que cela devrait être faisable avec plusieurs.
si cela fonctionnait en 2007, cela devrait continuer à fonctionner, si tu utilises tous les mêmes logiciels qu'en 2007.
0
Papyx Messages postés 315 Date d'inscription dimanche 16 septembre 2007 Statut Membre Dernière intervention 17 septembre 2021 11
16 sept. 2021 à 13:09
je n'ai pas été assez clair (désolé)
En VBA depuis un fichier Excel,
je voudrais, avec ADO, accéder à plusieurs onglets d'un autre fichier Excel.
Pour l'instant je ne sais que lire la 1 ère feuille.
0
yg_be Messages postés 23535 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2025 1 579
16 sept. 2021 à 14:25
peut-être faut-il modifier le code?
0
Papyx Messages postés 315 Date d'inscription dimanche 16 septembre 2007 Statut Membre Dernière intervention 17 septembre 2021 11
Modifié le 17 sept. 2021 à 09:30
je ne dis pas que ça ne fonctionne pas;
je sais traiter (=lire le contenu) des onglets de façon classique. (Workbooks.Open)
C'est avec ADO que je sais pas faire.
Voici une partie du code VBA pour info :

Dim rs As New ADODB.Recordset
Dim MonFichier$
MonFichier = "C:\Users\alain\Dropbox\Annuaire téléphonique\Annuaire téléphonique.xls"
Dim Connexion As New ADODB.Connection
With Connexion
.Provider = "Microsoft.ACE.OLEDB.12.0"
.ConnectionString = "Data Source=" & MonFichier & _
";Extended Properties='Excel 12.0;HDR=YES;FMT=Delimited'"
.Open
const requ = "SELECT * FROM [Annuaire téléphonique$];"
Set rs = .Execute(requ)
.............
.Close
End With
0
yg_be Messages postés 23535 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2025 1 579
17 sept. 2021 à 09:38
je suppose que le code fonctionne, mais uniquement avec une feuille.
quel est le nom de cette feuille? vois-tu ce nom dans le code?
0
Papyx Messages postés 315 Date d'inscription dimanche 16 septembre 2007 Statut Membre Dernière intervention 17 septembre 2021 11 > yg_be Messages postés 23535 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2025
17 sept. 2021 à 09:50
OK, j'ai compris
Il s'agit du SELECT qui choisit la feuille.
C'est une erreur de ma part et je suis désolé de t'avoir accaparé pour ce détail.
Merci quand même pour ta contribution.
0