Bonjour,

J'ai rencontré un problème plutôt très curieux hier et je suis incapable de l'expliquer et encore moins de le corriger.
Pour le détail, je fais un extract des informations de sauvegarde sur un site, vers un fichier .csv.
J'utilise ensuite un fichier Excel avec une macro maison. Cette macro sélectionne le fichier .csv, récupère les lignes de cet extract, les copie dans une feuille de mon Excel et traite les données ensuite.
Jusque-là, rien de fou. Voici le code utilisé pour la sélection du fichier .csv et la copie des données vers mon fichier Excel :

Private Sub Bt_Import_Click()
Dim strFichier As String
Set fd = Application.FileDialog(msoFileDialogFilePicker)
With fd
.Filters.Clear
.Filters.Add "Fichiers CSV", "*.csv", 1
.Title = "Choisissez un fichier à importer"
.AllowMultiSelect = False
.InitialFileName = "https://xxxx.sharepoint.com/Documents partages/Technique/CLIENTS/xxxx/Reports backup/Extracts/"
If .Show = True Then
strFichier = .SelectedItems(1)
End If
End With
If strFichier = "" Then Exit Sub
Set xlBook = xlApp.Workbooks.Open(strFichier)
Set xlSheet = xlBook.Sheets(1)
lig = 6
While xlSheet.Range("A" & lig).Value <> ""
Range("A" & lig - 5 & ":N" & lig - 5).Value = xlSheet.Range("A" & lig & ":N" & lig).Value
lig = lig + 1
Wend
reponse = MsgBox("Ligne atteinte : " & lig, vbInformation, "Test")
xlBook.Close
xlApp.Quit
Set xlSheet = Nothing
Set xlBook = Nothing
Set xlApp = Nothing
[...]

Voici le fichier .csv qui se nomme Extract_20230629.csv contenant 4276 lignes :

Nom : Extract csv.jpg
Affichages : 185
Taille : 1,17 Mo

Quand je lance ma macro en l'état, voici le résultat obtenu :

Nom : Macro résultat incorrect.jpg
Affichages : 176
Taille : 881,4 Ko

Comme on peut le voir, la première cellule A1 n'est pas la valeur de la cellule A6 prévue dans le fichier .csv.
On voit aussi qu'à la fin de la macro, un msgbox m'indique la dernière ligne atteinte dans le .csv -> ligne 1083 au lieu des 4276 ligne du fichier.
Dernière chose illogique est le nombre de colonnes copiées; de A à K alors qu'il y a des valeur jusqu'à la colonne N en théorie.

Là déjà, j'ai du mal à comprendre. Parce que j'utilise ce type d'extract et cette macro depuis des mois sans problème manifeste.
Mais c'est à partir de maintenant que vous allez voir la folie de mon problème!!!

J'ai testé une multitude de possibilités. Pour aller au plus simple :
- Si je renomme le fichier .csv en le laissant dans le même dossier (emplacement), la macro fonctionne impeccablement.
- Si je déplace le fichier .csv dans un autre dossier en conservant son nom à l'identique, la macro fonctionne impeccablement.

Voici le résultat (attendu et fonctionnel) :

Nom : Macro résultat OK.jpg
Affichages : 184
Taille : 764,7 Ko

La première cellule A1 contient bien la première ligne A6 du fichier .csv.
La ligne atteinte en fin de lecture est bien 4277 dans le fichier .csv.
Les 14 premières colonnes sont bien renseignées à la copie (colonne N vide dans la plupart des cas, c'est normal).

Et manifestement, je n'ai ce problème qu'avec le fichier en date du 29 juin 2023. Tous les autres fonctionnent.

Je suis extrêmement curieux de comprendre la raison de cette erreur.
Merci pour vos lumières.
Myg