Tableau de bord automatique à partir d'un update .csv

Bonjour,

Pour suivre mes ventes, je travaille avec un outil qui me permet d'exporter des rapports au format .csv.

Je souhaiterais créer un tableau de bord dans excel, que je pourrais mettre à jour automatiquement en uploadant la dernière version du fichier .csv.

Quelle est la meilleure manière de procéder?

J'ai une connaissance très limitée de tout ce qui est VBA, donc si vous connaissez des solutions qui impliquent de coder, tout lien vers un tutoriel serait d'une grande aide

Un grand merci pour votre aide,

Bonjour,

Sans connaitre la configuration de ton csv est le contenu des rapports que tu souhaites générer difficile d'aider

un bout de fichier csv en remplaçant les informations "trop personnelles" serait un bon début.

Par contre sans VBA je ne vois que l'ancienne méthode du "copier coller" l'onglet du csv dans un onglet de classeur

excel pour les traiter sous forme de TCD qui pourraient être actualisés après chaque "copier coller"

Voici un exemple de fichier !

Merci

89salesreport.csv (1.31 Ko)

Ok je vois,

il faudrait donc automatiser une convertion en colonne excel pour traiter les infos ensuite.

Pour tes tableaux , as tu pensé aux infos que tu souhaites récuperer sous forme de tableau ?

D'autant que pour le moment les titres de colonnes ne sont pas spécialement révélateurs pour nous

Bonjour,

Ouvre ton fichier avec excel puis onglet Données > convertir avec les bons paramètres(le séparateur de colonne est la virgule)

Cordialement

Bonjour,

Ouvre ton fichier avec excel puis onglet Données > convertir avec les bons paramètres(le séparateur de colonne est la virgule)

Cordialement

Bonjour, Zarik je pense que la conversion n'était pas le problème, mais l'automatisation de la conversion et le traitement des données dans la foulée..

Bonjour à tous,

Un premier jet en script.

Les 2 fichiers sont à coller dans un même dossier. Un double-clic sur le script Csv_vers_xlsx.vbs lit le csv et le transforme en resultat.xlsx

Pierre

105csv-vers-xlsx.zip (1.34 Ko)

Avec améliorations.

Edit : Mais je viens de voir que le demandeur est sur Mac!

Le vbscript ne doit pas être compatible!

84csv-vers-xlsx.zip (1.37 Ko)

Bonjour,

Merci beaucoup pour vos réponses et votre aide !

Mais effectivement, mon mac ne me permet pas d'ouvrir le vbscript... Connaissez-vous d'autres manières de faire ?

Merci d'avance,

Bonjour,

Merci beaucoup pour vos réponses et votre aide !

Mais effectivement, mon mac ne me permet pas d'ouvrir le vbscript... Connaissez-vous d'autres manières de faire ?

Merci d'avance,

Emprunter un PC?

Re

Sans aucune certitude (et surtout sans Mac), je te propose de tester le code suivant à mettre dans un module d'un fichier Excel quelconque placé dans le même dossier que le csv :

Option Explicit

Dim Rep As String, S As String

    Rep= ActiveWorkbook.Path & Application.PathSeparator
    S = Lire_Txt(Rep & "salesReport.csv")
    if not S = "" then Complete_xlsx S, Rep & "Resultat.xlsx"
    Msgbox "Traitement = ok"

' ***********************************************************************    
Function Lire_Txt(Ndf As String) As String
Dim i As Integer

    On Error GoTo errhdlr:
    i = FreeFile()
    Open Ndf For Binary Access Read As #i
    Lire_Txt = Space$(LOF(i))
    Get #i, , Lire_Txt
    Close #i
    Exit Function

errhdlr:
    Close #i
    Lire_Txt = ""
End Function

sub Complete_xlsx(S, Cible)
Dim derlg As Long, deb As Long, i As Long, j As Long
Dim lg As Variant, cl As Variant, flag As Boolean

    with ThisWorkbook.Sheets(1)
        derlg = .Cells(Rows.count, 1).End(xlup).Row
        if derlg=0 then deb = 1 else deb = 0
        lg = split(S, vbCrlf)
        for i = deb to ubound(lg)
            cl = split(lg(i),",")
            for j = 0 to ubound(cl)
                .Cells(i + derlg, j + 1).Value = Replace(cl(j),"""","")
            next 
        next
    end with
End Sub
Rechercher des sujets similaires à "tableau bord automatique partir update csv"