Lire un fichier excel sans l'ouvrir

  • Initiateur de la discussion Initiateur de la discussion Popi14
  • 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 !

Popi14

XLDnaute Junior
Bonjour à toutes et à tous,

J'aimerais savoir si cela est possible de lire un fichier Excel sans l'ouvrir et de copier la valeur dans le classeur qui est actuellement ouvert.

J'ai trouvé cette formule sur le net mais elle ne fonctionne pas 🙄

='C:\Documents and Settings\mzdsl\Desktop\Laurent\Test_incident\Qualité\[P1501.xls]Feuil4!A1

J'espère que vous pourrez m'aiguiller,

Merci pour tous,

PopI14
 
Re : Lire un fichier excel sans l'ouvrir

Bonjour,
copier une valeur de celulle d'un classeur sans l'ouvrir, à ma connaissance non.
Mais s'il y a une liaison entre le fichier ouvert et le fichier fermé, la liaison demandera s'il faut mettre à jour, et si OK, l'actualisation se fera.
Sans plus de précision...
@+
 
Re : Lire un fichier excel sans l'ouvrir

Bonjour,

C'est possible avec un peu de VBA ou une macroXL4 (dite de Wlkenbach)si tu n'as qu'une valeur à chercher.

Tu as tout un topo sur lire et écrire dans un classeur fermé dans la FAQ de ce site a wikipage6 de Michel XLD;

Bonne découverte et n'hésite pas pour de + amples renseignements
 
Re : Lire un fichier excel sans l'ouvrir

re,

petit goodie avec la macro de Walkenbach



mavar= ExecuteExcel4Macro('C:\mes documents\riri\[Classeur1.xls]Feuil3'!R2C2)




mavar prend la valeur de la cellule B2 de feuil3 du classeur fermé classeur1.xls
 
Re : Lire un fichier excel sans l'ouvrir

Oui c'est possible sans problemes , pour qqs valeurs via
Code:
Private Function ExtraireValeur(ByVal Dossier As String, ByVal Fichier As String, ByVal Feuille As String, ByVal Cellule As String)
Dim Argument As String
    Fichier = Replace(Fichier, "'", "''")
    Argument = "'" & Dossier & "[" & Fichier & "]" & Feuille & "'!" & Range(Cellule).Address(, , xlR1C1)
    ExtraireValeur = ExecuteExcel4Macro(Argument)
End Function

ce qui donne qqch comme
Code:
...
sDossier = "C:\Faq\FaqVba\Exemples\LectureDonnees\CV\Datas_03\EchCADReçus"
sNomFichier="essai.xls"
sNomFeuille  = "Feuil1"

Cells(1, 1) = ExtraireValeur(sDossier, sNomFichier, sNomFeuille, "A10")
Ou via ADO pour une plage de cellules contigues, voir Lire et écrire dans les classeurs Excel fermés - Club d'entraide des développeurs francophones
 
Dernière édition:
Re : Lire un fichier excel sans l'ouvrir

Re-bonjour,

Grâce à votre aide, ma macro fonctionne presque car j'ai un dernier ptit problème.

Je vais chercher des dates dans mes fichiers Excel par exemple:
21/12/2008

et mon problème c'est que je récupére 39803.

Pourriez-vous m'aider à avoir dans mon fichier de destination le bon format pour ma date car je ne vois pas comment faire.

Encore merci pour tous,

Laurent
 
Re : Lire un fichier excel sans l'ouvrir

Bonjour kiki,

Je sais faire un Cdate() sur worksheets("Feuil1").Range("A1").value mais sur le code que j'ai récupéré pour lire la cellule d'un fichier sans l'ouvrir et bien je ne sais pas !

Mon code est le suivant:

Sub ImporterDepuisPlusieursClasseurs()

Dim Cell As Range
Dim Y As Byte

For Each Cell In Range("A1:A4") 'liste des fichiers à ouvrir
For Y = 2 To 5 'les colonnes
With ActiveSheet.Cells(Cell.Row, Y)
.FormulaArray = "='" & ThisWorkbook.Path & "\[" & Cell & "]" & "Feuil1" & "'!" & Cells(1, Y - 1).Address(0, 0)
'chemin 'nom du fichier 'Cellules de lecture
.Value = .Value
End With
Next Y
Next Cell

End Sub



Pourriez-vous m'aider car je suis un peu perdu,

je vous remercie d'avance,

Bonne soirée

Laurent alias Popi14
 
Re : Lire un fichier excel sans l'ouvrir

Bonjour Popi14
normalement une syntaxe style:

+'C:\Documents\Rangement01\Bases\Countries\[country_classification_historique.xls]categories'!$N$5

te donnera le résultat souhaité ( avec:
entre guillemets simples:
chemin d'accès: C:\Documents\Rangement01\Bases\Countries\
nom du fichier xls: [country_classification_historique.xls]
nom de l'intercalaire: Categories

et en dehors des guillement
adresse de la celule: !$N$5

Bon courage
Joliemaman007

Bonjour à toutes et à tous,

J'aimerais savoir si cela est possible de lire un fichier Excel sans l'ouvrir et de copier la valeur dans le classeur qui est actuellement ouvert.

J'ai trouvé cette formule sur le net mais elle ne fonctionne pas 🙄

='C:\Documents and Settings\mzdsl\Desktop\Laurent\Test_incident\Qualité\[P1501.xls]Feuil4!A1

J'espère que vous pourrez m'aiguiller,

Merci pour tous,

PopI14
 
- 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