[Résolu]: Ouvrir un fichier fermé, et copier les données d'un onglet variable

Cra49

XLDnaute Nouveau
Bonjour,

J'ai besoin d'un petit (gros peut-être même!) coup de pouce! Ayant l'habitude de fouiner sur les forums pour me dépanner, je n'ai malheureusement pas trouvé la réponse à ma question ce coup ci. Je vous explique mon problème:

J'ai un fichier "classeur 1" dans lequel je voudrais réaliser une synthèse d'un ensemble de données pris dans d'autres classeurs fermés.
En choisissant la semaine (par exemple : 2 (cellule C1) et le jour (exemple : mardi cellule C2) dans ce classeur 1, je souhaiterai récupérer le nombre de pomme, de l'onglet "Sem 02", de mardi, du "classeur 2" (par exemple).

Deux complexités en plus :
1- Certains des classeurs sont en lecture seule
2- Certains des classeurs ont des cellules verrouillées (mais je peux avoir les mots de passe, je ne peux cependant pas les supprimer)

J'avais trouvé un code pour une fonction, mais en l'appelant cela me met "nom?" ou "valeur?"

Function LireCellule_ClasseurFerme( _
Chemin As String, _
Fichier As String, _
Feuille As String, _
Cellule As Variant) As Variant

Application.Volatile

Dim Source As Object, Rst As Object, ADOCommand As Object
Dim Cible As String

Feuille = Feuille & "$"
Cible = Cellule.Address(0, 0, xlA1, 0) & ":" & _
Cellule.Address(0, 0, xlA1, 0)

Set Source = CreateObject("ADODB.Connection")
Source.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & Chemin & "\" & Fichier & _
";Extended Properties=""Excel 8.0;HDR=No;"";"

Set ADOCommand = CreateObject("ADODB.Command")
With ADOCommand
.ActiveConnection = Source
.CommandText = "SELECT * FROM [" & Feuille & Cible & "]"
End With

Set Rst = CreateObject("ADODB.Recordset")
'1 = adOpenKeyset, 3 = adLockOptimistic
Rst.Open ADOCommand, , 1, 3
Set Rst = Source.Execute("[" & Feuille & Cible & "]")

LireCellule_ClasseurFerme = Rst(0).Value

Rst.Close
Source.Close
Set Source = Nothing
Set Rst = Nothing
Set ADOCommand = Nothing
End Function

J'espère avoir été claire. Merci de votre aide!
 

Pièces jointes

  • Classeur1.xls
    25.5 KB · Affichages: 28
  • Classeur2.xls
    20.5 KB · Affichages: 26
  • Classeur1.xls
    25.5 KB · Affichages: 29
  • Classeur2.xls
    20.5 KB · Affichages: 27
  • Classeur1.xls
    25.5 KB · Affichages: 22
  • Classeur2.xls
    20.5 KB · Affichages: 29
Dernière édition:

Paritec

XLDnaute Barbatruc
Re : Ouvrir un fichier fermé, et copier les données d'un onglet variable

Bonjour Cra49 le forum
voilà tu décompresses le dossier sur ton bureau et tu ouvres Classeur1 là tu cliques sur le bouton "chercher" et tu renseignes la semaine et le jour dans l'userform
a+
Papou:eek:
 

Pièces jointes

  • Cra49 v2.zip
    30.2 KB · Affichages: 26
Dernière édition:

Paritec

XLDnaute Barbatruc
Re : Ouvrir un fichier fermé, et copier les données d'un onglet variable

Re Cra49 le forum
oui y'a plus qu'a !!!! mais si ton fichier ne ressemble pas à tes deux fichiers que tu avais mis en exemple tu auras certainement du mal à l'adapter enfin tu verras bien
a+
Papou:eek:
 

Cra49

XLDnaute Nouveau
Re : Ouvrir un fichier fermé, et copier les données d'un onglet variable

Re Papou, Re le Forum,

Désolé pour la lenteur de la réponse, ton code était parfait, j'ai réussi à l'adapter parfaitement à mes fichiers c'est nickel, encore un grand merci pour ton aide !

A+,

Cra
 

Paritec

XLDnaute Barbatruc
Re : [Résolu]: Ouvrir un fichier fermé, et copier les données d'un onglet variable

Bonjour Cra49 le forum
bah oui tu es long à la détente, un mois pour un retour !!!
En tout cas merci de ce retour qui prouve que je n'avais pas travaillé pour rien
a+
Papou:eek:
 

Discussions similaires

Statistiques des forums

Discussions
311 730
Messages
2 081 981
Membres
101 855
dernier inscrit
alexis345