Case cocher pour récapitulatif sur une autre feuille

Barfly034

XLDnaute Nouveau
Bonjour à tous,

Je suis nouveau sur le forum et je travaille actuellement sur un projet pour le travail.
Je vais essayer d'être concis dans mes explications,car je suis totalement novice dans ce domaine.
J'ai un classeur Excel, comprennant 5 feuilles. Sur les 4 premières feuilles, des références produits.

J'aimerai intégrer au début des feuilles 1 a 4, une colonne qui permettrait de cocher les produits que nous voulons sélectionner (ou pas), et qui les transfèrerait automatiquement sur la 5ème feuille, pour ainsi donner un compte rendu de ce que nous avons cocher dans les feuilles 1 2 3 et 4.Est ce possible?

J'ai trouver comment intégrer une case à cocher via le menu Développeur, mais quelle est la différence entre une case ActiveX et une case de formulaire?
Il m'a semblé que la case à cocher était "indépendante", et non rattachée à la ligne et donc au produit que je veux, comment les mettre en relation?

Merci beaucoup à ceux qui m'apporteront leur lumière .
 

Modeste

XLDnaute Barbatruc
Re : Case cocher pour récapitulatif sur une autre feuille

Bonsoir Barfly034 et bienvenue,

Avec les cases à cocher "formulaire", tu peux définir une cellule "liée" (une cellule qui affichera VRAI ou FAUX, en fonction du fait que la case est cochée ou pas), en modifiant les options du "Format de contrôle".
Pour les cases à cocher "ActiveX", il suffit de renseigner l'adresse de la "LinkedCell" dans les propriétés du contrôle.

Ceci dit, si tu en as beaucoup, ça devient vite fastidieux à gérer (les insérer, définir la cellule liée, etc). Sur ce même forum, diverses solutions ont déjà été proposées, qui répondent à ta demande, en utilisant des cases à cocher, de "fausses cases à cocher", à l'aide de formules ou avec un peu de programmation.

Donc, soit tu fais une recherche, soit tu as besoin d'un coup de main supplémentaire, mais alors, le mieux serait de créer un petit fichier exemple, que chacun pourra utiliser pour proposer une solution ... Ne te restera plus ensuite qu'à comparer et opter pour celle qui te semble correspondre au mieux à tes attentes ... ou celle que tu te sens capable de te "réapproprier".
 

Barfly034

XLDnaute Nouveau
Re : Case cocher pour récapitulatif sur une autre feuille

Bonsoir, et merci pour ces quelques pistes!!

Roro69, c'est exactement ce qu'il me faut, ca parait plus simple que des cases à insérer une par une (j'ai 450 lignes...)
J'ai tenté de faire un vulgaire copier coller sur mon classeur, en insérant les cases en première colonne, et également le bouton essaie moi, que je nommerai par la suite "Exporter".

Comment l'adapter sur mon classeur personnel?
 

Barfly034

XLDnaute Nouveau
Re : Case cocher pour récapitulatif sur une autre feuille

Je viens de comprendre un peu plus le mécanisme de ton fichier Excel Roro69.
J'ai donc copié mes données, dans ton classeur, en face des "cases", et ca marche.
Seul bémol, il faudrait que dès que la case A6 soit décochée, la case B6 ne s'affiche plus dans la feuille 2, tu comprends?
Par ailleurs,est il possible de ne pas copier qu'une seule case en Feuille 2 , mais la ligne complète correspondant à la case?
 

roro69

XLDnaute Impliqué
Re : Case cocher pour récapitulatif sur une autre feuille

Rebonsoir
Seul bémol, il faudrait que dès que la case A6 soit décochée, la case B6 ne s'affiche plus dans la feuille 2, tu comprends?
Tu devrais mettre le fichier et expliquer..........
Par ailleurs,est il possible de ne pas copier qu'une seule case en Feuille 2 , mais la ligne complète correspondant à la case?
Oui la possible dans le module remplace le code par celui ci
Sub COPIER()
Dim Cel, RgCoche As Range
Set RgCoche = Feuil1.Range("A6", Feuil1.Range("A65536").End(xlUp))
For Each Cel In RgCoche
If Cel.Value = "ý" Then
Range(Cel.Offset(0, 1), Cel.Offset(0, 5)).Copy Feuil2.Range("A1").End(xlDown).Offset(1, 0)'Le cel.offset(0,5) se déplace jusqu'a la 5 ième colonne si plus de colonne change ce chiffre
End If
Next Cel
End Sub
A++
 

Barfly034

XLDnaute Nouveau
Re : Case cocher pour récapitulatif sur une autre feuille

Voilà la PJ.
Le but étant que les lignes cochées dans la feuille ASSISTANT PREPA DE VISITE, se retrouvent dans la feuille COMPTE RENDU PREPA DE VISITE, et que quand elles sont décochées, elles ne restent plus en mémoire sur la page Compte Rendu.Ce n'est qu'un extrait de mon document, il y a 300 lignes.

Un bouton EXPORTER VERS PREPA DE VISITE aura la même utilité que celui dans son document.
 

Pièces jointes

  • BASE DE DONNEES 2 test.xlsx
    14.5 KB · Affichages: 244

Modeste

XLDnaute Barbatruc
Re : Case cocher pour récapitulatif sur une autre feuille

Bonjour Barfly034, roro69,

En reprenant le principe proposé par roro69, une adaptation à ton classeur:
En feuille1, le double-clic fait apparaître, coche ou décoche les "cases" dans la plage A3:A500
La simple activation de la feuille2 (par clic sur l'onglet ou via le lien hypertexte que tu as inséré) "met à blanc" la plage A6:Z500, puis recopie les données de la feuille1, si la "case" est cochée, en clonne A.

Un clic droit sur l'onglet de chacune des 2 feuilles > Visualiser le code

... à toi de voir ... et de nous dire ensuite!

Attention: si tu enregistres le fichier au format xl2010, tu devras sélectionner le type
"Classeur Excel (prenant en charge les macros) (*.xlsm)"
 

Pièces jointes

  • BASE DE DONNEES (Barfly034).xls
    49.5 KB · Affichages: 330

Barfly034

XLDnaute Nouveau
Re : Case cocher pour récapitulatif sur une autre feuille

Bonjour Modeste,

C'est génial, je viens de bosser un peu dessus,super! J'ai encore deux petites questions,désolé je suis exigeant, je sais...

-J'aimerai intégrer en case A1, de la feuille 1, un "bouton", ou lien hypertexte, permettant de remettre toutes les cases de la colonne A, vierge, de toutes les décocher en cliquant dessus, est ce faisable?

-Dans la feuille 2, j'aurai souhaité une case, en H73, qui fasse la somme de toutes la colonne H. Je l'ai crée, mais quand je modifie mes cases cochées, elle disparait automatiquement, comment faire pour la conserver?

Merci 1000 fois !


edit: je pense avoir trouvé tout seul la réponse a ma deuxième question, j'ai visualisé le code,et cette ligne la a attiré mon attention : Me.Range("A6:Z500").ClearContents , si je comprends bien ,ca remets a zéro de la case A6 a la case Z500, j'ai alors modifié et mis a la place de Z500,H72, ce qui me laisse la case H73... désolé je suis vraiment nul en programmation c'est pas mon domaine.
 
Dernière édition:

Modeste

XLDnaute Barbatruc
Re : Case cocher pour récapitulatif sur une autre feuille

Re-Bonjour,

Pendant que je vais promener le chien, apporte quelques précisions:


  • Pour le bouton en feuille1, tu parlais, la fois passée, de 300 lignes. Est-ce à dire que tu auras toujours un nombre fixe de "cases" en colonne A? Tu souhaites en insérer un nombre x et tu supprimes ensuite celles dont tu n'aurais pas besoin?
  • Veux-tu trouver un système pour "décocher" les cases préalablement cochées ou les effacer?
  • Le nombre de cases est-il lié au nombre de données présentes dans les autres colonnes? Ce contenu varie-t-il (en quantité)?



  • Pour ce qui est de la feuille2 et ta formule en H73, normal qu'elle disparaisse, puisque j'ai signalé que l'activation de cette feuille "met à blanc la plage A6:Z500"! A nouveau, comme tu avais évoqué 300 lignes, j'ai prévu large :eek:
  • Si nécessaire, on pourrait ré-insérer la somme sous la dernière ligne de données
    ... Ceci dit, tu pourrais également insérer cette somme en H4 (de cette manière, elle ne serait pas effacée!)


A plus tard,
 

Barfly034

XLDnaute Nouveau
Re : Case cocher pour récapitulatif sur une autre feuille

Merci pour ta réponse rapide. Pour la deuxième partie, j'ai effectivement vu cette formule et l'ai modifié.

J'ai au total, 289 lignes, en feuille 1, au total ,je n'aurai pas plus de 310 Lignes, une fois la base de données complète.
La base de données sera toujours la même en feuille 1? je n'en supprimerai aucune.
Le système que j'aimerai trouver, aura pour but uniquement de décocher toutes les cases.
Chaque ligne supplémentaire aura exactement les mêmes données que les lignes précédentes. Je sais pas trop si j'ai été clair pour le coup...

Si tu veux, c'est un outil de préparation de visite pour mes commerciaux. Chaque ligne cochée en Feuille 1 se retrouvera en Feuille 2, et ensuite, le commercial n'aura qu'à imprimer la feuille 2 pour aller a son RDV. Pour un futur RDV, il cliquera sur le bouton qui décoche toutes les cases, en cochera d'autres,et aura un compte rendu différent... Par ailleurs, il faudra que j'intègre alors un bouton d'impression rapide à la feuille 2, en F1.

Merci
 

Modeste

XLDnaute Barbatruc
Re : Case cocher pour récapitulatif sur une autre feuille

re,

Pour "décocher" toutes les "cases" en colonne A, il suffit d'inscrire un "o" dans toutes les cellules concernées. Si les fausses cases existent déjà dans toute la plage, il me semble que le plus simple est d'ajouter la petite procédure suivante dans le module de la "Feuil1" (au-dessus ou en dessous de celle qui y figure déjà: Worksheet_BeforeDoubleClick):
VB:
Sub mettreABlanc()
    Me.[A3:A500].SpecialCells(xlCellTypeConstants) = "o"
End Sub
Bien sûr, si tu es certain de ne jamais dépasser les 310 lignes, tu peux faire le changement et remplacer 500 par 310 (ou 312, suivant que tu comptes à partir de la ligne 1 ou de la ligne 3!)

Il ne te reste qu'à créer ton bouton, lui associer ce bout de code ... et tester!
 

Barfly034

XLDnaute Nouveau
Re : Case cocher pour récapitulatif sur une autre feuille

ca y est, j'ai pu l'intégrer, non sans difficulté, mais c'est fait...il ne me reste plus qu'à mettre mon bouton Print en case F1 de la feuille 2, pour une impression plus rapide.après quelques heures passées dessus,j'en vois la fin...
 

Discussions similaires

Réponses
2
Affichages
275

Statistiques des forums

Discussions
312 157
Messages
2 085 819
Membres
102 992
dernier inscrit
KOSTIC