Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Problème pour lire un fichier fermé .xlsm contenant une feuille Graph.

seb_sams

XLDnaute Nouveau
Bonjour,

Je cherche à récupérer une plage de données dans un fichier fermé .xlsm. Ce fichier contient une feuille "Graph1" qui me pose problème. J'obtiens le message :
La table externe n'est pas dans le format attendu.

Mon code est le suivant :
Code:
Sub Lire_Classeur_Ferme()
Dim source As ADODB.Connection
Dim Rst As ADODB.Recordset
Dim ADOCommand As ADODB.Command
Dim Chemin As String, Cellule As String, Feuille As String
Dim Tableau As Variant

Feuille = "Feuil1$" 'n'oubliez pas d'ajouter $ au nom de la feuille.
Chemin = "C:\Tools\Classeur_ferme.xlsm"
Set source = New ADODB.Connection
source.Open "Provider=Microsoft.Ace.OLEDB.12.0;" & "Data Source=" & Chemin & ";Extended Properties=""Excel 8.0;IMEX=1;HDR=NO;"";"

Set ADOCommand = New ADODB.Command
With ADOCommand
    .ActiveConnection = source
    .CommandText = "SELECT * FROM [" & Feuille & "]"
End With

Set Rst = New ADODB.Recordset
Rst.Open ADOCommand, , adOpenKeyset, adLockOptimistic

Dim nombre As Integer
nombre = 1000
Cellule = "A4:J" & nombre
Set Rst = source.Execute("[" & Feuille & Cellule & "]")

Tableau = Rst.GetRows

Rst.Close
source.Close
Set source = Nothing
Set Rst = Nothing
Set ADOCommand = Nothing

End Sub

Est-ce que quelqu'un a déjà rencontré ce problème ? Si oui, y a-t-il une solution ?

Merci d'avance pour votre aide.
Cordialement,
Sebastien
 

Pièces jointes

  • Classeur_avec_module_lecture.xlsm
    19.4 KB · Affichages: 18
  • Classeur_ferme.xlsm
    19.1 KB · Affichages: 32
  • Classeur_avec_module_lecture.xlsm
    19.4 KB · Affichages: 22
  • Classeur_avec_module_lecture.xlsm
    19.4 KB · Affichages: 22
Dernière édition:

camarchepas

XLDnaute Barbatruc
Re : Problème pour lire un fichier fermé .xlsm contenant une feuille Graph.

Bonjour ,

Le code c'est déjà un bon point , mais l'on ne peut rien tester si l'on à pas ce fameux graphique , d'oou le peu de réponse
 

seb_sams

XLDnaute Nouveau
Re : Problème pour lire un fichier fermé .xlsm contenant une feuille Graph.

Merci de vous intéresser à mon problème.
Je viens d'uploader le fichier fermé qui pose problème et un fichier avec le code pour lire.

Cordialement,
 

camarchepas

XLDnaute Barbatruc
Re : Problème pour lire un fichier fermé .xlsm contenant une feuille Graph.

Seb ,

Je suis désolé ,

Je vais avoir du mal à t'aider car chez moi sous Excel 2010 , ça fonctionne tel que.

Juste regarder peut être si la bibliothéque Microsoft activex data object XX.X library est bien déclarée

Ci joint le fichier avec le retour requête sous la feuil2 via un tout petit bout de code supplémentaire
 

Pièces jointes

  • Classeur_avec_module_lecture.xlsm
    21.9 KB · Affichages: 37
  • Classeur_avec_module_lecture.xlsm
    21.9 KB · Affichages: 39
  • Classeur_avec_module_lecture.xlsm
    21.9 KB · Affichages: 38

seb_sams

XLDnaute Nouveau
Re : Problème pour lire un fichier fermé .xlsm contenant une feuille Graph.

Bonjour,

Je viens de vérifier sur un autre PC avec Office 2010 et effectivement, ça marche parfaitement.
La bibliothèque Microsoft activex data object 2.8 library est déclarée.
Je pense que je vais devoir me passer de mes feuilles "Graph" dans le classeur fermé.

Merci encore d'avoir jeté un œil sur mon problème.
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…