Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 24/06/2011, 07h32   #1
Invité de passage
 
Sylvie Serplet
Inscription : décembre 2010
Messages : 19
Détails du profil
Informations personnelles :
Nom : Sylvie Serplet

Informations forums :
Inscription : décembre 2010
Messages : 19
Points : 4
Points : 4
Par défaut Creation dossiers nommes a partir d un champ d une requete

Bonjour,

Dans ma base de donnees j ai une requete qui me renvoie un resultat x et dont un des champ se nomme ''fournisseur''. Il peut y avoir plusieurs fois le meme fournisseur dans le resultat de la requete (6 fournisseurs au total mais pas forcement les 6 en meme temps).

A partir du resultat de ma requete je souhaiterai pouvoir creer des dossiers sur le bureau de mon PC (CreateFolder method ?) nommes a partir du champ fournisseur (1 seul dossier par founisseur).

Je n ai rien trouve qui fonctionne vraiment. Quelqu un aurait il une idee?

Merci d avance pour votre aide.

Cordialement,
Sylvie
ultima67 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/06/2011, 07h35   #2
Rédacteur/Modérateur
 
Avatar de Philippe JOCHMANS
 
Homme Philippe JOCHMANS
Développeur informatique
Inscription : mai 2005
Messages : 17 616
Détails du profil
Informations personnelles :
Nom : Homme Philippe JOCHMANS
Âge : 44
Localisation : France, Loir et Cher (Centre)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Communication - Médias

Informations forums :
Inscription : mai 2005
Messages : 17 616
Points : 30 954
Points : 30 954
Envoyer un message via MSN à Philippe JOCHMANS Envoyer un message via Skype™ à Philippe JOCHMANS
Bonjour

Quand tu dis que tu n'as rien trouvé qui fonctionne, il faudrait que tu expliques ce que tu as essayé de faire.

En effet il se peut qu'il y ait juste une petite modification de ton code à réaliser, cela aidera les membres du forum à te répondre.

Comment récupères tu l'information ? A partir d'un recordset ?

Philippe
__________________
Détaillez vos questions, sinon vous aurez des réponses erronées et vous irez tout droit dans le et lisez les règles sinon
Si vous pensez commencer sans un livre, oublier : livres pour débuter
Vous pouvez consulter mes articles sur Access et PowerPoint
Le blog Office.

Inutile de m'envoyer un MP pour des questions techniques ou de me relancer , je n'y répondrais pas.
Philippe JOCHMANS est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2011, 07h28   #3
Invité de passage
 
Sylvie Serplet
Inscription : décembre 2010
Messages : 19
Détails du profil
Informations personnelles :
Nom : Sylvie Serplet

Informations forums :
Inscription : décembre 2010
Messages : 19
Points : 4
Points : 4
Bonjour,

Je suis vraiment debutante en programmation VBA donc je suis tres loin d avoir compris toutes les subtilites du langage.
Voila le code que j essaye de faire fonctionner. En effet j utilise un recordset pour recuperer les informations. Le code bloque sur ''Set SQL'', le message d erreur est ''Objet required''.

Code :
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
27
28
29
30
31
Private Sub CreateSubFolder()
 
Dim DB As DAO.Database
Dim SQL As String
Dim RS As DAO.Recordset
Dim FSO As Object
Dim Path As String
 
Set DB = CurrentDb
Set SQL = "SELECT 'SubQrySDRpipe.Supplier' FROM 'QryStatusallDoc';"
Set RS = DB.OpenRecordset(SQL)
Set FSO = CreateObject("Scripting.FileSystemObject")
Set Path = "C:\Documents and Settings\sylvie.serplet\Desktop\Doc Control" & "\" & RS
 
Do Until RS.EOF
 
If Not FSO.FolderExists(Path) Then
 
FSO.CreateFolder (Path)
 
End If
 
RS.MoveNext
 
Loop
 
RS.Close
 
Set RS = Nothing
 
End Sub
Merci pour votre aide et votre patience...

Cordialement,
Sylvie
ultima67 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2011, 07h46   #4
Rédacteur/Modérateur
 
Avatar de Philippe JOCHMANS
 
Homme Philippe JOCHMANS
Développeur informatique
Inscription : mai 2005
Messages : 17 616
Détails du profil
Informations personnelles :
Nom : Homme Philippe JOCHMANS
Âge : 44
Localisation : France, Loir et Cher (Centre)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Communication - Médias

Informations forums :
Inscription : mai 2005
Messages : 17 616
Points : 30 954
Points : 30 954
Envoyer un message via MSN à Philippe JOCHMANS Envoyer un message via Skype™ à Philippe JOCHMANS
Re

SQL est une variable de type String, donc pas de SET devant, ce terme SET est réservé aux objets.

De même devant Path, change le nom, car c'est un mot réservé.

Philippe
__________________
Détaillez vos questions, sinon vous aurez des réponses erronées et vous irez tout droit dans le et lisez les règles sinon
Si vous pensez commencer sans un livre, oublier : livres pour débuter
Vous pouvez consulter mes articles sur Access et PowerPoint
Le blog Office.

Inutile de m'envoyer un MP pour des questions techniques ou de me relancer , je n'y répondrais pas.
Philippe JOCHMANS est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/06/2011, 07h26   #5
Invité de passage
 
Sylvie Serplet
Inscription : décembre 2010
Messages : 19
Détails du profil
Informations personnelles :
Nom : Sylvie Serplet

Informations forums :
Inscription : décembre 2010
Messages : 19
Points : 4
Points : 4
Bonjour,

Merci pour votre aide.
Le code me cree bien un nouveau dossier portant le nom du fournisseur mais uniquement du premier ''recordset''. On dirait que la methode ''loop'' ne fonctionne pas.
Je pense que le code n arrive pas a faire le lien entre le ''recordset'' et le dossier a creer ou alors qu il faut remettre a zero le ''recordset'' avant qu il lise la ligne suivante. Malheureusement je ne sais pas comment faire.
Je vous redonne le code une fois corrige.

Code :
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
27
28
29
30
31
Private Sub CreateSubFolder()
 
Dim DB As DAO.Database
Dim SQL As String
Dim RS As DAO.Recordset
Dim FSO As Object
Dim DestPath As String
 
Set DB = CurrentDb
SQL = "SELECT (SubQrySDRpipe.Supplier) FROM (QryStatusallDoc);"
Set RS = DB.OpenRecordset(SQL)
Set FSO = CreateObject("Scripting.FileSystemObject")
DestPath = "C:\Documents and Settings\sylvie.serplet\Desktop\Doc Control" & "\" & Me.Supplier
 
Do Until RS.EOF
 
If Not FSO.FolderExists(DestPath) Then
 
FSO.CreateFolder (DestPath)
 
End If
 
RS.MoveNext
 
Loop
 
RS.Close
 
Set RS = Nothing
 
End Sub
Merci pour votre patience.
Cordialement,
Sylvie
ultima67 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h42.


 
 
 
 
Partenaires

Hébergement Web