|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Xavier Inscription : février 2012 Messages : 8 ![]() |
Bonjour,
Je souhaiterai faire une macro qui permet de passer à la ligne suivante. Je m'explique : J'ai deux feuilles : "clients" et "formulaire" * dans la feuille "clients" : ligne 1 = caractéristiques du client 1 (nom, prénom, adresse, tel...) ligne 2 = caractéristiques du client 2 (nom, prénom, adresse, tel...) ... ligne 50 = caractéristiques du client 50 (nom, prénom, adresse, tel...) * dans la feuille "formulaire" : En A1 : ca reprend le nom et prénom du client 1 <=> [formulaire]A1=[clients!]A1 J'aimerai qu'en cliquant sur le bouton "client suivant" : [formulaire]A1=[clients!]A2 Ensuite j'aimerai qu'en cliquant à nouveau sur le bouton "client suivant" : [formulaire]A1=[clients!]A3 .... et ainsi de suite jusqu'au dernier client. Est-ce réalisable ?? Pouvez me donner un petit coup de main pour la macro SVP ? Merci. Xavier |
|
|
00
|
|
|
#2 | |||
|
Expert Confirmé Sénior
![]() Dominique LEMAIRESalarié Champagne Inscription : décembre 2006 Messages : 2 636 ![]() |
Bonjour,
Pour commencer, j'imagine qu'il restera du boulot ! code de ton bouton (placé sur feuille formulaire) : Code :
__________________
Dom De Anomaly Citation:
|
|||
|
|
00
|
|
|
#3 | ||
|
Invité de passage
![]() Xavier Inscription : février 2012 Messages : 8 ![]() |
Bonjour,
J'ai de nouveau un problème avec ce bouton. En fait, j'ai répéter le code ci-dessus pour plusieurs caractéristiques (nom prénom, adresse, CP, ville) du client. (J'imagine qu'il y a plus simple comme code, mais je ne sais pas faire...) Code :
Merci d'avance. Xavier |
||
|
|
00
|
|
|
#4 | ||
|
Membre Expert
![]() Inscription : décembre 2011 Messages : 566 ![]() |
Bonjour
Si dans la feuille "Formulaire", les cellules contiennent des formules au format suivant : [A1] "=TCD valeurs!A1" [B1] "=TCD valeurs!B1" [C1] "=TCD valeurs!C1" ... Et s'il faut passer à : [A1] "=TCD valeurs!A2" [B1] "=TCD valeurs!B2" [C1] "=TCD valeurs!C2" Le code suivant inséré dans la feuille "Formulaire" devrait convenir. Code :
|
||
|
|
10
|
|
|
#5 | ||
|
Expert Confirmé Sénior
![]() Inscription : juillet 2008 Messages : 5 848 ![]() |
Une autre proposition:
J'ai dans la feuille formulaire les formules suivantes: En B2: En D4: En B7: En F8: Par un bouton, on incrémente la ligne pour retrouver le client suivant et comme option: après le dernier client tu peux repasser au premier. Code :
__________________
Cordialement. |
||
|
|
20
|
|
|
#6 | ||
|
Invité de passage
![]() Xavier Inscription : février 2012 Messages : 8 ![]() |
Merci pour vos réponses BlueMonkey et mercatog.
J'ai opté pour la solution de BlueMonkey, car je l'ai un peu mieux comprise. Et en effet, elle fonctionne. Merci beaucoup. Dans le même genre, je veux créer un bouton "précédent", j'ai repris le code de Bluemonkey en remplaçant uniquement la fonction FormulNext : Code :
|
||
|
|
00
|
|
|
#7 | ||||
|
Expert Confirmé Sénior
![]() Inscription : juillet 2008 Messages : 5 848 ![]() |
Avec la même fonction (avec un paramètre optionnel à True si on veux trouver le précédent)
Code :
La fonction peut être simplifiée comme ceci Code :
__________________
Cordialement. |
||||
|
|
10
|
|
|
#8 | ||
|
Membre Expert
![]() Inscription : décembre 2011 Messages : 566 ![]() |
Re.
Dans la version posté en post#4 pour chercher les lignes précédentes, il faut utiliser la fonction AfficheLignePrecedente(). Le code proposé par Mercatog est basé sur une recherche de ligne à partir de la fin de la formule contenant la plage. Cette astuce lui permet de ne pas avoir à décoder le nom de l'onglet. ![]() Autre solution pour éviter d'avoir à décoder / encoder la plage ci-dessous. Code :
|
||
|
|
10
|
|
|
#9 |
|
Invité de passage
![]() Xavier Inscription : février 2012 Messages : 8 ![]() |
Merci à vous pour votre partage de connaissances ! Super, ça fonctionne avec la formule de Mercatog!!
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com