Lecture dans un classeur fermé excel 2010 .xlsx

  • Initiateur de la discussion Initiateur de la discussion Bill607
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Bill607

XLDnaute Nouveau
Bonjour à tous,

Je voudrai récupérer des cellules dans un classeur fermé ( je suis sous Excel 2010 )
mon code est le suivant :

Code:
Function LitUneCellule(repertoire As String, fichier As String, feuille As String, i As Integer)
  'Microsoft ActiveX DataObject 2.8 est coché, ce n'est pas ça le soucis ! 
  Dim cellule As String
  cellule = "A" & i & ":A" & i
  Application.Volatile
  Set cnn = New ADODB.Connection

'--- Connexion ---
 With cnn
        .Provider = "Microsoft.Jet.OLEDB.12.0"
        .ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" _
           & repertoire & "\" & fichier & ";Extended Properties=""Excel 12.0;HDR=NO;"""
       .Open          <---- ICI
    End With
    '-----------------
  
Set rs = cnn.Execute("SELECT * FROM [" & feuille & "$" & cellule & "]")
  LitUneCellule = rs(0)
  rs.Close
  cnn.Close
  Set rs = Nothing
  Set cnn = Nothing
End Function

Ma question est : Comment expliquez-vous que ce code marche nickel pour un fichier excel 2010 avec une extension .xlsm 2010 ( prenant en charge les macros ) et qu'il plante ( au niveau du 'ICI' ) quand je l'utilise sur une extension .xlsx 2010 ?


Tout commentaire sera le bienvenu 🙂

Merci beaucoup à tous !
 
Re : Lecture dans un classeur fermé excel 2010 .xlsx

Re


Sinon, je travaille sur ce genre de code:

Code:
 With ActiveSheet.ListObjects.Add(SourceType:=0, Source:=Array(Array( _
        "ODBC;DBQ=" & NomRepFich & ";DefaultDir=" & NomRep & ";Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DriverId=1046;" _
        ), Array( _
        "FIL=excel 12.0;MaxBufferSize=2048;MaxScanRows=8;PageTimeout=5;ReadOnly=0;SafeTransactions=0;Threads=3;UID=admin;UserCommitSync=" _
        ), Array("Yes;")), Destination:=Range("$A$1")).QueryTable
        .CommandText = Array( _
        "SELECT `DirAllImport$`.R, `DirAllImport$`.N, `DirAllImport$`.T, `DirAllImport$`.D, `DirAllImport$`.L" & Chr(13) & "" & Chr(10) & "FROM `DirAllI" _
        , _
        "mport$` `DirAllImport$`" & Chr(13) & "" & Chr(10) & "WHERE (`DirAllImport$`.N Like '%" & NRech & "%')" & Chr(13) & "" & Chr(10) & "ORDER BY `DirAllImport$`.D DESC" _
        )
        .RowNumbers = True
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .BackgroundQuery = True
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .PreserveColumnInfo = True
        '.ListObject.DisplayName = "Tableau_ReqRNTDL2012"
        .Refresh BackgroundQuery:=False
        '.local = True
    End With
 
Re : Lecture dans un classeur fermé excel 2010 .xlsx

Re

Je l'ai eu via l'entrergistreur de macros, en adaptant les variables.

Donc, le reste du code ne sert pas à grand chose. C'est juste pour te montrer le cheminement 🙂.
 
Re : Lecture dans un classeur fermé excel 2010 .xlsx

Bonjour à tous ,

Bizard , j'ai fais un test et cela fonctionne autant en xlsm avec macro évenementiel à l'onverture du classeur ,qu'en xlsx,
Aprés tout dépent des macros présentent dans le classeur interrogé ?
y-a-t-il des événementiels , si oui lesquelles ?

Cordialement
 
Re : Lecture dans un classeur fermé excel 2010 .xlsx

Re, Bonjour Camarchepas

Bizard , j'ai fais un test et cela fonctionne autant en xlsm avec macro évenementiel à l'onverture du classeur ,qu'en xlsx,
Aprés tout dépent des macros présentent dans le classeur interrogé ?
y-a-t-il des événementiels , si oui lesquelles ?

Mais sur du xlsx, tu ne dois pas avoir de codes 😕.
 
Re : Lecture dans un classeur fermé excel 2010 .xlsx

Re à tous

@ Mj : oui pas de code dans xlsx, on est bien d'accord.

Mais bon , je pense que les fichiers interrogés ont quelques chose de spécial : Cellules fusionnées , autre.


@ Bill - Si l'on pouvait avoir un exemple vidé des infos confidentielles pour vérifier ....
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour