cs_MAMuing
Messages postés7Date d'inscriptionmardi 18 novembre 2008StatutMembreDernière intervention 3 janvier 2009
-
30 déc. 2008 à 14:53
cs_MAMuing
Messages postés7Date d'inscriptionmardi 18 novembre 2008StatutMembreDernière intervention 3 janvier 2009
-
1 janv. 2009 à 23:13
Bonjour à tous,
avant tout je voulais me présenter, je suis en 3eme année et j'ai un projet à rendre pour la rentrée janvier 2009
mon probleme est le suivant :
Comment pourrais je suivant la saisie d'une ligne de la liste déroulante, afficher ce texte dans un label
j'illustre :
j'aurais donc voulu que
- quand je clique sur une des lignes de ma liste déroulante et qu'ensuite je clique sur le bouton modifier :
en label1 on trouve "menu maxi best of"
en label2 : nuggets x6 ...etc
SACHANT qu'a chaque fois que j' "AJOUTER" une commande elle s'affiche sur une feuille excel (image sous la programmation VBA)
donc le but est de modifier une des commande et ainsi pouvoir la rechanger et quand je cliquerai sur "ajouter" cela modifiera l'ancienne commande ca l'ecrasera
merci pour voitre aide
si je ne suis pas clair posez moi des questions sur le fonctionnement de mon programme
MERCI j'attends vos reponses
A voir également:
Modifier la saisie d'une valeur dans la liste déroulante en cliquant sur un bout
cs_fauve
Messages postés661Date d'inscriptionvendredi 2 décembre 2005StatutMembreDernière intervention23 mars 20118 31 déc. 2008 à 15:00
Salut,
Désolé, je croyais que tu étais en train de coder en VB.NET et non en VBA.
Enfin, quoi qu'il en soit, voici l'équivalent du code en VBA que j'ai donné ci-dessus :
Note : Sur ta Form, je vois un bouton Modifier, tu doubles-clic dessus et tu devrais avoir l'évènement suivant qui apparait :
Private Sub
btnmodifier_Click()
End Sub
et tu colles dans l'évènementbtnmodifier_Click() le code ci-dessous
<hr size= "2" width="100%" />
Dim
MenuModif() As String
MenuModif = Split(ListBox1.Value, "-" )
For nb = 0 To UBound(MenuModif)
If Mid(MenuModif(nb), 1, 1) = " " Then MenuModif(nb) = Replace(MenuModif(nb), " ", "", 1 , 1)
End If If Mid(MenuModif(nb), Len(MenuModif(nb)) - 1, 1) = " " Then MenuModif(nb) = Replace(MenuModif(nb), " ", "", Len(MenuModif(nb)) - 1 , 1)
End If Next
bigou87
Messages postés32Date d'inscriptiondimanche 20 janvier 2008StatutMembreDernière intervention15 janvier 2009 30 déc. 2008 à 15:06
Bonjour , excuse moi mais je n'est pas tout compris ^^. Gardons ton exemple avec le MENU MAXI BEST OF. Quand tu sélectionne ce menu dans la liste et que tu cliques sur modifier :
label1 = Menu maxi best of
label2 = nuggets x6
label3 = tite salalde
label4 = coca zero
Jusque là rien d'exceptionnel c'est ce que tu as écrit mais ensuite je comprends pas ce que tu veux modifier précisément ! La ligne menu maxi best of corespond à une commande que tu est en train de passer ? Et tu veux pouvoir la modifer si par exemple un client veut modifier ce qu'il a demandé ?
cs_MAMuing
Messages postés7Date d'inscriptionmardi 18 novembre 2008StatutMembreDernière intervention 3 janvier 2009 30 déc. 2008 à 15:12
je t'explique comment mon programme marche
1- on clique le menu, ensuite le sandwich, l'accompagnement et enfin la boisson
2- on appuie sur le bouton ajouter :
ceci engandre sur une feuille excel (en bas) la commande
elle ajoute aussi dans la combobox la commande en entier issue de la feuille excel
maintenant imaginons un client veuille modifier une de ces commande je voudrais donc que en cliquant sur l'un de ses menus, et ensuite sur le bouton "MODIFIER" ce menu cliqué (de la combobox) apparaisse dans les différents labels ( a leur bonne place)
label 1 = menu
label 2 = sandwich
label 3 = accompagnement
label 4 = boisson
bigou87
Messages postés32Date d'inscriptiondimanche 20 janvier 2008StatutMembreDernière intervention15 janvier 2009 30 déc. 2008 à 15:16
Merci de la précision ! Ne peux tu tout simplement ajouter la référence excel a ton projet Vb pour pouvoir controler excel ? Il te suffirais ensuite d'inclure dans le code du bouton modifier les lignes de code qui retrouve la ligne correspondant a ta commande ; et les lignes modifiant la valeur des labels .
BIGU87
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_MAMuing
Messages postés7Date d'inscriptionmardi 18 novembre 2008StatutMembreDernière intervention 3 janvier 2009 30 déc. 2008 à 15:59
je sais pas si je reponds a ta question
mais en fait les informations dans la listbox1 sont issues de ma feuille excel
quand j'appuie sur "AJOUTER" toutes les infos se copient tout d'abord sur une feuille excel puis les infos de cette feuilles excel se rajoutent a la listbox,
je voudrais (dsl de me repeter) avoir un code qui me permettrais de suivant l'un des menu selectionné dans la listbox, pouvoir la modifier
plus concretement imaginons je veuille modifier
le menu "maxi best of - nuggets x6 - tite salade - cola zero"
en selectionnant cette ligne puis en cliquant sur le bouton "MODIFIER",
le menu va réapparaitre a leur bonne place ds les différents label (expliquée dans ma réponse précédente)
cs_fauve
Messages postés661Date d'inscriptionvendredi 2 décembre 2005StatutMembreDernière intervention23 mars 20118 30 déc. 2008 à 21:45
Salut,
Voici comment faire (à mettre dans l'èvènement Click de ton bouton Modifier)
<hr size= "2" width="100%" />
Dim
MenuModif() As String Dim MenuLabel As New System.Collections.Generic.List(Of Label)
' On ajoute les 4 labels dans la collection
MenuLabel.AddRange(New Label() {Label1, Label2, Label3, Label4})
' ici, on récupère la valeur de l'item sélectionné dans ComboBox1
' (Le menu à modifier)
'
' ComboBox1.SelectedItem.ToString.Split("-") va séparer la chaîne
' de départ en plusieurs sous chaînes cela par rapport au symbole -
'
' Exemple :
' ComboBox1.SelectedItem.ToString = Menu Maxi Best Of - Nuggets x6 - Tite Salade - Coca Zero
' En faisant :
' MenuModif = ComboBox1.SelectedItem.ToString.Split("-")
' On obtient :
' MenuModif(0) = "Menu Maxi Best Of "
' MenuModif(1) = " Nuggets x6 "
' MenuModif(2) = " Tite Salade "
' MenuModif(3) = " Coca Zero"
' MenuModif = ComboBox1.SelectedItem.ToString.Split("-")
' Mise en forme, on supprime les espaces superflu
' Boucle sur tous les items de MenuModif
For nb As Integer = 0To MenuModif.Count - 1 ' On vérifie si le 1° caractère est un espace
If MenuModif(nb).Substring(0, 1) = " " Then
' Si oui, on le supprime
MenuModif(nb) = MenuModif(nb).Remove(0, 1)
End If ' On vérifie si le dernier caractère est un espace
If MenuModif(nb).Substring(MenuModif(nb).Length - 1, 1) = " " Then
' Si oui, on le supprime
MenuModif(nb) = MenuModif(nb).Remove(MenuModif(nb).Length - 1, 1)
End If
Next
' Boucle sur les 4 Labels
For nb As Integer = 0 To MenuLabel.Count - 1 ' On met chaque item de MenuModif dans un Label
' m(0) >>> Label1
' m(1) >>> Label2
' m(2) >>> Label3
' m(3) >>> Label4
MenuLabel(nb).Text = MenuModif(nb)
Next
cs_fauve
Messages postés661Date d'inscriptionvendredi 2 décembre 2005StatutMembreDernière intervention23 mars 20118 30 déc. 2008 à 21:48
Oups, mon programme de coloration a un peu merdouillé
Voici le bon :
Dim MenuModif() As String Dim MenuLabel As New System.Collections.Generic.List(Of Label)
' On ajoute les 4 labels dans la collection
MenuLabel.AddRange(New Label() {Label1, Label2, Label3, Label4})
' ici, on récupère la valeur de l'item sélectionné dans ComboBox1
' (Le menu à modifier)
'
' ComboBox1.SelectedItem.ToString.Split("-") va séparer la chaîne
' de départ en plusieurs sous chaînes cela par rapport au symbole -
'
' Exemple :
' ComboBox1.SelectedItem.ToString = Menu Maxi Best Of - Nuggets x6 - Tite Salade - Coca Zero
' En faisant :
' MenuModif = ComboBox1.SelectedItem.ToString.Split("-")
' On obtient :
' MenuModif(0) = "Menu Maxi Best Of "
' MenuModif(1) = " Nuggets x6 "
' MenuModif(2) = " Tite Salade "
' MenuModif(3) = " Coca Zero"
MenuModif = ComboBox1.SelectedItem.ToString.Split( "-" )
' Mise en forme, on supprime les espaces superflu
' Boucle sur tous les items de MenuModif
For nb As Integer = 0To MenuModif.Count - 1 ' On vérifie si le 1° caractère est un espace
If MenuModif(nb).Substring(0, 1) = " " Then
' Si oui, on le supprime
MenuModif(nb) = MenuModif(nb).Remove(0, 1)
End If ' On vérifie si le dernier caractère est un espace
If MenuModif(nb).Substring(MenuModif(nb).Length - 1, 1) = " " Then
' Si oui, on le supprime
MenuModif(nb) = MenuModif(nb).Remove(MenuModif(nb).Length - 1, 1)
End If
Next
' Boucle sur les 4 Labels
For nb As Integer = 0 To MenuLabel.Count - 1 ' On met chaque item de MenuModif dans un Label
' m(0) >>> Label1
' m(1) >>> Label2
' m(2) >>> Label3
' m(3) >>> Label4
MenuLabel(nb).Text = MenuModif(nb)
Next
cs_MAMuing
Messages postés7Date d'inscriptionmardi 18 novembre 2008StatutMembreDernière intervention 3 janvier 2009 30 déc. 2008 à 22:27
merci du fond du coeur fauve pour ta réponse et ta contribution
mais je n'arrive pas a adapter mon vba a tes lignes de programmation
serait il possible que tu jetes un coup d'oeil a mon projet si ce n'est aps trop te demander
j'me suis lancé dans un projet qui dépasse mes capacités mais il me tenait a coeur (étant donné que je suis saisonnié a mcdo!)
sinon tu me dit quels mots changer :
mon bouton modifier s'apelle "btnmodifier"
label1 = labelmenu
label2 = labelsandwich
label3 = labelaccomp
label4 = labelboisson
sinon le top serait que tu m'envoies ton adresse email,
meme si je ne voudrais pas trop que mon projet se partage a tous tu me comprendras :p
Donc normalement ton code s'il marchait au top :
il suffirait que je clique sur un des menu deja enregistré dans la combobox,
j'appuie sur "modifier"
ce menu réapparaitra dans les différents label
et en cliquant sur un des boutons a gauche, les labels changeront automatiquement?
Bonne soiree
surtout si tes occupé prends ton temps réveillonne :)
bigou87
Messages postés32Date d'inscriptiondimanche 20 janvier 2008StatutMembreDernière intervention15 janvier 2009 31 déc. 2008 à 13:16
Essaye sa ( à modifier selon les noms des labels etc ) :
Pour ton bouton modifier :
Dim numCom ' Numero de la commande représenté par son index dans la Combobox
numCom = ComboBox1.SelectedIndex
Dim numComExcel ' Numero de la ligne ou se trouve la commande dans le tableau Excel qui est egal a l'index de l'item
numComExcel = numCom + 2 ' selectionné plus 2 car il y a ici deux lignes de décalage entre les index et les lignes du tableau
Dim menu = wbExcel.Worksheets(1).range("A" & numComExcel).value() ' On récupere la valeur de la cellule correspondante
Dim sandwhich = wbExcel.Worksheets(1).range("B" & numComExcel).value() ' "
Dim accompagnement = wbExcel.Worksheets(1).range("C" & numComExcel).value() ' "
Dim boisson = wbExcel.Worksheets(1).range("D" & numComExcel).value() ' "
Label2.Text = menu ' On assigne les valeurs aux labels
Label3.Text = sandwhich
Label4.Text = accompagnement
Label5.Text = boisson