Excel, VBA, ADO, lire entête de page

Fermé
jjdk Messages postés 250 Date d'inscription mardi 16 septembre 2003 Statut Membre Dernière intervention 22 septembre 2022 - 22 avril 2005 à 15:43
 Utilisateur anonyme - 29 avril 2005 à 01:31
Bonjour


Je cherche comment lire depuis une feuille Excel, par du code VBA, via une connection ADO, la valeur de l'entête de page (partie droite) d'une feuille dans un autre classeur fermé.
Merci pour toute info.
jjd
A voir également:

4 réponses

Utilisateur anonyme
22 avril 2005 à 15:55
Salut,

Ici, tout ce que tu as toujours voulu savoir :-)
http://www.excelabo.net/xl/fichiers.php#liresansouvrir

Lupin
0
jjdk Messages postés 250 Date d'inscription mardi 16 septembre 2003 Statut Membre Dernière intervention 22 septembre 2022 60
22 avril 2005 à 17:52
Bonjour
Merci pour l'info, par contre le code dans ce lien n'utilise pas une connection ADO

Mon code est celui ci

dbConnectionString = "DRIVER={Microsoft Excel Driver (*.xls)};ReadOnly=1;& "DBQ=" & FileName
'----------------------------
''Connection et création du recordset
'----------------------------
Set dbConnection = New ADODB.Connection
dbConnection.Open dbConnectionString
Set rs = dbConnection.Execute("[" & RangeName & "]")

je recupère facilement dans le fichier exccel fermé "filename" les valeurs des plages de cellules indiquées dans RangeName mais je ne trouve pas la synthaxe pour recupérer la valeur de la partie droite de l'entête de page de cette même feuille de calcul. (autrement dit quoi mettre comme paramètre à dbConnection.Execute à la place de "[" & RangeName & "]"

Si quelqu'un a une idée ?
merci par avance
0
Utilisateur anonyme
22 avril 2005 à 19:46
re:

pour ma part, je ne sais pas, si j'ai bien compris ce que tu veux :
tu cherches a accéder à ces objets :

ActiveSheet.PageSetup.LeftHeader
ActiveSheet.PageSetup.CenterHeader

et celui-ci plus particulièrement !
ActiveSheet.PageSetup.RightHeader

Lupin
0
jjdk Messages postés 250 Date d'inscription mardi 16 septembre 2003 Statut Membre Dernière intervention 22 septembre 2022 60
28 avril 2005 à 11:55
Salut

Effectivement je cherche à recuperer la valeur de cette proporiété workSheets("mysheet").PageSetup.RightHeader mais en utilisant une connection ADODB avec l'autre classeur.
Du genre :
Set myRecordset = myADODBConnection.Execute("[" & je mets quoi ici pour récupérer une valeur dans l'entete de l'autre feuille & "]")

Pour l'instant j'ai lachement éludé le problème en demandant à ce que l'info qui m'intéresse ne soit plus mise dans l'entete mais dans une cellule

jjd
0
Utilisateur anonyme
29 avril 2005 à 01:31
re:

je ne me suis jamais connecté par ADO, alors je ne peux que spéculer...

alors voici comment je procèderais intuitivement :
Set myRecordset = myADODBConnection.Execute("[" & NomDeModule.NomFonction & "]")

---------------------------------------
Function NomFonction() As String
....NomFonction = ActiveSheet.PageSetup.RightHeader
End Function
---------------------------------------

Lupin
0