Bonjour,
Je relis ton code. C'est du VB. Alors pourquoi ces codes HTML ?
Citation :
A la ligne "Do While" ça ne fonctionne plus
T'es gentil, mais il y en a plusieurs !
Ligne 20, tu utilises la variable j. Elle n'est ni déclarée, ni initialisée.
Ligne 20, toujours, tu précises le classeur, puis la feuille, puis la cellule. C'est bien.
Ligne 22, 24, 25, tu ne précises plus le classeur. Attention !
Mais pourquoi crées-tu un objet FileSystemObject ?
Tu ne te sers pas de
dossier, et récupérer le nom du fichier d'un classeur que tu connais pour l'identifier est ridicule.
' // Code tordu !
Dim oFSO
Dim strCheminComp As String
Set oFSO = CreateObject("Scripting.FileSystemObject" )
strCheminComp = ThisWorkbook.FullName
Fichier = oFSO.GetBaseName(strCheminComp)
Do While Workbooks("" & Fichier & ".xls" ).Sheets("résultats" ).Cells(2, j).Value <> ""
' // Code simple, en une seule ligne !
Do While ThisWorkbook.Worksheets("résultats").Cells(2, j).Value <> ""
-----------------------------------------------------
Excel est un tableur, pas un système de gestion de bases de données. Il faudrait reconsidérer le choix de tes outils. Si tu disposes d'Access, je t'invite à t'y intéresser.
-----------------------------------------------------
Je n'ai pas compris pourquoi on te dit de passer par un fichier .csv.
D'après tes explications, tes fichiers .csv ne feront jamais plus de 65536 lignes (la limite exacte des feuilles Excel). Par ailleurs, si tes fichiers .csv venaient à dépasser cette limite, il ne pourraient plus être lus dans Excel. Mais peut-être n'est-ce pas la finalité.
-----------------------------------------------------
Plutôt que de corriger ce code, ce qui est somme toute facile, je te propose de reconsidérer la question. Nous pouvons t'aider