Bonsoir.
J'ai un formulaire nommé "Elèves", avec un champ "NOM" et un champ "Prénom" ... entre autre.
Je souhaiterais récupérer, un par un, tous les noms et prénoms de ce formulaire, et créer un dossier nommé "NOM_Prénom".
J'ai fait une fois de plus un bidouillage, qui marche, mais qui m'a généré quelques erreurs. Et je pense qu'il a certainement une meilleure alternative.
J'ai deux erreurs :
- le compteur se bloque à un moment donné, j'ai donc fait une gestion d'erreur pour sortir de la Boucle. Alternative qui marche ... mais pas très satisfaisante
- et quand les nom sont composés d'espace, style VAN DE BROOK Laurent ... cela ne me crée pas le dossier VAN DE BROOK_Laurent, mais VAN => Mkdir ne gère pas les espaces (d'où la présence du tiret bas d'ailleurs entre le nom et le prénom).
Voici mon code et quelle alternative pourrait être envisagée ?
Merci par avance. Bonne soirée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 Sub CreerTousLesDossiersEleves() Dim Chemin, Commande, NomPrenomDossier As String Dim nbEnregistrement As Integer nbEnregistrement = DCount("*", "Eleves") - 1 MsgBox nbEnregistrement DoCmd.GoToRecord , , acFirst 'MsgBox nb 'Crée d'un seul coup tous les répertoires For i = 1 To nbEnregistrement NomPrenomDossier = Nom.Value & "_" & Prénom.Value Chemin = Application.CurrentProject.Path & "\" & AnneeScolaire & "\" & "ESS" & "\" & NomPrenomDossier On Error GoTo GestionErreur DoCmd.GoToRecord , , acNext Commande = Environ("comspec") & " /c mkdir " & Chemin Shell Commande, 0 Next i GestionErreur: DoCmd.GoToRecord , , acFirst On Error Resume Next End Sub
Partager