XL 2019 Récupération de résultats depuis un CSV vers un fichier Excel

Hutchy33

XLDnaute Nouveau
Bonjour la communauté!
Besoin d'un peu d'aide pour un petit truc que certains(es) trouveront surement simple mais je me casse la tête depuis hier dessus sans obtenir le résultat voulu :rolleyes:
Voilà j'ai un fichier .csv de départ (qui est un export de résultats suite à un test QCM). Ce fichier comporte en colonne les thèmes des questions du QCM, et en lignes les bonnes réponses obtenues par le participant sur chaque thèmes.
Je souhaiterai pouvoir récupérer ces résultats dans un fichier .xlsm (car macro finale pour export vers un fichier .PDF) dans un tableau (fichier en pièce jointe) où j'ai repris chaque thème. Face à ces thèmes une colonne qui indiquera si le thème est validé ou pas. Voici les conditions de validation:
Chaque thème comporte 5 questions:​
  • Si le participant a au moins 3 bonnes réponses, thème validé et donc coche vert ✅pour OK dans la colonne C en face du thème
  • Si moins de 3 bonnes réponses alors thème non validé et croix rouge❌ en colonne C
Puis par la suite le bouton "Export PDF" pour restitution des résultats dans un fichier pdf.
Je joins bien évidement les fichiers de test sachant qu'on ne peut pas uploader de fichier .csv sur la plateforme, je l'ai donc renommé en .xslsx.
Je vous remercie beaucoup, celles ou ceux qui accorderont de leur temps à ma demande :cool:
 

Pièces jointes

  • QCM CDT new.xlsm
    16.3 KB · Affichages: 5
  • QCM Evolution de poste test 1 MFC- Evolution De Poste - Copie.xlsx
    11.8 KB · Affichages: 5
Solution
Bonjour Hutchy33,

Voyez le fichier .xlsm joint et la macro affectée au bouton :
VB:
Sub CSV()
Dim fichier As Variant, tablo
ChDir ThisWorkbook.Path
fichier = Application.GetOpenFilename("Fichiers CSV(*.csv),*.csv") 'choix du fichier CSV
If fichier = False Then Exit Sub
Application.ScreenUpdating = False
Range("B2:C" & Rows.Count).ClearContents 'RAZ
Workbooks.Open fichier, Local:=True
tablo = ActiveWorkbook.Sheets(1).[M1:CJ2] 'plage modifiable
ActiveWorkbook.Close
[B2].Resize(UBound(tablo, 2), 2) = Application.Transpose(tablo)
End Sub
MFC avec icônes en colonne C.

A+

Hutchy33

XLDnaute Nouveau
Bonjour,

Mon âme ne comprend pas ce qu'il faut faire avec le fichier CSV.

Indiquez le résultat que vous souhaitez obtenir.

A+
D'accord il me semblait que tout était bien claire dans mon explication plus haut, vous avez bien lu le premier post de ma demande?
Je joins une image du résultat attendu que je n'arrive pas produire. Merci pour l'aide.
 

Pièces jointes

  • Capture.JPG
    Capture.JPG
    166.7 KB · Affichages: 14

Hutchy33

XLDnaute Nouveau
Votre image ne correspond pas au fichier CSV fourni :

- Abo - Mutations n'existe pas dans le CSV

- Accueil - Accueil et Sécurité est noté 4 dans le CSV mais n'est pas validé.

Je ne vais pas plus loin.
Bonjour @job75,
Je vais reprendre toute mon explication puisque il semblerait que je n'ai pas été totalement clair...
Des participants réalisent un QCM de connaissances et mon but est de restituer un fichier résultats facile à lire, ce fichier final sera au format pdf.
A la suite du QCM on me fournit un fichier csv (en pièce jointe dans le zip). Je souhaite réaliser une matrice pour la restitution des résultats (fichier xlsm en pj).
Le QCM se fait sous forme de thèmes (74) avec 5 questions par thème (colonne M à CI dans le fichier csv) et le nombre de bonnes réponse par thème est écrit en dessous de la colonne thème.
Tout ces thèmes sont reportés sur la matrice dans la colonne B. Je souhaiterai qu'à l'ouverture de la matrice en xlsm il soit demandé de choisir le fichier à analyser (csv) et que lorsque au moins 3 bonnes réponses sont données pour le thème on est une coche verte dans la colonne C ✅ pour validation du thème, sinon coche croix rouge ❌ pour thème NOK, et donc ça pour chaque thème.
Et pour terminer produire une fichier pdf grasse au bouton Export PDF pour la restitution des résultats finaux.
Est-ce que c'est un peu plus clair maintenant?
L'image jpg fournies n'est pas en rapport avec les autres fichiers, c'est un exemple de se qui existait auparavant, les thèmes n'étaient pas forcement identiques.
Merci beaucoup.
 
Dernière édition:

job75

XLDnaute Barbatruc
Bonjour Hutchy33,

Voyez le fichier .xlsm joint et la macro affectée au bouton :
VB:
Sub CSV()
Dim fichier As Variant, tablo
ChDir ThisWorkbook.Path
fichier = Application.GetOpenFilename("Fichiers CSV(*.csv),*.csv") 'choix du fichier CSV
If fichier = False Then Exit Sub
Application.ScreenUpdating = False
Range("B2:C" & Rows.Count).ClearContents 'RAZ
Workbooks.Open fichier, Local:=True
tablo = ActiveWorkbook.Sheets(1).[M1:CJ2] 'plage modifiable
ActiveWorkbook.Close
[B2].Resize(UBound(tablo, 2), 2) = Application.Transpose(tablo)
End Sub
MFC avec icônes en colonne C.

A+
 

Pièces jointes

  • Fichiers.zip
    16.9 KB · Affichages: 5

Hutchy33

XLDnaute Nouveau
Bonjour Hutchy33,

Voyez le fichier .xlsm joint et la macro affectée au bouton :
VB:
Sub CSV()
Dim fichier As Variant, tablo
ChDir ThisWorkbook.Path
fichier = Application.GetOpenFilename("Fichiers CSV(*.csv),*.csv") 'choix du fichier CSV
If fichier = False Then Exit Sub
Application.ScreenUpdating = False
Range("B2:C" & Rows.Count).ClearContents 'RAZ
Workbooks.Open fichier, Local:=True
tablo = ActiveWorkbook.Sheets(1).[M1:CJ2] 'plage modifiable
ActiveWorkbook.Close
[B2].Resize(UBound(tablo, 2), 2) = Application.Transpose(tablo)
End Sub
MFC avec icônes en colonne C.

A+
Merci bcp @job75 ça fonctionne nickel!
 

Discussions similaires

Réponses
10
Affichages
312

Statistiques des forums

Discussions
312 207
Messages
2 086 248
Membres
103 164
dernier inscrit
axelheili2