XL 2019 Débute en vba, exécuter mon code dans une cellule précise

telemarrk

XLDnaute Occasionnel
Bonjour,

Je me lance au VBA d'Excel, pour m'exercer j'utilise un code VBA trouvait sur le net qui me permet de lister le contenu d'un dossier.
Mais je n'arrive pas à l'appliquer en A3 il l'éxécute en A1.
J'ai essayé de mettre i = i + 3, il me place bien en A3 met il décale tous les 3 lignes

Code :

Dim Rep As String, Fichier As String
Dim i As Integer

Rep = "D:\chemin..."
Fichier = Dir(Rep)
Do While Fichier <> ""
i = i + 1
Sheets("Feuil1").Range("A" & i) = Fichier
Fichier = Dir
Loop

Je ne sais pas si je dois le mettre en WorkBook - Open ou dans un module. Le but étant que la macro s'éxécute au démarrage.

Merci pour votre aide.
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
???
Il ne range pas par ordre croissant, mais dans l'ordre où il les trouve dans le dossier.
A aucun moment vous avez demandé un rangement par ordre alpha !
Testez cette PJ, j'ai rajouté :
VB:
DL = Range("A65500").End(xlUp).Row
Range("A3:B" & DL).Resize(DL).Sort key1:=Range("A3"), order1:=xlAscending, Header:=xlYes
 

Pièces jointes

  • Telemarrk.xlsm
    15.5 KB · Affichages: 2

sylvanu

XLDnaute Barbatruc
Supporter XLD
Si vous faites :
VB:
Dossier = ThisWorkbook.Path & "\*.pdf"
Cela donnerait avec votre dossier par exemple "D:\MesDocuments\" le dossier suivant :
VB:
Dossier = "D:\MesDocuments\*.pdf"
Ce qui ne voudrait rien dire pour le VBA. Il s'attend à trouver un chemin de dossier existant.
 

Discussions similaires

Réponses
2
Affichages
305

Statistiques des forums

Discussions
312 505
Messages
2 089 070
Membres
104 020
dernier inscrit
Mzghal