IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

recupérer valeur de champs


Sujet :

Access

  1. #1
    Membre du Club Avatar de Echizen1
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 80
    Points : 44
    Points
    44
    Par défaut recupérer valeur de champs
    Salut,
    Voilà, je débute en Access (vraiment tout début) et donc plein de problèmes.
    Le premier est le suivant.

    J’ai crée un formulaire et y ai mis 2 zone de texte et un bouton.
    Mon objectif est de créer un répertoire via access. Voici mon bout de code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub create_folder()
     
    If Len(Dir("D:\Toto\AAA", vbDirectory)) = 0 Then
    MkDir "D:\Toto\AAA"
    Else
    MsgBox "Le répertoire existe déjà"
    End If
     
    End Sub
    Le truc, c’est que je souhaite que le chemin et le nom du répertoire soit dynamique (c'est-à-dire récupérés dans les zones de textes.

    Comment faire ?

    Merci bien

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    243
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 243
    Points : 86
    Points
    86
    Par défaut
    il faut que tu récupére le chemin dans une variable string et ce que tu fais toi ne le permet pas...

    ya une fonction trés connu pour ca dans le site

    OuvrirUnFichier()

    BrowseForFolderShell()

    fais une petite recherche

  3. #3
    Membre du Club Avatar de Echizen1
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 80
    Points : 44
    Points
    44
    Par défaut
    J'ai beau chercher, je ne trouve pas...

    En fait, mes chemins sont connus par avance.
    donc, comme tu le dis, il faut que je crée dans mon code, deux variables String qui récupérent le contenu des deux zones de texte.

    Je ne vois pas comment écrire ce code

  4. #4
    Expert éminent sénior
    Avatar de Dolphy35
    Homme Profil pro
    Responsable Systemes d'Information
    Inscrit en
    Octobre 2004
    Messages
    4 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable Systemes d'Information
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 373
    Points : 11 218
    Points
    11 218
    Par défaut
    Salut,

    Comment est renseigné le chemin du dossier que tu veux créer ?


    Dolphy

  5. #5
    Membre du Club Avatar de Echizen1
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 80
    Points : 44
    Points
    44
    Par défaut
    Lorsque je crée mon formulaire (donc en mode création), je souhaite mettre le chemin : D:\Toto\ par défaut dans la zone de texte 1 et le nom de répertoire : AAA, par défaut dans la zone de texte 2.

    ça donnerait ça en fait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub create_folder()
    Dim chemin, dossier As String
    
    chemin = Texte1.Value
    dossier = Texte2.Value
    
    If Len(Dir("chemin\dossier", vbDirectory)) = 0 Then
    MkDir "chemin\dossier"
    Else
    MsgBox "Le répertoire existe déjà"
    End If
    
    End Sub

    Merci

  6. #6
    Expert éminent sénior
    Avatar de Dolphy35
    Homme Profil pro
    Responsable Systemes d'Information
    Inscrit en
    Octobre 2004
    Messages
    4 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable Systemes d'Information
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 373
    Points : 11 218
    Points
    11 218
    Par défaut
    Citation Envoyé par Echizen1
    Lorsque je crée mon formulaire (donc en mode création), je souhaite mettre le chemin : D:\Toto\ par défaut dans la zone de texte 1 et le nom de répertoire : AAA, par défaut dans la zone de texte 2.
    Je ne comprend pas tu veux mettre le chemin dans ta zone texte ou récupérer ce qu'il y a dans la zone texte ?

    Dolphy

  7. #7
    Membre du Club Avatar de Echizen1
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 80
    Points : 44
    Points
    44
    Par défaut
    Salut,
    C'est à dire qu'en mode création je mets un (chemin,dossier) par defaut, et dans le code je récupère ces informations dans 2 variables.
    comme ça, si le couple (chemin,dossier) change, il n'y a rien à faire dans le code pour l'utilisateur.

    C'est vrai que c'était pas forcément logique...

  8. #8
    Expert éminent sénior
    Avatar de Dolphy35
    Homme Profil pro
    Responsable Systemes d'Information
    Inscrit en
    Octobre 2004
    Messages
    4 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable Systemes d'Information
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 373
    Points : 11 218
    Points
    11 218
    Par défaut
    Désolé mais je ne comprends pas tout à fait ton problème, peux-tu ré-éxpliquer ce que tu veux vraiment.

    Ce que j' ai compris c'est que pour tes essais tu mets un chemin/dossier en dur (dans le code). Ce que tu veux c'est que l'utilistaeur renseigne deux champs ou c'est garder en mémoire les dossier/chemin pour une utilistaion ultèrieur ?


    Dolphy

  9. #9
    Membre du Club Avatar de Echizen1
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 80
    Points : 44
    Points
    44
    Par défaut
    Je souhaite que :
    la zone de texte 1 contienne le chemin par défaut : "D:\toto\"
    la zone de texte 2 contienne le nom de dossier par défaut : AAA
    Cela peuvent bien sûr être changé par l'utilisateur.

    Quant-au code,
    Il doit récupérer le contenu de chacune de ces deux zones de textes dans deux variables String.

    Cela dans le but de lancer le code plus haut permettant de vérifier si le répértoire à créer existe déjà. Si ce n'est pas le cas il créera le dossier AAA dans le chemin : D:\toto\

    voilà, voilà.

  10. #10
    Expert éminent sénior
    Avatar de Dolphy35
    Homme Profil pro
    Responsable Systemes d'Information
    Inscrit en
    Octobre 2004
    Messages
    4 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable Systemes d'Information
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 373
    Points : 11 218
    Points
    11 218
    Par défaut
    Ok, c'est plus clair.

    Ton code plus comporte des erreurs il ne faut pas entourer tes variables de guillemets si tu veux récupérer leurs valeurs.

    Par contre le \ il faut l'entourer de guillemets.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Dim chemin, dossier As String
     
    chemin = Texte1.Value
    dossier = Texte2.Value
     
    If Len(Dir(chemin & "\" & dossier, vbDirectory)) = 0 Then
    MkDir chemin & "\" & dossier
    Else
    MsgBox "Le répertoire existe déjà"
    End If
    Dolphy

  11. #11
    Membre du Club Avatar de Echizen1
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 80
    Points : 44
    Points
    44
    Par défaut
    Re bonsoir,
    malheureusement ça n'a pas l'air de marcher
    Il a coince à :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    chemin = Texte1.Value
    dossier = Texte2.Value


    J'ai joint en pj la base. Il n'y a que le formulaire et un petit module.
    Fichiers attachés Fichiers attachés

  12. #12
    Expert éminent sénior
    Avatar de Dolphy35
    Homme Profil pro
    Responsable Systemes d'Information
    Inscrit en
    Octobre 2004
    Messages
    4 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable Systemes d'Information
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 373
    Points : 11 218
    Points
    11 218
    Par défaut
    C'est normal que ça plante.

    tu as deux solutions :

    1-soit tu mets ton code dans l'évenement Sur Click de ton bouton Create :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Private Sub Commande1_Click()
     
    Dim chemin, dossier As String
     
    chemin = Texte2.Value
    dossier = Texte4.Value
     
    If Len(Dir(chemin & "\" & dossier, vbDirectory)) = 0 Then
    MkDir chemin & "\" & dossier
    Else
    MsgBox "Le répertoire existe déjà"
    End If
     
    End Sub
    2-Si tu veux créer absolument un module il faut que tu passe tes deux variables en paramètres.
    Formulaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub Commande1_Click()
     
        Call create_folder(Texte2.Value, Texte4.Value)
     
    End Sub
    Module
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub create_folder(chemin, dossier As String)
     
    If Len(Dir(chemin & "\" & dossier, vbDirectory)) = 0 Then
    MkDir chemin & "\" & dossier
    Else
    MsgBox "Le répertoire existe déjà"
    End If
     
    End Sub
    Dolphy

  13. #13
    Membre du Club Avatar de Echizen1
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 80
    Points : 44
    Points
    44
    Par défaut
    Impéccable !
    Trop fort ! Un grand merci pour ton aide vraiment appréciable !
    J'ai testé les deux méthodes et ça marche parfaitement !

    Un seul petit détail.
    Où est-ce qu'on peut marquer un chemin par défaut de manière à ce qu'à "l'exécution" du formulaire, celui-ci apparaisse (par défaut) dans la zone de texte ?
    (Surement dans les propriétés de la zone de texte mais je trouve pas, j'ai pourtant tout essayé)


    En un seul mot :

  14. #14
    Expert éminent sénior
    Avatar de Dolphy35
    Homme Profil pro
    Responsable Systemes d'Information
    Inscrit en
    Octobre 2004
    Messages
    4 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable Systemes d'Information
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 373
    Points : 11 218
    Points
    11 218
    Par défaut
    Salut,

    Dans la propriété 'Valeur par défaut' de l'onglet 'Données' de ton champs tu mets
    ="C:\Tutu"
    Dolphy

  15. #15
    Membre du Club Avatar de Echizen1
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 80
    Points : 44
    Points
    44
    Par défaut
    Un seul mot encore une fois. Un immense merci !

    Je passe le topic en resolu !

    Merci tout le monde

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Recupérer valeur d'un champ généré en js
    Par dbzes59113 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 22/02/2010, 16h47
  2. Recupérer valeur d'un champ au nom variable
    Par Khleo dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 07/11/2009, 12h46
  3. recupérer valeurs de champs alert undefined
    Par affreuxzozo dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 18/05/2009, 13h02
  4. Réponses: 8
    Dernier message: 19/11/2007, 23h12
  5. Recupérer valeur champ selon combobox
    Par enlair dans le forum VBA Access
    Réponses: 9
    Dernier message: 22/08/2007, 17h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo