Fonction visual basic

Résolu
Bonjour,
Quelqu'un pourrait-il m'aider écrire une macro en visual basic.
Voici mon besoin
Si combox4 = "A", alors textbox3 = feuille constantes cellule G69
Si combox4 = "B", alors textbox3 = feuille constantes cellule G70
Si combox4 = "C", alors textbox3 = feuille constantes cellule G71
Si combox4 = "D", alors textbox3 = feuille constantes cellule G72
Si combox4 = "E", alors textbox3 = feuille constantes cellule G73
Si combox4 = "EXT", alors textbox3 = feuille constantes cellule G74
Si combox4 = "Garderie", alors textbox3 = feuille constantes cellule G75
Merci pour votre aide
CDLT
Configuration: Windows / Chrome 75.0.3770.142

5 réponses

  1. Bonjour

    IF combox4 = "A" THEN textbox3.value = sheets("constantes").Range("G69")

    Le reste selon le même modèle

    Cdlmnt
    Via
    0
    1. Merci via55 pour ta réponse
      malheureusement quand je mets "A" dans la combobox4, la valeur de la cellule G69 de la feuille "constantes" n’apparaît pas automatiquement dans ma textbox3.

      Pour info, j'ai une userform1 dans laquelle j'inscris mes variables A-B etc avec une liste déroulante dans ma combobox4 et je voudrais qu'en fonction de ces lettres, les valeurs de ma cellule G69 et autres, viennent s'inscrire automatiquement dans la textbox3.
      Merci si tu parviens à m'aider
      CDLMNT
      0
      1. Il faut évidemment mettre l'instruction dans l’événement d'un changement dans la combobox

        Private Sub ComboBox4_Change()
        IF combox4 = "A" THEN textbox3.value = sheets("constantes").Range("G69")
        ... suite des IF
        End Sub
        0
        1. Désolé via55 mais ma textbox3 n'affiche toujours pas le résultat de la cellule correspondant. Voilà la macro que j'ai écrit. J'ai sûrement loupé une étape pour faire apparaître la valeur de chaucune des cellules. Pour info, dans les cellules voilà ce que je devrais avoir

          Combobox4 si A textbox16 = 6032
          B 2801
          C 4454
          D 8274
          E 22487
          EXT 1301
          Garderie 27725

          Private Sub ComboBox4_Change()
          If ComboBox4 = "A" Then TextBox3.Value = Sheets("constantes").Range("G69")
          If ComboBox4 = "B" Then TextBox3.Value = Sheets("constantes").Range("G70")
          If ComboBox4 = "C" Then TextBox3.Value = Sheets("constantes").Range("G71")
          If ComboBox4 = "D" Then TextBox3.Value = Sheets("constantes").Range("G72")
          If ComboBox4 = "E" Then TextBox3.Value = Sheets("constantes").Range("G73")
          If ComboBox4 = "EXT" Then TextBox3.Value = Sheets("constantes").Range("G74")
          If ComboBox4 = "Garderie" Then TextBox3.Value = Sheets("constantes").Range("G75")

          End Sub

          Comme tu le verras, dans ton exemple, j'ai remplacé Combox4 par Combobox, ai-je bien fait ?
          Merci de poursuivre ton aide
          0
      2. Fournis moi ton fichier que je regarde ce qui cloche
        Poste le sur mon-partage.fr, fais créer un lien que tu copies et reviens coller ici
        0
        1. Lien de mon fichier simplifié
          https://we.tl/t-uPTvgk5FRG

          Est ce bon pour le fichier car je ne suis pas un pro de ce genre d'exercice
          Encore merci et bonsoir
          0
      3. Re

        Évidement tu as mis mes lignes de codes dans un module au lieu de les lier au textbox de l'UF
        Il faut dans le VBA faire afficher l'UF et doublecliquer sur le tetxtbox pour faire apparaitre la page avec les macros liées

        Cette Private SUb existe déjà et au changement du textbox fait afficher le tarif par une RECHERCHEV
        Donc au lieu d'une série de IF j'ai appliqué la même recette en ayant d'abord nommé numero la plage de numerotation dans constantes, c'est plus court et plus élégant
        https://mon-partage.fr/f/gQYH0xS2/

        Demain je suis absent mais je serai de retour samedi
        0
        1. Super content
          Un très cordial merci pour ta patience et ta compétence.
          A+
          Cordialement
          0