J'aimerais créer une procédure qui recherche dans la colonne 1 de la feuille
OUV la même valeur que le caption du commandbutton1 de la feuille PLAN.
Lorsqu'elle trouve cette valeur, elle la recopie dans la feuille ENC en
cellule (4,11), puis passe à la ligne suivante de la feuille OUV et recopie
les valeurs des colonnes 1 à 3 dans la feuille ENC en cellules (5,11)
(5,12) et (5,14) et ainsi de suite jusqu'à ce qu'elle trouve la valeur "FIN"
(qu'elle ne recopie pas) en colonne 1 de la feuille OUV.
Elle doit enfin supprimer de la feuille OUV les lignes qui viennent d'être
recopiées ainsi que la ligne où se trouve la valeur "FIN".
Merci d'avance pour votre aide. Voici ce que j'ai fait jusqu'à présent :
Private Sub CommandButton1_Click()
'bouton 1
'si déjà un nom de client encodé, alors récup commande stockée dans OUV
sinon demande nom client
Dim b As Integer
b = 1
If CommandButton1.Caption <> "1 " And CommandButton1.Caption <> "1" Then
Do While Sheets("PLAN").CommandButton1.Caption <>
Sheets("OUV").Cells(b, 1)
Cells(b, 1).Activate
b = b + 1
Loop
'JE COINCE ICI !
Else: response = InputBox("Entrez le nom du client. Attention, ce nom
sera imprimé sur le ticket !")
Me.CommandButton1.Caption = Left(Me.CommandButton1.Caption, 1) & " "
& response
Sheets("ENC").Select
'récupération du caption
Sheets("ENC").Cells(4, 11) = CommandButton1.Caption
Sheets("PLAN").Cells(7, 10) = CommandButton1.Caption
End If
End Sub
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Pierre Fauconnier
Bonjour
Pourrais-tu clarifier ton énoncé en utilisant la notation A1 pour les cellules, ce sera plus simple à comprendre...
Merci
-- Pierre Fauconnier () Les sept laids tuent ( Lewis Carol ) Remplacez nospam.nospam par pfi.be pour répondre. Merci
"Daniel" <*j'enlève ceci* a écrit dans le message de news:41e14310$0$336$
Bonjour,
Je suis néophyte en vba et je coince là-dessus :
J'aimerais créer une procédure qui recherche dans la colonne 1 de la feuille
OUV la même valeur que le caption du commandbutton1 de la feuille PLAN.
Lorsqu'elle trouve cette valeur, elle la recopie dans la feuille ENC en cellule (4,11), puis passe à la ligne suivante de la feuille OUV et recopie
les valeurs des colonnes 1 à 3 dans la feuille ENC en cellules (5,11) (5,12) et (5,14) et ainsi de suite jusqu'à ce qu'elle trouve la valeur "FIN"
(qu'elle ne recopie pas) en colonne 1 de la feuille OUV.
Elle doit enfin supprimer de la feuille OUV les lignes qui viennent d'être recopiées ainsi que la ligne où se trouve la valeur "FIN".
Merci d'avance pour votre aide. Voici ce que j'ai fait jusqu'à présent :
Private Sub CommandButton1_Click() 'bouton 1 'si déjà un nom de client encodé, alors récup commande stockée dans OUV sinon demande nom client Dim b As Integer b = 1 If CommandButton1.Caption <> "1 " And CommandButton1.Caption <> "1" Then
Do While Sheets("PLAN").CommandButton1.Caption <> Sheets("OUV").Cells(b, 1) Cells(b, 1).Activate b = b + 1 Loop 'JE COINCE ICI !
Else: response = InputBox("Entrez le nom du client. Attention, ce nom sera imprimé sur le ticket !") Me.CommandButton1.Caption = Left(Me.CommandButton1.Caption, 1) & " "
& response Sheets("ENC").Select 'récupération du caption Sheets("ENC").Cells(4, 11) = CommandButton1.Caption Sheets("PLAN").Cells(7, 10) = CommandButton1.Caption End If End Sub
Bonjour
Pourrais-tu clarifier ton énoncé en utilisant la notation A1 pour les
cellules, ce sera plus simple à comprendre...
Merci
--
Pierre Fauconnier (pierre.fauconnier@nospam.nospam)
Les sept laids tuent ( Lewis Carol )
Remplacez nospam.nospam par pfi.be pour répondre. Merci
"Daniel" <*j'enlève ceci*daniel.schils@advalvas.be> a écrit dans le message
de news:41e14310$0$336$ba620e4c@news.skynet.be...
Bonjour,
Je suis néophyte en vba et je coince là-dessus :
J'aimerais créer une procédure qui recherche dans la colonne 1 de la
feuille
OUV la même valeur que le caption du commandbutton1 de la feuille PLAN.
Lorsqu'elle trouve cette valeur, elle la recopie dans la feuille ENC en
cellule (4,11), puis passe à la ligne suivante de la feuille OUV et
recopie
les valeurs des colonnes 1 à 3 dans la feuille ENC en cellules (5,11)
(5,12) et (5,14) et ainsi de suite jusqu'à ce qu'elle trouve la valeur
"FIN"
(qu'elle ne recopie pas) en colonne 1 de la feuille OUV.
Elle doit enfin supprimer de la feuille OUV les lignes qui viennent d'être
recopiées ainsi que la ligne où se trouve la valeur "FIN".
Merci d'avance pour votre aide. Voici ce que j'ai fait jusqu'à présent :
Private Sub CommandButton1_Click()
'bouton 1
'si déjà un nom de client encodé, alors récup commande stockée dans OUV
sinon demande nom client
Dim b As Integer
b = 1
If CommandButton1.Caption <> "1 " And CommandButton1.Caption <> "1"
Then
Do While Sheets("PLAN").CommandButton1.Caption <>
Sheets("OUV").Cells(b, 1)
Cells(b, 1).Activate
b = b + 1
Loop
'JE COINCE ICI !
Else: response = InputBox("Entrez le nom du client. Attention, ce nom
sera imprimé sur le ticket !")
Me.CommandButton1.Caption = Left(Me.CommandButton1.Caption, 1) & "
"
& response
Sheets("ENC").Select
'récupération du caption
Sheets("ENC").Cells(4, 11) = CommandButton1.Caption
Sheets("PLAN").Cells(7, 10) = CommandButton1.Caption
End If
End Sub
Pourrais-tu clarifier ton énoncé en utilisant la notation A1 pour les cellules, ce sera plus simple à comprendre...
Merci
-- Pierre Fauconnier () Les sept laids tuent ( Lewis Carol ) Remplacez nospam.nospam par pfi.be pour répondre. Merci
"Daniel" <*j'enlève ceci* a écrit dans le message de news:41e14310$0$336$
Bonjour,
Je suis néophyte en vba et je coince là-dessus :
J'aimerais créer une procédure qui recherche dans la colonne 1 de la feuille
OUV la même valeur que le caption du commandbutton1 de la feuille PLAN.
Lorsqu'elle trouve cette valeur, elle la recopie dans la feuille ENC en cellule (4,11), puis passe à la ligne suivante de la feuille OUV et recopie
les valeurs des colonnes 1 à 3 dans la feuille ENC en cellules (5,11) (5,12) et (5,14) et ainsi de suite jusqu'à ce qu'elle trouve la valeur "FIN"
(qu'elle ne recopie pas) en colonne 1 de la feuille OUV.
Elle doit enfin supprimer de la feuille OUV les lignes qui viennent d'être recopiées ainsi que la ligne où se trouve la valeur "FIN".
Merci d'avance pour votre aide. Voici ce que j'ai fait jusqu'à présent :
Private Sub CommandButton1_Click() 'bouton 1 'si déjà un nom de client encodé, alors récup commande stockée dans OUV sinon demande nom client Dim b As Integer b = 1 If CommandButton1.Caption <> "1 " And CommandButton1.Caption <> "1" Then
Do While Sheets("PLAN").CommandButton1.Caption <> Sheets("OUV").Cells(b, 1) Cells(b, 1).Activate b = b + 1 Loop 'JE COINCE ICI !
Else: response = InputBox("Entrez le nom du client. Attention, ce nom sera imprimé sur le ticket !") Me.CommandButton1.Caption = Left(Me.CommandButton1.Caption, 1) & " "
& response Sheets("ENC").Select 'récupération du caption Sheets("ENC").Cells(4, 11) = CommandButton1.Caption Sheets("PLAN").Cells(7, 10) = CommandButton1.Caption End If End Sub
Daniel
"Pierre Fauconnier" a écrit dans le message de news:
Bonjour
Pourrais-tu clarifier ton énoncé en utilisant la notation A1 pour les cellules, ce sera plus simple à comprendre...
Merci
-- Pierre Fauconnier () Les sept laids tuent ( Lewis Carol ) Remplacez nospam.nospam par pfi.be pour répondre. Merci
"Daniel" <*j'enlève ceci* a écrit dans le message
de news:41e14310$0$336$
Bonjour,
Voici quelques précisions sur mon petit problème :
Il s'agit d'un petit programme servant à encoder les commandes des clients d'une taverne par l'intermédiaire d'un écran tactile.
J'ai donc 3 feuilles dans mon classeur : - La feuille PLAN reprend le plan des tables qui sont représentées par des boutons numérotés dont le caption change en fonction du nom du client qui y est encodé par le serveur. - La feuille ENC reprend les boutons d'encodage des boissons et une liste de la commande en cours avec au-dessus, le nom du client repris du caption du bouton - La feuille OUV qui reprend les commandes "ouvertes", donc les clients servis, mais qui n'ont pas encore payé.
Quand le serveur a terminé d'encoder sa commande, il clique sur un bouton lui permettant de revenir au plan des tables. Ce clic permet de vider la zone de la feuille ENC (en K4 le nom du client repris du caption et à partir de K5, L5 et N5 les boissons/plats , prix et catégorie de plat servis au client) où se trouve la commande en cours et la recopie dans la feuille OUV dans les colonnes A, B et C (en A le type de boisson (repris de la colonne K), en B le prix (repris de la colonne L), en C la catégorie de boisson ou de plat (afin de séparer restauration et boissons) (repris de la colonne N)
Jusque là, ça fonctionnne sans problème.
J'ai besoin maintenant d'aller rechercher la commande mise en attente dans la feuille OUV pour la ramener dans la feuille ENC (donc faire exactement l'inverse) lorsque le serveur clique sur le bouton dont le caption est celui du client. Les commandes en cours sont inscrites les unes en dessous des autres (séparées par le mot FIN) dans la colonne A de la feuille OUV. La première ligne de chaque commande ouverte étant chaque fois le caption du bouton du client.
J'aimerais créer une procédure qui recherche dans la colonne A de la feuille OUV la même valeur que le caption du commandbutton1 de la feuille PLAN.
Lorsqu'elle trouve cette valeur, elle la recopie dans la feuille ENC en cellule K4 puis passe à la ligne suivante de la feuille OUV et recopie les valeurs des colonnes A à C dans la feuille ENC en cellules K5, L5 et N5 et ainsi de suite jusqu'à ce qu'elle trouve la valeur "FIN" (qu'elle ne recopie pas) en colonne 1 de la feuille OUV.
Elle doit enfin supprimer de la feuille OUV les lignes qui viennent d'être recopiées ainsi que la ligne où se trouve la valeur "FIN".
Merci d'avance pour votre aide. Voici ce que j'ai fait jusqu'à présent :
Private Sub CommandButton1_Click() 'bouton 1 'si déjà un nom de client encodé, alors récup commande stockée dans OUV sinon demande nom client Dim b As Integer b = 1 If CommandButton1.Caption <> "1 " And CommandButton1.Caption <> "1" Then Do While Sheets("PLAN").CommandButton1.Caption <> Sheets("OUV").Cells(b, 1) Cells(b, 1).Activate b = b + 1 Loop 'JE COINCE ICI !
Else: response = InputBox("Entrez le nom du client. Attention, ce nom sera imprimé sur le ticket !") Me.CommandButton1.Caption = Left(Me.CommandButton1.Caption, 1) & " " & response Sheets("ENC").Select 'récupération du caption Sheets("ENC").Cells(4, 11) = CommandButton1.Caption Sheets("PLAN").Cells(7, 10) = CommandButton1.Caption End If End Sub
"Pierre Fauconnier" <pierre.fauconnier@nospam.nospam> a écrit dans le
message de news:O8dND2n9EHA.2600@TK2MSFTNGP09.phx.gbl...
Bonjour
Pourrais-tu clarifier ton énoncé en utilisant la notation A1 pour les
cellules, ce sera plus simple à comprendre...
Merci
--
Pierre Fauconnier (pierre.fauconnier@nospam.nospam)
Les sept laids tuent ( Lewis Carol )
Remplacez nospam.nospam par pfi.be pour répondre. Merci
"Daniel" <*j'enlève ceci*daniel.schils@advalvas.be> a écrit dans le
message
de news:41e14310$0$336$ba620e4c@news.skynet.be...
Bonjour,
Voici quelques précisions sur mon petit problème :
Il s'agit d'un petit programme servant à encoder les commandes des clients
d'une taverne par l'intermédiaire d'un écran tactile.
J'ai donc 3 feuilles dans mon classeur :
- La feuille PLAN reprend le plan des tables qui sont représentées par des
boutons numérotés dont le caption change en fonction du nom du client qui y
est encodé par le serveur.
- La feuille ENC reprend les boutons d'encodage des boissons et une liste de
la commande en cours avec au-dessus, le nom du client repris du caption du
bouton
- La feuille OUV qui reprend les commandes "ouvertes", donc les clients
servis, mais qui n'ont pas encore payé.
Quand le serveur a terminé d'encoder sa commande, il clique sur un bouton
lui permettant de revenir au plan des tables. Ce clic permet de vider la
zone de la feuille ENC (en K4 le nom du client repris du caption et à partir
de K5, L5 et N5 les boissons/plats , prix et catégorie de plat servis au
client) où se trouve la commande en cours et la recopie dans la feuille OUV
dans les colonnes A, B et C (en A le type de boisson (repris de la colonne
K), en B le prix (repris de la colonne L), en C la catégorie de boisson ou
de plat (afin de séparer restauration et boissons) (repris de la colonne N)
Jusque là, ça fonctionnne sans problème.
J'ai besoin maintenant d'aller rechercher la commande mise en attente dans
la feuille OUV pour la ramener dans la feuille ENC (donc faire exactement
l'inverse) lorsque le serveur clique sur le bouton dont le caption est celui
du client. Les commandes en cours sont inscrites les unes en dessous des
autres (séparées par le mot FIN) dans la colonne A de la feuille OUV. La
première ligne de chaque commande ouverte étant chaque fois le caption du
bouton du client.
J'aimerais créer une procédure qui recherche dans la colonne A de la feuille
OUV la même valeur que le caption du commandbutton1 de la feuille PLAN.
Lorsqu'elle trouve cette valeur, elle la recopie dans la feuille ENC en
cellule K4 puis passe à la ligne suivante de la feuille OUV et recopie les
valeurs des colonnes A à C dans la feuille ENC en cellules K5, L5 et N5 et
ainsi de suite jusqu'à ce qu'elle trouve la valeur "FIN" (qu'elle ne recopie
pas) en colonne 1 de la feuille OUV.
Elle doit enfin supprimer de la feuille OUV les lignes qui viennent d'être
recopiées ainsi que la ligne où se trouve la valeur "FIN".
Merci d'avance pour votre aide. Voici ce que j'ai fait jusqu'à présent :
Private Sub CommandButton1_Click()
'bouton 1
'si déjà un nom de client encodé, alors récup commande stockée dans OUV
sinon demande nom client
Dim b As Integer
b = 1
If CommandButton1.Caption <> "1 " And CommandButton1.Caption <> "1" Then
Do While Sheets("PLAN").CommandButton1.Caption <>
Sheets("OUV").Cells(b, 1)
Cells(b, 1).Activate
b = b + 1
Loop
'JE COINCE ICI !
Else: response = InputBox("Entrez le nom du client. Attention, ce nom
sera imprimé sur le ticket !")
Me.CommandButton1.Caption = Left(Me.CommandButton1.Caption, 1) & " "
& response
Sheets("ENC").Select
'récupération du caption
Sheets("ENC").Cells(4, 11) = CommandButton1.Caption
Sheets("PLAN").Cells(7, 10) = CommandButton1.Caption
End If
End Sub
"Pierre Fauconnier" a écrit dans le message de news:
Bonjour
Pourrais-tu clarifier ton énoncé en utilisant la notation A1 pour les cellules, ce sera plus simple à comprendre...
Merci
-- Pierre Fauconnier () Les sept laids tuent ( Lewis Carol ) Remplacez nospam.nospam par pfi.be pour répondre. Merci
"Daniel" <*j'enlève ceci* a écrit dans le message
de news:41e14310$0$336$
Bonjour,
Voici quelques précisions sur mon petit problème :
Il s'agit d'un petit programme servant à encoder les commandes des clients d'une taverne par l'intermédiaire d'un écran tactile.
J'ai donc 3 feuilles dans mon classeur : - La feuille PLAN reprend le plan des tables qui sont représentées par des boutons numérotés dont le caption change en fonction du nom du client qui y est encodé par le serveur. - La feuille ENC reprend les boutons d'encodage des boissons et une liste de la commande en cours avec au-dessus, le nom du client repris du caption du bouton - La feuille OUV qui reprend les commandes "ouvertes", donc les clients servis, mais qui n'ont pas encore payé.
Quand le serveur a terminé d'encoder sa commande, il clique sur un bouton lui permettant de revenir au plan des tables. Ce clic permet de vider la zone de la feuille ENC (en K4 le nom du client repris du caption et à partir de K5, L5 et N5 les boissons/plats , prix et catégorie de plat servis au client) où se trouve la commande en cours et la recopie dans la feuille OUV dans les colonnes A, B et C (en A le type de boisson (repris de la colonne K), en B le prix (repris de la colonne L), en C la catégorie de boisson ou de plat (afin de séparer restauration et boissons) (repris de la colonne N)
Jusque là, ça fonctionnne sans problème.
J'ai besoin maintenant d'aller rechercher la commande mise en attente dans la feuille OUV pour la ramener dans la feuille ENC (donc faire exactement l'inverse) lorsque le serveur clique sur le bouton dont le caption est celui du client. Les commandes en cours sont inscrites les unes en dessous des autres (séparées par le mot FIN) dans la colonne A de la feuille OUV. La première ligne de chaque commande ouverte étant chaque fois le caption du bouton du client.
J'aimerais créer une procédure qui recherche dans la colonne A de la feuille OUV la même valeur que le caption du commandbutton1 de la feuille PLAN.
Lorsqu'elle trouve cette valeur, elle la recopie dans la feuille ENC en cellule K4 puis passe à la ligne suivante de la feuille OUV et recopie les valeurs des colonnes A à C dans la feuille ENC en cellules K5, L5 et N5 et ainsi de suite jusqu'à ce qu'elle trouve la valeur "FIN" (qu'elle ne recopie pas) en colonne 1 de la feuille OUV.
Elle doit enfin supprimer de la feuille OUV les lignes qui viennent d'être recopiées ainsi que la ligne où se trouve la valeur "FIN".
Merci d'avance pour votre aide. Voici ce que j'ai fait jusqu'à présent :
Private Sub CommandButton1_Click() 'bouton 1 'si déjà un nom de client encodé, alors récup commande stockée dans OUV sinon demande nom client Dim b As Integer b = 1 If CommandButton1.Caption <> "1 " And CommandButton1.Caption <> "1" Then Do While Sheets("PLAN").CommandButton1.Caption <> Sheets("OUV").Cells(b, 1) Cells(b, 1).Activate b = b + 1 Loop 'JE COINCE ICI !
Else: response = InputBox("Entrez le nom du client. Attention, ce nom sera imprimé sur le ticket !") Me.CommandButton1.Caption = Left(Me.CommandButton1.Caption, 1) & " " & response Sheets("ENC").Select 'récupération du caption Sheets("ENC").Cells(4, 11) = CommandButton1.Caption Sheets("PLAN").Cells(7, 10) = CommandButton1.Caption End If End Sub