Se connecter

Informatique

Programmation

Sujet : [excel] Problème importation VBA avec saut de ligne
1
Torama
Niveau 47
15 juin 2024 à 02:39:40

Hello, j'ai un code d'importation VBA
les csv que je télécharge ont des saut de ligne, ce qui casse l'importation

Code VBA

Sub UpdateCSVSheet()
Dim ws As Worksheet
Dim csvPath As String
Dim latestCSV As String
Dim fileName As String

' Référencer l'onglet "Dashboard"
Set ws = ThisWorkbook.Sheets("Dashboard")

' Récupérer le chemin du dossier contenant les fichiers CSV depuis la cellule H8
csvPath = ws.Range("G2").Value

' Vérifier si le chemin récupéré est vide ou non
If csvPath = "" Then
MsgBox "Le chemin du dossier CSV n'est pas spécifié dans la cellule G2.", vbExclamation
Exit Sub
End If

' Ajouter un backslash à la fin du chemin s'il n'y en a pas
If Right(csvPath, 1) <> "\" Then
csvPath = csvPath & "\"
End If

' Initialiser la variable pour stocker le fichier le plus récent
latestCSV = ""

' Rechercher le fichier CSV le plus récent
fileName = Dir(csvPath & "*.csv")
Do While fileName <> ""
' Stocker le chemin complet du fichier le plus récent
latestCSV = csvPath & fileName
fileName = Dir
Loop

' Vérifier si un fichier a été trouvé
If latestCSV = "" Then
MsgBox "Aucun fichier CSV trouvé dans le dossier spécifié.", vbExclamation
Exit Sub
End If

' Référencer l'onglet "ongletcsv" dans le classeur actif
Set ws = ThisWorkbook.Sheets("ongletcsv")

' Effacer les données existantes dans l'onglet "ongletcsv"
ws.Cells.Clear

' Importer les données du fichier CSV trouvé
With ws.QueryTables.Add(Connection:="TEXT;" & latestCSV, Destination:=ws.Range("A1"))
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = True
.TextFileCommaDelimiter = False
.TextFilePlatform = xlWindows
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.Refresh BackgroundQuery:=False
End With

' Message de confirmation de la mise à jour des données
MsgBox "Données mises à jour avec succès.", vbInformation
End Sub

Code CSV qui s'importe mal (chaque saut de ligne sera réel lors de l'importation au lieu de se mettre dans une seule case)

"A1";"B1";"C3"
"A2";"B2";"C2-ligne 1

C2-ligne 3

C2-ligne 6"
"A3";"B3";"C3"

l'importation est comme ça
https://www.noelshack.com/2024-24-6-1718411906-image.png
Mais dans le csv originel c'est comme ça
https://www.noelshack.com/2024-24-6-1718411969-image.png

1
Sujet : [excel] Problème importation VBA avec saut de ligne
News événement
Jouez et tentez de remporter des places de cinéma ainsi que des goodies du film Kraven The Hunter
   Retour haut de page
Consulter la version web de cette page