Décharger un combobox dans des cellules excel

boucherst

XLDnaute Nouveau
Bonjour à tous, j'ai un problème avec un userform. En effet, celui-ci contient plusieurs combobox dont l'un me pose un problème. Dans ce combobox, j'ai une liste de choix.
En fonction d'un choix de cette liste, je voudrais décharger l'information dans des cellules prédéfinies.
Ex : je sélectionne dans mon combobox :
- tomate >>> déchargement en A1
- Pomme de terre >>> déchargement en C1

De plus, d'une information textuelle (tomate, pomme de terre), je voudrais qu'à la place du texte, un "1" se décharge en A1 (si sélection = tomate) ou un "1" en C1 si sélection = pomme de terre.

Merci par avance pour vos réponses.
 

ya_v_ka

XLDnaute Impliqué
Re : Décharger un combobox dans des cellules excel

Salut

Et si on rajoutait une colonne à ton tableau, ou ton combo décharge tomate, pommes de terres ou autres légumes... et ensuite juste un contrôle dans les colonnes tomates, pdt ou autres... si est egal au produit alors 1 sinon rien...

Ya'v
 

boucherst

XLDnaute Nouveau
Re : Décharger un combobox dans des cellules excel

Bonjour à tous,
d'abord merci à ceux qui ont essayés de me comprendre. Je vous joins un fichier qui illustre ma demande.
J'aimerai qu'en :
- sélectionnant "Tomate" un "1" se décharge dans la cellule A1.
- en sélectionnant "Pomme de terre" un "1 " se décharge en cellule C1

Je remercie par avance, les personnes qui pourront me donner une solution.
 

Pièces jointes

  • Book3.zip
    9.3 KB · Affichages: 43
  • Book3.zip
    9.3 KB · Affichages: 41
  • Book3.zip
    9.3 KB · Affichages: 35

Chloulou

XLDnaute Occasionnel
Re : Décharger un combobox dans des cellules excel

Salut,

il suffit d'ajouter un test à la validation de ton usf :
Code:
if Combobox1.value = "tomate" then
              Worksheets("   ").cells(1,1).value= 1
elesif combobox1.value= "pomme de terre" then
              worksheets("   ").cells(1,3).value = 1
end if
 

Excel_lent

XLDnaute Impliqué
Re : Décharger un combobox dans des cellules excel

Salut à tous,

Jette un oeil sur le fichier joint pour voir si c'est ce que tu veux.
C'est un "ou" exclusif que tu as ici (un seul 1). Il te sera facile de corriger pour un "ou" inclusif (2 choix).
 

Pièces jointes

  • Book4.xls
    29 KB · Affichages: 74
  • Book4.xls
    29 KB · Affichages: 72
  • Book4.xls
    29 KB · Affichages: 83
Dernière édition:

papapaul

XLDnaute Impliqué
Re : Décharger un combobox dans des cellules excel

:) Bonjour Forum,
J'ai peut-être pas bien compris
mais en faisant au plus simple, le code de la combo devient.

Private Sub ComboBox1_Change()
Dim n As Integer
If n = Tomate Then
Range("A1") = 1
If n = Pommedeterre Then
Range("C1") = 1
End If
End If
End Sub

Ca me parait trop simple. :rolleyes:
 

boucherst

XLDnaute Nouveau
Re : Décharger un combobox dans des cellules excel

Rebonjour à tous,

Merci pour vos réponses. Il semble que la solution de papapaul soit la mieux appropriée pour mon cas. En revanche quelque soit la sélection que je fais avec le code que tu m'as donné, un 1 est déchargé en A1 et C1.
Je vous joins de nouveau le fichier où j'ai intégré le code de papapaul.
Si l'un d'entre vous peut trouver la soluce.

Merci à chLoulou, mais le code que tu m'as donné ne fonctionne pas dans Private Sub ComboBox1_Change(), j'ai pourtant remplacé (" ") par Sheet1 mais quand je sélectionne, il n'y a aucun déchargement ? je dois certainement faire une mauvaise interprétation de ta soluce.

Merci à Excel Lent, je vais aussi essayé mais je pense avoir un problème si je rajoute unetrentaine de sélections possibles^qui pour chacune devront aller se décharger dans des cellules prédéfinies (D1,E1,F1 etc..)
 

