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

VBA Access Discussion :

Inputbox, utiliser le résultat pour modifier un champ


Sujet :

VBA Access

  1. #1
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 43
    Par défaut Inputbox, utiliser le résultat pour modifier un champ
    Hello,
    Comme le titre l'indique je souhait créer une inputbox qui en fonction de la réponse de l'utilisateur modifie un autre champ.
    Voici mon code qui ne fonctionne pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     Dim resultat As String
    resultat = InputBox("Quel coefficient souhaitez vous appliquer pour votre prix de vente? ?", " Variation du prix de vente", "1.3")
    If IsNumeric(resultat) > 1.2 Then
    Me.Texte130.Value = IsNumeric(resultat) * Me.Texte122.Value
    Else
    MsgBox "veuillez saisir un coef supérieur "
    End If
    Me.Texte130.Requery
    End Sub
    texte 130 étant le champs a modifier.
    Dans l'attente d'une réponse.
    cordialement

  2. #2
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 596
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 80
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 596
    Par défaut
    Bonjour,

    Pas ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MsgBox "veuillez saisir un coef supérieur "
    Plutôt comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      Me.Texte130 = InputBox("veuillez saisir un coef supérieur ")

  3. #3
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 43
    Par défaut
    Merci, Claude de m'accorder de ton temps.
    Cependant ça résout pas du tout mon problème
    en gros j'ai texte 130 qui un champs calculer (1.2 * prix de revient)
    et je souhaite (dans la mesure du possible) que
    inputbox : quel nouveau coef ? si la réponse est supérieur à 1.2 alors
    me.texte130.value = "réponse de linputbox" (exemple 1.4) * prix de revient

  4. #4
    Expert confirmé Avatar de nico84
    Homme Profil pro
    Consultant/développeur ERP
    Inscrit en
    Mai 2008
    Messages
    3 130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant/développeur ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 3 130
    Par défaut
    Bonjour,

    isnumeric renvoie un booleen ! S'il est true il faut alors utiliser val(resultat) ou 1*resultat.

  5. #5
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 43
    Par défaut
    Alors, plus de message d'erreur du style "incompatibilité de type" et le code fonctionne dans le sens ou le else marche .
    Cependant pas de changement concernant le champ...

  6. #6
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 596
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 80
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 596
    Par défaut
    Montre ton formulaire avec le nom des contrôles et leur source, on gagnera du temps !
    Essaie de donner à tes objets, contrôles... des noms explicites (Coeff, PrixRevient...) sans utiliser d'espaces, caractères spéciaux... Ça facilite la compréhension et ça allège la syntaxe.

  7. #7
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 43
    Par défaut
    J'ai oublié de préciser que c'était un état put être ça qui bloque...
    prixdevente source de donnée = prixrevient*1.2
    Code bouton inputbox :
    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
     
    Private Sub inputcoef_Click()
     
     Dim resultat As String
     
    resultat = InputBox("Quel coefficient souhaitez vous appliquer pour votre prix de vente? ?", " Variation du prix de vente", Val(1.3))
    If Val(resultat) > 1.2 Then
     
     
    Dim prixrevient, prixvente As Double
     
    prixvente= Me.prixvente.Value
    prixrevient = Me.prixrevient.Value
    prixvente = Val(resultat) *prixrevient
     
    Else
    MsgBox ("yes")
     
    End If
    Me.prixvente.Requery
    End Sub

  8. #8
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 43
    Par défaut
    désolé du double post cependant personnes n'aurait une petite idée?

  9. #9
    Expert confirmé Avatar de nico84
    Homme Profil pro
    Consultant/développeur ERP
    Inscrit en
    Mai 2008
    Messages
    3 130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant/développeur ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 3 130
    Par défaut
    prixvente est une syntaxe abrégée de Me.prixvente.Value
    En déclarant une variable du même nom cela ne peut que semer l'embrouille

    Dit autrement, il n'y a aucune raison pour que la variable locale prixvente mette à jour le champ prixvente du formulaire ou de l'état...

  10. #10
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 43
    Par défaut
    J'ai pas tout compris.
    Que faut il modifier?

  11. #11
    Rédacteur/Modérateur
    Avatar de Jeannot45
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2004
    Messages
    3 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 871
    Par défaut


    Comme le disent très justement ClaudeLELOUP et nico84 les noms sont très importants dans le code tant au niveau des variables que des objets que tu utilises.
    je te conseille la lecture de cet excellent tuto sur les conventions typographiques du code Visual Basic

    Bonne lecture
    Jeannot

    Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., Sources VBA

    Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre

  12. #12
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 43
    Par défaut
    Bon je me dois de vous dire merci.
    Toutefois concernant mon problème je reste en standby, j'ai une solution alternative mais qui restreint le choix de l'utilisateur...(en fonction de la réponse choisit entrée dans l'inputbox un nouveau prix s'affiche ou non ).
    Je vais continuer a chercher pour ce que je voulais faire initialement mais pour l'instant je suis bloqué et j'aimerais bien une aide sur le cœur du problème(sauf si je passe tout a fait à coté ce qui est possible^^)

  13. #13
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 596
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 80
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 596
    Par défaut
    Toutefois concernant mon problème je reste en standby
    C'est peut-être parce que ta demande n'est pas claire : on croit d'abord qu'il s'agit d'un formulaire, ensuite tu annonces que c'est un état.

    Montre une image de ce que tu veux faire pour que ta demande soit plus concrète et qu'il ne faille pas deviner ce que tu essaies de faire et dans quelles circonstances.

  14. #14
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 43
    Par défaut
    Donc
    mon état se compose d'une première parti avec l'ensemble des gammes et nomenclatures de l'article( avec quantité et prix).
    Une deuxième partie (la ou ça me pose une colle) comme on peut le voir en dessous:
    Nom : screenshot.7.png
Affichages : 416
Taille : 16,3 KoNom : screenshot.7.png
Affichages : 362
Taille : 16,3 Ko
    prc: calculé grâce a la première partie
    prix de vente mini: prc*1.2

  15. #15
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 596
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 80
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 596
    Par défaut
    Désolé de ne pouvoir t'aider : j'utilise Access2000. Cette fonctionnalité (bouton de commande dans un état) n'existe pas dans cette version.

  16. #16
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 43
    Par défaut
    C'est rien merci de m'avoir accorder ton temps déjà
    Je pense, je vais laisser ma version "peu libre" mis en place .
    Par ce que je suis vraiment bloqué .
    A moins quelqu'un trouve une solution :/
    Cordialement

Discussions similaires

  1. [ACCESS 2000] Problème pour modifier un champ d'une table
    Par DeFCrew dans le forum VBA Access
    Réponses: 4
    Dernier message: 21/08/2008, 15h25
  2. utiliser as childcmd pour lier deux champs
    Par BOMBARDIER dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 02/02/2007, 18h44
  3. [MySQL] Erreur pour modifier des champs
    Par kevinf dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 12/11/2006, 22h47
  4. Probleme de requete UPDATE pour modifier de champs ds DBGRID
    Par cmoimeme dans le forum Bases de données
    Réponses: 26
    Dernier message: 06/12/2005, 13h56
  5. Réponses: 8
    Dernier message: 23/03/2005, 20h28

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