Récup d'une valeur dans fichier fermé

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

3idm

XLDnaute Nouveau
Bonjour à vous et merci de vous interresser à mon probléme.

Voilà :

Je cherche à récupérer la valeur de la cellule "B1" de la "feuil1" du fichier "temps.csv"
Cela sans ouvrir le fichier CSV et suretout sans nommer de cellule au préalable
J'ai une éternelle erreure de syntax , mais laquelle ????
😡
Help ! ! !


Code:
Private Sub Workbook_Open()  
Dim chemin As String
chemin = "'" & ActiveWorkbook.Path
[COLOR="Red"]Sheets("Feuil1").Range("A1") = ExecuteExcel4Macro(chemin & "\temp.csv'"Sheets("Feuil1").Range("B1").Value[/COLOR]
End Sub
 
Re : Récup d'une valeur dans fichier fermé

Merci de ton temps Banzai64,

Toujour pas bon , Message :

"Erreure "9",
l'indice n'apartient pas à la selection !"

???????????????????
J'ai nommé la feuille dans le fichier CSV, voilà donc mon codes :

Code:
Sub Bouton2_QuandClic()

  Dim chemin As String
chemin = "'" & ActiveWorkbook.Path

Sheets("Feuil1").Range("A1") = ExecuteExcel4Macro(chemin & "\TEMP.csv'" & Sheets("temp").Range("A1").Value)

End Sub

Merki😱
 
Re : Récup d'une valeur dans fichier fermé

bonjour


Tu ne peux pas traiter un fichier CSV comme un classeur Excel.


Pour lire "l'équivalent" de la cellule B1:

Code:
Dim Rc As Object
Dim Cn As String, Chemin As String, Fichier As String
    
'répertoire contenant le fichier CSV
Chemin = "C:\"
    
Fichier = "NomFichier.csv"
        
'----- requète pour récupérer le contenu du fichier txt
Cn = "Driver={Microsoft Text Driver (*.txt; *.csv)};" & _
    "Dbq=" & Chemin & ";Extensions=asc,csv,tab,txt"
        
Set Rc = CreateObject("ADODB.Recordset")
Rc.Open Source:="SELECT * FROM [" & Fichier & "]", ActiveConnection:=Cn
        
If Not Rc.EOF And Rc.Fields.Count >= 1 Then
    MsgBox Rc.Fields(1).Name
End If
 
Rc.Close
Set Rc = Nothing

ou

Code:
Dim Ligne As String
Dim Tableau() As String
 
Open "C:\NomFichier.csv" For Input As #1
    Line Input #1, Ligne
    Tableau = Split(Ligne, ";")
    MsgBox Tableau(1)
Close #1



Bonne journée
MichelXld
 
Re : Récup d'une valeur dans fichier fermé

Et bien, j'étais loin du compte avec mon petit code !

Merci beaucoup MichelXld ainsi qu'à toi Banzai pour ton attention

J'adopt la solu N°1 qui fonctionne bien dans mon appli, et qui me semble plus simple pour mon niveau.

🙂UN GRAND MERCI A TOUT LE FORUM 🙂
 
Re : Récup d'une valeur dans fichier fermé

rebonjour

Dans premier message j'ai pourtant bien précisé:
Tu ne peux pas traiter un fichier CSV comme un classeur Excel.
il n'y a pas de cellules dans ton fichier csv mais des données séparées par des point virgule.
Tu dois donc lire la deuxiéme ligne dans ton fichier csv pour en extraire le premier élément.


Bonne journée
MichelXld
 
Re : Récup d'une valeur dans fichier fermé

rebonjour


Code:
Sub Test()
    'Premier élément de la deuxième ligne
    MsgBox ExtraitdonneeCSV("C:\NomFichier.csv", 2, 1)
End Sub
 
Function ExtraitdonneeCSV(Fichier As String, _
        Ligne As Long, Colonne As Integer) As Variant
    
    Dim x As Integer, i As Integer
    Dim strLigne As String
    x = FreeFile
    Open Fichier For Input As #x
        Do
            i = i + 1
            Line Input #x, strLigne
        Loop Until i = Ligne
    Close #x
    
    ExtraitdonneeCSV = Split(strLigne, ";")(Colonne - 1)
End Function



Bonne journée
MichelXld
 
Re : Récup d'une valeur dans fichier fermé

Merci, je commence à comprendre.
C'est quand même pas simple !

Avec ton exemple, ça va mieux ! Je le garde précieusement car il faudra que j'y revienne prochainement . J'ai des progrés à faire......
Merci du coup de mains et de ta patience.

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