Pièces jointes

  • Book3.zip
    10.1 KB · Affichages: 34
  • Book3.zip
    10.1 KB · Affichages: 33
  • Book3.zip
    10.1 KB · Affichages: 42

Excel_lent

XLDnaute Impliqué
Re : Décharger un combobox dans des cellules excel

Salut à tous et aux autres,

Une simple question au départ et des rajouts successifs ne permettent pas de cerner le problème correctement.
Donc voici une autre idée.
 

Pièces jointes

  • Book5.xls
    29.5 KB · Affichages: 80
  • Book5.xls
    29.5 KB · Affichages: 78
  • Book5.xls
    29.5 KB · Affichages: 72

boucherst

XLDnaute Nouveau
Re : Décharger un combobox dans des cellules excel

Merci à tous les deux car vous m'avez permis de régler mon problème.

Pour rester dans les tomates et les pommes de terre, j'ai un autre souci. Dans le fichier joint, j'aimerai avoir une macro qui, si je sélectione ou tomate ou pomme de terre me fasse apparaitre une msgbox en fonction de ma sélection avec :

Total bonne tomate = 10 (c'est donc la somme de A2:A11 dans mon cas ici)
Total Mauvaise tomate = 4 (c'est donc la somme de b2:b11 dans mon cas ici)
% de mauvaise tomate = 40 %

idem si je sélectionne les pommes de terre. 10,2,20%

Cdt.
 

Pièces jointes

  • Book1.zip
    1.4 KB · Affichages: 29
  • Book1.zip
    1.4 KB · Affichages: 22
  • Book1.zip
    1.4 KB · Affichages: 27

Cousinhub

XLDnaute Barbatruc
Re : Décharger un combobox dans des cellules excel

Bonjour, regarde le fichier joint, les données apparaissent dans l'USF
 

Pièces jointes

  • boucherst.xls
    34 KB · Affichages: 64
  • boucherst.xls
    34 KB · Affichages: 67
  • boucherst.xls
    34 KB · Affichages: 68

papapaul

XLDnaute Impliqué
Re : Décharger un combobox dans des cellules excel

:) Bravo bhbh, t'as fait drolement vite en plus,
mais si je peux me permettre de m'incruster, je joins une petite modif
pour éviter le rajout des 1 quand click OK
et rectifier un petit oubli en fin de code.

Case Is = "Tomate"
col = IIf(Controls("Opt1") = True, 1, 2)
lign = IIf(col = 1, lign1, lign2)
lignt = IIf(lign1 > lign2, lign1, lign2)
'Cells(lign + 1, col).Value = 1
TextBox2.Value = Evaluate("SUM(A2:A" & lign1 + 1 & ")")
TextBox3.Value = Evaluate("SUM(B2:B" & lign2 + 1 & ")")
TextBox4.Value = Format(TextBox3.Value / Evaluate("SUM(A2:B" & lignt & ")"), "0.00%")
Case Is = "Pomme de terre"
col = IIf(Controls("Opt1") = True, 3, 4)
lign = IIf(col = 3, lign3, lign4)
lignt = IIf(lign3 > lign4, lign3, lign4)
' Cells(lign + 1, col).Value = 1
TextBox2.Value = Evaluate("SUM(C2:C" & lign3 + 1 & ")")
TextBox3.Value = Evaluate("SUM(D2:D" & lign4 + 1 & ")")
TextBox4.Value = Format(TextBox3.Value / Evaluate("SUM(C2:D" & lignt & ")"), "0.00%")

@+
 

Excel_lent

XLDnaute Impliqué
Re : Décharger un combobox dans des cellules excel

Salut à tous,

Tu veux le pourcentage de "mauvaises" par rapport aux "bonnes" (comme tes exemples) ou par rapport au nombre total ?
Dans ce dernier cas il faudra la formule nM / (nB + nM) dans le fichier joint.
 

Pièces jointes

  • boucherstat.xls
    39.5 KB · Affichages: 61

Discussions similaires

Statistiques des forums

Discussions
312 489
Messages
2 088 848
Membres
103 973
dernier inscrit
okoazer