Sujet pour Quentin, le prestidigitateur illusionniste : carnets et boutiques

0

Bonjour Quentin,

j'espère que ton petit lapin Rouffi et ta petite colombe Bernadette vont bien. ;)

voici la solution que je te propose :

https://www.cjoint.com/c/LGopwdN1df0

* sur la feuille "001" tu peux voir qu'il y a déjà des numéros de 7 chiffres.

* pour faire un nouveau tirage, fais simplement Ctrl t

* comme c'est un tirage sans remise : a) tous les numéros sont différents ;
b) au bout d'un très, très long moment, tu auras ce message d'information :
« Terminé ! Tous les numéros ont été tirés. » ; alors comment continuer ?

* clique sur le bouton "OK" pour quitter la boîte de dialogue ; fais Ctrl i
cet autre message d'information : « Initialisation effectuée » ; c'est bon :
tu peux quitter la boîte de dialogue et faire de nouveau Ctrl t pour de
nouveaux tirages. :)

----------------------------------------------------------------------------------------------------

* va sur la 1ère feuille "Récap"

* en A2:A6 : nombres de 1 à 5, affichés sur 3 chiffres : "001" à "005"

* en B2:B6 : les même nombres sous forme de texte de 3 chiffres :
"001" à "005" : c'est ceux-là qui servent de référence de feuille ;
tu pourras ensuite masquer la colonne B.

* pour la ligne 2 : les 5 formules de C2 à G2 utilisent toutes B2 : c'est ce
qui permet de lire la feuille "001" ; pour les lignes 3 à 6, c'est pareil (les
formules ont été étirées)
; ça lit les feuilles "002" à "005".

* formule en H2 : =E2+F2+G2 ; formule en i2 : =30-H2

----------------------------------------------------------------------------------------------------

attention : lis le code VBA de Module1 et de ThisWorkbook.

si tu as besoin d'infos complémentaires, n'hésite pas ! :)

rhodo

    rhodo Posté le 14 juillet, 17:42
    par rhodo
    Répondre
    0

    Bonjour Soan !

    Je viens d'avoir un message d'une de tes connaissances sur le forum qui m'a transmit le lien, merci beaucoup, je pensais que tu avais eu bien mieux à faire :D ( ou que tu étais en cavale car si j'ai bien compris ton compte à été rendu inactif, tu dois être un grand repris de justice !)

    Merci pour ton fichier, ça me fait bizarre après 15 jours de revenir sur cette présentation car un autre confrère à toi a essayé de m'aider en voyant ton compte désactivé et il n'est pas parti sur la même présentation ni sur les mêmes techniques je crois.

    J'ai bloqué au tout début de ton message pour être franc... à "ctrl T", étant sur Mac j'ai donc cherché la correspondance du raccourci, je l'ai trouvé et une fois fais... qu'elle fut ma surprise en voyant que la combinaison de touche correspondait à un caractère, celui d'une croix qui appartenait à un certain Jesus je crois. Haha

    Je ne vois donc pas comment créer un nouveau carnet :(

    Merci ton aide :)
    Lillusionniste Posté le 30 juillet, 12:21
    par Lillusionniste
    0

    Bonjour l'Artiste !  ;)

    je suis bien content qu'on t'ait transmis le lien, et qu'on puisse quand même se retrouver !  :)

    mon compte est en effet devenu inactif, c'est pourquoi je n'ai pas pu te répondre sous ton post #18 du 18 juillet (que j'avais bien lu entièrement) ; je suis bien l'ex-soan, et sur ce site, je signe de mon pseudo rhodo.

    j'ai deviné qui est « le confrère » qui a essayé de t'aider (et qui est déjà intervenu lui aussi sur ta conversation initiale) ; dis-lui bien merci de ma part, car c'est vraiment très gentil à lui d'avoir pris la relève ; j'espère que tu aimes la présentation du nouveau fichier, avec plusieurs feuilles.

    tout ce qui va suivre est à propos du raccourci clavier Ctrl t (en particulier) et des raccourcis clavier en général.

    ---------------------------------------------------------------

    sur mon PC, avec ma version d'Excel pour PC, Ctrl t est un raccourci qui ouvre la fenêtre "Atteindre" : https://www.cjoint.com/c/LGElHtRYHi0 ; sur ton Mac, d'après ce que tu as écrit, Ctrl t n'ouvre pas cette fenêtre "Atteindre" mais à la place, ça affiche ton caractère spécial d'une croix ; peut-être celle-ci : ♰ ; dans ces deux cas (PC ou Mac), il s'agit de l'action par défaut qui a été choisie à la base pour Ctrl t (choisie par les concepteurs de la version d'Excel, donc par les programmeurs de Microsoft).

    quand l'utilisateur définit un raccourci clavier dans un classeur Excel, c'est toujours pour appeler une macro qu'on a faite ; et qui est forcément une Sub (pas une Function) ; de plus, cette Sub est forcément sans paramètre ; car si la sub a un paramètre ou plus, elle n'apparaît pas dans la fenêtre "Macro" ; enfin, juste pour info : même une Sub sans paramètre n'apparaît pas dans la fenêtre "Macro" si elle a été déclarée avec le mot-clé Private (= privée) ; donc les seules macros qui apparaissent dans la liste des macros de la fenêtre "Macro" sont des subs sans paramètre et publiques ; rappel : sub est l'abréviation de « subroutine », qui signifie « sous-programme ».

    quand l'utilisateur définit un raccourci clavier pour appeler une macro, ça remplace l'action initiale, donc pour Ctrl t : sur mon PC, ça n'ouvre plus la fenêtre "Atteindre" et sur ton Mac, ça n'affichera plus ton caractère spécial de la croix ; à la place : ça appellera ma macro qui fait les tirages aléatoires, que j'ai appelée T30Num ; je l'ai appelée ainsi car elle fait un tirage de 30 numéros (tirage aléatoire sans remise) ; il y a 30 numéros car il y a 10 numéros pour chacune des 3 réductions (-5% ; -10% ; -15%) : 3 × 10 = 30 ; pour info : tu pourras voir dans le code VBA que cette sub T30Num appelle la sub privée T1Num (tirage d'un seul numéro aléatoire sans remise).

    ---------------------------------------------------------------

    * va sur la feuille "001"

    * fais Alt F8 ➯ cette fenêtre "Macro" : https://www.cjoint.com/c/LGEmwQDXas0

    * la sub sélectionnée est celle sur fond bleu : T30Num ; tu pourrais l'essayer de suite en cliquant sur le bouton "Exécuter" ; mais ne le fais pas et clique sur le bouton "Options..." ➯ ça ouvre la fenêtre "Options de macro" (pour la sub sélectionnée, donc pour T30Num) ; dans la petite case, mets la lettre t ; tu dois avoir ceci :

    https://www.cjoint.com/c/LGEmGZaQhc0

    * clique sur le bouton "OK" ➯ retour à la fenêtre "Macro"

    ---------------------------------------------------------------

    * sélectionne en dessous la 2ème macro TblInit ; clique sur le bouton "Options..." ➯ ça ouvre la fenêtre "Options de macro" (pour la sub sélectionnée, donc pour TblInit) ; dans la petite case, mets la lettre i ; tu dois avoir ceci :

    https://www.cjoint.com/c/LGEmPBQpbw0

    * clique sur le bouton "OK" ➯ retour à la fenêtre "Macro"

    ---------------------------------------------------------------

    * clique sur la croix de fermeture de la fenêtre "Macro" (dans le coin haut droit) ➯ ça ferme la fenêtre "Macro", et tu es de retour sur la feuille de calcul "001".

    * tout est ok : tu peux utiliser le raccourci clavier Ctrl t pour faire des tirages aléatoires sans remise de 30 numéros d'un coup ! tu peux voir les changements en plage E2:E31.

    * refais plusieurs fois Ctrl t ; au bout d'un très, très long moment, comme il s'agit de tirages sans remise, tu auras, fatalement, ce message : "Terminé ! Tous les numéros ont été tirés." ; c'est normal, car à force de puiser des boules dans un sac sans les y remettre, le sac finit par être vide ! alors comment continuer pour faire d'autres tirages ?

    * fais Ctrl i ➯ ça lance la sub TblInit ; elle réinitialise le tableau vba T des tirages (c'est comme si on remettait toutes les boules dans le sac) ➯ tu peux jouer à refaire Ctrl t.

    ---------------------------------------------------------------

    si tu vas sur une autre feuille, ça appelle automatiquement TblInit, afin que le tableau T soit réinitialisé ; sur les autres feuilles (à part "Récap") ; tu peux aussi faire Ctrl t puis Ctrl i.

    j'ai choisi t car c'est l'initiale de tirage ; et j'ai choisi i car c'est l'initiale de initialiser ; ainsi, c'est plus facile de se rappeler quelle lettre appelle quelle macro.

    tous les numéros sur la feuille "001" commencent par 001 ; tous les numéros sur la feuille "002" commencent par 002 ; tous les numéros sur la feuille "003" commencent par 003 ; etc... mais attention : ça ne dépend pas du nom de l'onglet de la feuille mais du nombre de la cellule A2 (fusion de cellules A2:A31).

    ---------------------------------------------------------------

    * regarde déjà tout ça ; si besoin, tu peux demander plus d'infos.

    * ensuite, va sur la feuille "Récap" et commence à tout regarder.

    ---------------------------------------------------------------

    sur la feuille "Récap" :

    * attention : bien que d'apparence identique, B2:B6 est différent de A2:A6 !

    * A2:A6 sont les nombres 1 à 5 avec ce format personnalisé : 000

    * B2:B6 sont les textes "001" à "005" ; c'est ceux-là qui servent pour la lecture des feuilles "001" à "005", via la fonction Excel INDIRECT() ; il ne faut surtout pas supprimer la colonne B, mais tu pourras la masquer ensuite.

    là aussi, si besoin, tu peux demander plus d'infos.  :)

    rhodo

    rhodo Posté le 30 juillet, 15:14
    par rhodo
    0

    Bonsoir Lillusionniste,

    Lis d'abord mon post précédent de 15:14 ; voici un complément :

    * pour lancer une macro, c'est normalement via Alt F8 : ça ouvre la fenêtre "Macro" ; la 1ère macro de la liste est automatiquement déjà sélectionnée (à fortiori si c'est la seule macro de la liste) ; si y'a plusieurs macros, et que tu veux lancer une macro autre que la première de la liste, sélectionner cette macro ; cliquer à droite sur le bouton "Exécuter".

    * un raccourci clavier permet donc de lancer une macro via, par exemple, Ctrl t ; c'est plus simple que la manip ci-dessus car ça permet d'éviter ces 3 choses : Alt F8 ; sélection éventuelle d'une macro ; clic sur le bouton "Exécuter" ; mais au cas où un raccourci clavier ne marcherait pas sur ton Mac, tu seras bien obligé de choisir la méthode ci-dessus.

    * il y a aussi une 3ème méthode pour lancer une macro : dans le code VBA, placer le curseur de texte à l'intérieur de la sub à exécuter, puis appuyer sur la touche F5.

    ----------------------------------------------------------------

    tu te rappelles de la fenêtre "Options de macro" ? c'est là où tu as mis la lettre t pour la sub T30Num ; si tu effaces cette lettre (avec la touche Suppression ou la touche Retour Arrière), et que tu cliques sur le bouton "OK" : ça supprime le raccourci clavier Ctrl t, dans le sens où ça ne lancera plus la macro T30Num ; et ça redeviendra comme avant : sur mon PC, ça ouvrira la fenêtre "Atteindre" ; sur ton Mac, ça affichera à nouveau ton caractère spécial de la croix.

    bien sûr, si tu supprimes la lettre i de la macro TblInit, là aussi, Ctrl i ne lancera plus la macro TblInit ; ça retrouvera son action initiale par défaut : bascule italique (ça met un texte en italique, ou ça enlève cet italique).

    c'est idem pour tout autre raccourci clavier : il suffit de supprimer la lettre de la petite case pour que ça retrouve son action initiale par défaut.

    ainsi, ne t'inquiètes pas : au besoin, tu as quand même la possibilité de retrouver les fonctionnalités initiales d'Excel.

    ----------------------------------------------------------------

    à te lire pour la suite, et n'oublie pas de m'indiquer si tu as réussi à faire marcher les 2 macros sur ton Mac ; si oui, m'est avis que « la pression en haut lieu » va pouvoir grandement s'amenuiser !  :D  tu n'auras plus besoin de faire des tours de magie pour distraire leur attention, et ton boulot sera grandement simplifié : ça sera à la fois bien plus rapide et bien plus sûr que de devoir générer tous les codes à la main !  :)

    rhodo

    rhodo Posté le 30 juillet, 21:42
    par rhodo
    0

    Oyé oyé rhodo, 


    Merci pour cette réponse rapide ou tu survole très rapidement les explications du fichier que tu as fais. Ca va que je suis très intelligent et que je manie parfaitement Excel, sans quoi je n'aurais jamais pu m'en sortir avec ton fichier mouhahahaha

    Merci d'avoir tout détailler comme ça, même moi j'ai pu comprendre !

    Je vais essayer de te répondre point par point et de façon concise comme tu l'as fais.J'ai réussi à utiliser les raccourci que tu as donné, il y avait simplement une autre touche sur laquelle il fallait appuyer (ça aurait été trop simple sinon), le raccourci est donc cmd + ctrl +t.

    __________________________

    Si j'ai bien compris la marche à suivre quand je veux ajouter une boutique je dois :

    - Créer un onglet

    - Copier l'onglet précédent et le coller dans le nouveau

    - Indiquer le numéro du magasin en A2 pour que les codes commencent par ce numéro

    - Sélectionner la dernière ligne de l'onglet Récup et l'étiré d'une ligne

    C'est bien ça ?

    __________________________

    A force de discuter de ce projet avec plusieurs interlocuteur et du fait qu'on ne s'est pas parlé pendant deux semaines et que mon projet à un petit peu évolué je ne sais plus quelles infos je t'ai donné alors je vais essayé de les récapituler ici si tu veux bien :

    Je dois recensé 30 codes de réduction par boutique (3 types de réduction x10)

    Le code commencera toujours par trois chiffres qui correspondent au numéro du carnet et il sera suivi de 4 chiffres.

    Aucun code ne peut se répéter au sein du même carnet mais ce n'est pas gênant si ils se répètent de temps en temps sur d'autre carnet.

    Il faut qu'on puisse rapidement cocher les codes utiliser et avoir un tableau de synthèse lisible pour pouvoir analyser ces données.

    __________________________

    Je crois avoir tout résumé, j'en viens maintenant à mes questions :

    - Est-ce que le fichier que tu as fais à une limite en terme de carnet possible ? (je pense que non car les trois premiers chiffres changent à chaque carnet mais sait-on jamais)

    - Est-ce qu'au bout d'un certain nombre de carnet et donc d'onglet, le fichier va atteindre un poids qui sera trop élevé et difficilement gérable par un ordinateur lambda ?

    - Est-ce qu'il serait possible de faire un onglet avec tous les carnets à la suite ? (Ton collègue a présenté son fichier comme ça et  je trouve que ce n'est pas une mauvaise idée, qu'en penses-tu ? Je te joins son fichier, ça sera plus clair que mes explications)

    - Quand on aura 300 carnets comment je vais pouvoir rapidement le trouver dans tous les onglets ? J'ai vu qu'il y a la fonction rechercher alors je me demandais si j'aurais juste à taper "295" par exemple ?

    https://www.sendspace.com/file/lkzv6w

    - Je viens d'y penser en t'écrivant ce message mais je ne sais plus si je t'avais dis comment j'allais utiliser ce fichier. Bien sur il va nous servir à créer et pointer les codes promo et il va aussi me servir à faire les cartes promotion. Mon fichier Indesign est déjà prêt et n'attend plus que les fichiers en format tableur pour que je puisse faire les fusions de données. Est-ce que tu crois qu'il y a un moyen automatique pour exporter ces fichiers ? sachant que pour chaque carnet je vais devoir faire 3 exports (un par pourcentage de réduction). Et encore mieux, est-ce que tu crois que je pourrais exporter par exemple tous les codes de réduction en -5%, puis -10% et -15% pour les intégrer au site marchand ? (il faut que je vérifie ce point, je ne suis pas sur de la façon de les rentrer, je vais voir ça tout de suite)


    Désolé d'avoir mis du temps à répondre mais j'avais besoin de recul, j'ai la tête embrumée en ce moment.

    Merci encore pour le temps passé sur mon dossier, je vais pouvoir ranger ma baguette magique et m'en aller retrouver mon petit lapin Rouffi et ma petit colombe Bernadette pour un petit pique nique en forêt. 


    A tantôt l'ami et merci pour ton aide !


    Posté le 31 juillet, 12:44
    0

    Bonjour Quentin,

    c'est une bonne nouvelle que tu as pu utiliser les raccourcis clavier !  :)  donc sur Mac, c'est : cmd+ctrl+t et cmd+ctrl+i ; moi, je continuerai à écrire de façon simplifiée Ctrl t et Ctrl i.  ;)

    à propos de la marche à suivre pour ajouter une boutique : oui, c'est bien comme tu as décrit, à part que les 2 premières étapes peuvent être faites d'un seul coup :

    clic droit sur le dernier onglet (ici "005") ; dans le menu contextuel, choisir l'item "Déplacer ou copier..." ; tout en bas, cocher la case ☑ Créer une copie ; au-dessus, sélectionner "(en dernier)" ; cliquer sur le bouton "OK" ➯ feuille identique nommée "005 (2)" ; à renommer en "006" ; en A2 : saisir 6006 ; en B2 : saisir la date de distribution du carnet, par exemple : 16/7 ➯ 16/07/2022 ; en C2 : saisir le nom de la nouvelle boutique, par exemple : "Boutique Lion" ; effacer toutes les coches de F2:F31 (ça sera à cocher plus tard) ; sélectionner A2 ; Ctrl t mettra des numéros qui commencent par 006.

    sur la feuille "Récap" : étirer la dernière ligne ➯ les formules sont reprises, et ça affiche bien les données de la nouvelle feuille "006" ; mettre pour A7:i7 une bordure haut avec trait fin (du 1er style de la liste).

    ------------------------------------------------------------------------

    maintenant, comme il y a une feuille par boutique, alors effectivement, le problème est qu'avec 300 boutiques, tu vas avoir 300 feuilles ! (en plus de la feuille "Récap") ; ça va faire un gros classeur ! et ça ne sera pas très pratique de devoir passer d'une feuille à une autre si elles sont très éloignées : par exemple de la boutique 280 à la boutique 12 (ou inversement).

    j'ai vu ton nouveau fichier joint ; c'est pas mal, mais pour la 2ème feuille "Gestion carnets" : pour 333 carnets, il y a quand même 9992 lignes ! ça fait beaucoup, et c'est pas très facile de s'y retrouver !

    avant de voir ce fichier, j'avais déjà fait ce matin une 2ème version de mon fichier, avec seulement 2 feuilles ; c'est dans le post qui suit.

    rhodo

    rhodo Posté le 31 juillet, 18:45
    par rhodo
    0

    Bonsoir Quentin,

    Lis d'abord mon post précédent, de 18:45.

    voici donc la 2ème version de mon fichier : https://www.cjoint.com/c/LGFq0mkpV30

    --------------------------------------------------------------------------------------------------------------------

    1) regarde d'abord la 1ère feuille "Récap"

    il y a 5 boutiques ; ça fait donc 6 lignes avec la ligne d'en-têtes ; pour 300 boutiques, il y aura donc 301 lignes avec la ligne d'en-têtes ; si tu veux aller jusqu'à 333 boutiques, ça fera 334 lignes avec la ligne d'en-têtes.

    ça fait donc bien moins que 9992 lignes ! et ça sera plus facile de trouver la ligne des données d'un carnet (donc d'une boutique) ; c'est bien un seul carnet par boutique, n'est-ce pas ? ou il peut y avoir plusieurs carnets pour une même boutique ? ce que j'ai fait dans le fichier est uniquement pour le premier cas : un seul carnet par boutique.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    voici le détail pour la ligne 2 :

    * en A2 : saisir le n° du carnet : 1 ; format personnalisé 000 ➯ affichage : 001 

    * en B2 : saisir la date de distribution du carnet, par exemple : 11/7 ➯ 11/07/2022

    * en C2 : saisir le nom de la boutique, par exemple : Léopard

    * de D2 à M2 : place pour 10 coches (réduction -5%) ; saisir les coches.

    * de N2 à W2 : place pour 10 coches (réduction -10%) ; saisir les coches.

    * de X2 à AG2 : place pour 10 coches (réduction -15%) ; saisir les coches.

    * formule en AH2 : =NB.SI(D2:M2;"x") ➯ 5

    * formule en Ai2 : =NB.SI(N2:W2;"x") ➯ 4

    * formule en AJ2 : =NB.SI(X2:AG2;"x") ➯ 3

    * formule en AK2 : =AH2+AI2+AJ2 ➯ 12

    * formule en AL2 : =30-AK2 ➯ 18

    note bien que la saisie se fait dans les colonnes A à AG ;
    attention de ne pas écraser les formules de AH à AL !

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    pour les lignes 3 à 6 : c'est pareil que pour la ligne 2.

    --------------------------------------------------------------------------------------------------------------------

    2) va sur la 2ème feuille "Carnet" ; c'est comme d'habitude : la même présentation que tu connais déjà ; comme d'habitude aussi, tu peux faire plusieurs fois Ctrl t ; puis bien plus tard, quand tous les numéros auront été tirés, tu pourras faire Ctrl i pour réinitialiser le tableau vba T afin de pouvoir refaire une autre série de tirages aléatoires sans remise.  :)

    alors où est la différence ? c'est que cette fois, la feuille "Carnet" sert pour toutes les boutiques, ici au nombre de 5.

    a) la cellule A2 est déjà sélectionnée ; il y a 1 ; avec le format 000 ça affiche 001.

    b) en A2 : saisis 2 ; oh ! ça en a fait des choses, hein ?  ;)  ça a automatiquement généré de nouveaux nombres aléatoires qui commencent par 002, en plage E2:E31 (tu pourras utiliser Ctrl t, puis Ctrl i) ; ça a repris les données de la 2ème boutique saisies en feuille "Récap" :

    * en B2 : la date de distribution du carnet : 12/07/2022

    * en C2 : le nom de la boutique : Panthère

    * de F2 à F31 : les 30 coches des colonnes D à AG de la feuille "Récap" ; attention : ne pas saisir de coches dans cette plage F2:F31 car y'a des formules pour reprendre les coches de la feuille "Récap" !

    sur le côté droit, le petit tableau de la plage J12:K17 est indépendant de la feuille "Récap" ; car les formules sont restées les mêmes qu'au tout début (tu les connais déjà).

    --------------------------------------------------------------------------------------------------------------------

    ainsi, tu peux considérer que la feuille "Carnet" est comme une loupe que tu mets sur une des boutiques, celle dont tu saisis le numéro en A2 ; bien sûr, il faut auparavant saisir d'abord en feuille "Récap" les données de la nouvelle boutique.

    mais attention : cette façon de faire est valable si quand tu as le tirage aléatoire désiré pour une boutique, tu imprimes la feuille ! car d'un tirage à un autre pour une même boutique, ou si tu changes de boutique, le tirage précédent est perdu.

    bien sûr, dans le paragraphe précédent, tirage signifie tirage de 30 numéros (de E2 à E31) ; ce n'est pas le tirage d'un seul numéro.

    quel est ton avis sur cette version ? j'espère que tu pourras t'en servir telle qu'elle est.  :)

    --------------------------------------------------------------------------------------------------------------------

    au cas où tu aurais besoin de conserver les 30 numéros d'un tirage,
    je pourrai te faire une autre version du fichier.

    rhodo

    rhodo Posté le 31 juillet, 20:00
    par rhodo
    0

    Bonjour rhodo,

    J'ai bien vu ton message ainsi que ton nouveau fichier mais j'avoue patauger.

    Je ne connais pas excel, j'ai du mal à comprendre ce qui est possible de faire et j'ai l'impression d'agacer parce que je m'exprime mal. Est-ce que tu pense qu'il serait possible qu'on s'appelle pour que j'essaye d'être plus clair qu'à l'écrit et de fait t'éviter de perdre ton temps ?

    La version que tu as fais je ne la comprend pas trop car si je ne peux pas cocher les code sur la page "carnet" mais uniquement sur la page Récup ce n'est pas très pratique...(à moins que d'avoir loupé une info)

    Si tu refuse je comprendrais et j'essayerais d'être le plus clair possible à l'écrit ^^'

    Bonne journée l'ami,

    Posté le 1 août, 10:19
    -1

    Bonsoir Quentin,

    j'ai fait une autre version, que voici : https://www.cjoint.com/c/LHbtDfp0G30

    ----------------------------------------------------------------

    A) 1ère feuille "Boutiques"

    * la colonne "N" est pour le Nombre de boutiques (ou au choix : pour le Nombre de carnets).

    * la colonne "Boutique" est pour le nom de la Boutique ; j'ai mis les mêmes noms que ceux du fichier "Magicien-v5.xlsm".

    * la colonne "Date carnet" : c'est en fait la date de distribution du carnet.

    ----------------------------------------------------------------

    B) 2ème feuille "Carnets"

    j'ai choisi cette présentation car ainsi, il y a 10 lignes par carnet ; donc pour 5 carnets, ça fait déjà 50 lignes (en plus des 4 premières lignes) ; quand plus tard il y aura 300 carnets, ça fera donc 3000 lignes (en plus des 4 premières lignes) ; ça fait vraiment beaucoup, mais c'est quand même moins que les 9992 lignes du fichier "Magicien-v5.xlsm".

    tu peux voir qu'il y a déjà des coches "x" dans les colonnes "P" ; surtout, n'y touche pas pour l'instant : c'est pour ne pas fausser la démo qui viendra plus tard (pour info : P est l'initiale de "Pointage").

    la cellule B2 (sur fond jaune clair) est très importante ! pour l'instant, elle contient 1 ; format personnalisé 000001 ; tu pourras voir que B2 servira pour 3 choses différentes.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    fais Ctrl t ; ça a généré des codes aléatoires sans remise pour le carnet dont le est en B2, donc pour le carnet 001 ; tous les codes commencent par 001, et ce début de code est en fait le 001 de B2, ce n'est pas le 001 de B5 ; tu peux vérifier que tous les codes sont différents ; tu peux faire plusieurs fois Ctrl t pour faire d'autres tirages ; au bout d'un très, très long moment, tu pourras faire Ctrl i ; tu sais maintenant pourquoi : c'est pour l'initialisation du tableau vba T (équivalent de remettre toutes les boules dans le sac).

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    * en B2 : saisis 6 ➯ 006 ; y'a aucun changement ; c'est normal, car y'a que 5 boutiques, donc 5 carnets seulement ; le 006 est donc tout simplement ignoré.

    * en B2 : saisis 5 ➯ 005 ; le carnet 005 est maint'nant juste en dessous des 4 premières lignes ! voici donc la 2ème utilité de B2 : ça sert pour aller sur le carnet voulu.

    * fais Ctrl t ➯ codes aléatoires sans remise pour le carnet 005.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    * en B2 : saisis 4 ➯ 004 ; ça va sur le carnet 004 (juste sous les 4 premières lignes).

    * fais Ctrl t ➯ codes aléatoires sans remise pour le carnet 004.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    * en B2 : saisis 3 ➯ 003 ; ça va sur le carnet 003.

    * fais Ctrl t ➯ codes aléatoires sans remise pour le carnet 003.

    * note bien que tous les codes sont cochés ; fais Ctrl e ; ça a effacé toutes les coches de ce carnet ! eh oui, voilà la 3ème utilité de B2 : ça sert comme de carnet dont on veut effacer toutes les coches ; ça te permettra donc de recocher un carnet à partir de zéro.

    * sélectionne F25 ; appuie sur la touche Maj (juste au-dessus de la touche Ctrl) et maintiens-là enfoncée ; clique sur F34 et relâche la touche Maj ➯ ça a sélectionné la plage F25:F34 (à toi de trouver l'équivalent de cette manip sur ton Mac) ; une fois que F25:F34 est sélectionné : appuie sur la touche x minuscule puis aussitôt après sur les touches Ctrl Entrée ➯ ça a remis des coches "x" dans toute la plage F25:F34 (idem : manip à trouver sur ton Mac ; si y'a pas, achète-toi un vrai PC à la place ! ;D) ; fais ce genre de manip à droite, pour remettre des coches "x" en H25:H34 et en J25:J34 (c'est pour ne pas fausser la suite de la démo).

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    * en B2 : saisis 2 ➯ 002 ; ça va sur le carnet 002.

    * fais Ctrl t ➯ codes aléatoires sans remise pour le carnet 002.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    * en B2 : saisis 1 ➯ 001 ; ça va sur le carnet 001.

    * tu avais déjà fait Ctrl t ; mais tu peux le refaire si tu as envie.

    ----------------------------------------------------------------

    le post suivant sera des explications
    pour les 2 dernières feuilles.  :)

    rhodo

    rhodo Posté le 1 août, 23:13
    par rhodo
    1

    Bonjour Quentin,

    Lis d'abord mon post précédent, d'hier à 23:13.

    voici donc la suite des explications.  :)

    ----------------------------------------------------------------

    C) 3ème feuille "Récap"

    c'est donc un tableau récapitulatif, avec des statistiques sur le nombre de coches.

    attention : les 2 colonnes D et E sont obligatoires ; c'est 2 numéros de lignes pour la fonction Excel INDIRECT() qui est utilisée en colonnes F, G, et H ; tu pourras masquer ces 2 colonnes.

    attention : la cellule A1 doit obligatoirement contenir le mot "Carnet" ; car c'est aussi utilisé par la fonction Excel INDIRECT() des colonnes F, G, et H !

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    formules de la ligne 2 :

    * en B2 : =RECHERCHEV(A2;TBtq;3;0)

    * en C2 : =RECHERCHEV(A2;TBtq;2;0)

    * en D2 : =SI(A2="";"";(A2-1)*10+5)

    * en E2 : =SI(A2="";"";D2+9)

    * en F2 : =SI(A2="";"";NB.SI(INDIRECT(A$1&"s!F"&D2&":F"&E2);"x"))

    * en G2 : =SI(A2="";"";NB.SI(INDIRECT(A$1&"s!H"&D2&":H"&E2);"x"))

    * en H2 : =SI(A2="";"";NB.SI(INDIRECT(A$1&"s!J"&D2&":J"&E2);"x"))

    * en i2 : =F2+G2+H2

    * en J2 : =30-i2

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    toutes ces formules ont déjà été étirées jusqu'en ligne 6.

    ----------------------------------------------------------------

    D) 4ème feuille "Edition"

    * la cellule active est A2, qui contient "004".

    * en A2 : saisis 1 ➯ 001toutes les données sont mises à jour !
    y compris les coches de la colonne F ; et y compris à droite :
    le petit tableau de la plage J12:K17.

    * ton carnet 001 est prêt à être imprimé (sur une feuille papier, ou dans un fichier pdf).

    * tu peux faire Ctrl F2 ➯ aperçu avant impression du carnet 001.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    * en A2 : saisis 2 ➯ 002 ; toutes les données sont mises à jour !
    le carnet 002 est prêt à être imprimé.

    * en A2 : saisis 3 ➯ 003 ; toutes les données sont mises à jour !
    le carnet 003 est prêt à être imprimé.

    * idem pour les carnets 004 et 005.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    bien sûr, les codes sont ceux qu'il y a en feuille "Carnets" ;
    c'est fait par VBA, pas avec des formules.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    voici 2 formules dépendantes de la feuille "Récap" :

    * formule en B2 : =DECALER(Récap!B1;A2;0)

    * formule en C2 : =DECALER(Récap!C1;A2;0)

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    sur le côté droit, le petit tableau de la plage J12:K17 est indépendant de la feuille "Récap" ; car les formules sont restées les mêmes qu'au tout début (tu les connais déjà).

    ----------------------------------------------------------------

    n'oublie pas de lire tout le code VBA !

    * Module1 : 29 lignes.

    * Module2 : 32 lignes.

    * module de ThisWorkbook : 6 lignes.

    * module de la feuille B01 (Carnets) : 16 lignes.

    * module de la feuille D01 (Edition) : 19 lignes.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    ça sera encore mieux si tu comprends tout !  :D  mais t'as du pain sur la planche !  ;)

    petite question : d'après toi, à quoi sert le paramètre d de la sub GetNC() ?
    c'est pas évident, mais il faut quand même le laisser !  ;D

    ----------------------------------------------------------------

    alors, ce fichier te plaît mieux ?  ;)
    quel est ton avis ? ^^

    rhodo

    rhodo Posté le 2 août, 00:46
    par rhodo
    0

    Bonsoir Quentin,

    toujours pas de réponse ? c'est peut-être car tu es parti en vacances, ou car ce sujet ne t'intéresse plus ? si tu repasses par ici, et si ce sujet t'intéresse toujours, commence par lire mes 2 posts précédents ; puis lis ce qui suit.

    ---------------------------------------------------------------------------------------------------

    (A) à propos de ton fichier joint "Magicien-v5.xlsm"

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    1) pour la feuille "Gestion carnets"

    a) j'ai bien vu qu'il y a les 2 colonnes masquées D et E.

    b) il y a 333 carnets ; comme il y a 30 lignes par carnet, ça fait : 333 carnets × 30 lignes = 9990 lignes ; plus les 2 premières lignes = 9992 lignes ! ça fait vraiment beaucoup, et c'est pas très facile de s'y retrouver !

    c) comme il s'agit d'un tableau structuré, il faut donc éviter les cellules vides ; ça explique toutes les trop nombreuses répétitions ! pour un seul carnet, par exemple le premier, des lignes 3 à 32 :

    * en colonne B : il y a 30× le de carnet "1".

    * en colonne C : il y a 30× la date de distribution "12/05/22".

    * en colonne D ; il y a 30× le nom de la boutique "La petite boutique de Léo".

    * en colonne E : il y a 30× la Réf. boutique "001".

    * en colonne i : il y a 10× "-5%" ; il y a 10× "-10%" ; il y a 10× "-15%".

    d) tout ça prend déjà pas mal de place pour un seul carnet ; alors ça prend encore bien plus de place pour 333 carnets !

    e) j'ai bien vu la colonne F "Unique" ; y'a aucune formule : c'est que des nombres « en dur » ; même après avoir regardé tout le code VBA, je n'y ai rien vu qui explique comment sont générés ces nombres uniques ! c'est un mystère ! ou peut-être qu'il y avait eu une génération aléatoire, puis qu'il y a eu un copier / coller valeurs ? même s'il en est ainsi, comment donc pourras-tu faire plus tard de nouveaux tirages aléatoires ?

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    2) pour la feuille "Bilan"

    a) pour les 3 colonnes F, HJ : même si le format utilisé est "/ "0 : pourquoi donc répéter inutilement des "/ 10" ? on le sait bien qu'il y a 10 tickets pour chacune des 3 réductions ! ça aussi, ça prend inutilement de la place !

    b) la colonne M aussi est inutile, car c'est la somme des 3 colonnes ci-dessus : F + H + J ➯ bien évidemment, c'est que des 30 ! on s'en serait douté, tu ne crois pas ?  :D  c'est encore de la place inutile !

    c) en colonne C : que de place inutile pour le texte "Non distrib." ! sur les 333 carnets, il y a 329× ce texte de 12 caractères ➯ 329 × 12 = 3 948 octets = 3,85546875 Ko ≃ 3,86 Ko ≃ 4 Ko (en comptant avec : 1 caractère = 1 octet).

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    tout ça explique pourquoi la taille du fichier est de 883 Ko !

    ---------------------------------------------------------------------------------------------------

    (B) à propos de mon fichier "Proposition code réduction v3.xlsm"

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    1) comme il y a seulement 10 lignes par carnet, ça fait : 5 carnets × 10 lignes = 50 lignes ; plus les 4 premières lignes = 54 lignes ; plus tard :

    a) 300 carnets × 10 lignes = 3000 lignes ; plus les 4 premières lignes = 3004 lignes.

    b) 333 carnets × 10 lignes = 3330 lignes ; plus les 4 premières lignes = 3334 lignes.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    2) il n'y a pas de répétitions inutiles ! en particulier car sur la feuille "Carnets", il y a pour chacune des colonnes B à D des fusions de cellules, pour le de carnet, la date de distribution du carnet, et le nom de la boutique ; exemple pour le premier carnet : 001 ; 11/07/2022 ; "La petite boutique de Léo".

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    taille actuelle du fichier pour 5 carnets en feuille "Carnets(et donc 54 lignes) : 42 Ko.

    j'ai déjà fait une version améliorée du fichier qui fait 52 Ko (pour 5 carnets aussi).

    avant de la proposer, j'attends que tu reviennes sur ce site ; que tu indiques que tu es toujours intéressé par cet exo ; que tu donnes ton avis sur mes 2 posts précédents et sur ce post-ci ; mais évidemment, tout ça devient inutile si cet exo ne t'intéresse plus !

    à te lire bientôt peut-être pour une éventuelle suite ?

    rhodo

    rhodo Posté le 3 août, 23:06
    par rhodo
    0

    Bonsoir rhodo,

    Merci pour ce fichier il m'a l'air topissime !

    C'est ma bonne nouvelle de la journée et il était temps qu'elle arrive haha

    J'aime beaucoup cette fameuse case B2 ! Tant pour le numéro du carnet que pour le "aller à" ou alors pour tout décocher :bave:. Le coup du x + ctrl + entrée est magique ! J'ai l'impression d'être un enfant à qui on vient de parler du père Noël :D

    Ça rend la navigation fluide et c'est plus lisible !

    Je n'ai rien à redire si ce n'est que je vais surement changer le sens du nom de la date et de la boutique pour que ce soit plus lisible. J'avais fais comme ça mais avec le recul c'était peut-être une fausse bonne idée. Je peux le changer sans que ça touche à toutes tes formules hein ?


    J'ai dû encore mal m'expliqué sur l'utilisation que j'allais faire de tous ces codes & carnets.

    L'excel va "uniquement" servir à créer tous les codes et à pointer ceux qui sont utilisés de ceux qui ne le sont pas.

    Je vais donc créer les 50 carnets grâce à ton fichier avec au début un simple numéro en guise de nom de boutique, puis quand le carnet sera attribué à une boutique j'inscrirais le nom à la place du numéro.

    Au préalable j'aurais (par exemple pour le carnet 1) exporté les cases E5 à E14 dans un autre fichier excel, (peut-être par copier ou alors directement depuis cet excel mais je ne sais pas si je peux exporter que quelques cellule, je vais me renseigner) puis enregistrer le fichier en .txt sans tabulation.

    Je vais ensuite prendre la maquette du coupon de réduction que j'ai réalisé sur Indesign et faire une fusion de donnée pour incorporer les codes que je viens d'exporter au format .txt à mon design. Je vais donc pouvoir créer un fichier PDF de 10 pages avec mon design+ les codes promo.

    Je vais faire la même chose pour les codes -10% et -15% et je vais regrouper les trois fichiers PDF en un seul et le transmettre à l'imprimeur.

    Et là j'aurais 1 carnet de coupon prêt à être imprimé, il me reste plus qu'à le faire 49 fois pour commencer puis ensuite au compte goutte.


    Ensuite quand un coupon de réduc sera utilisé quelqu'un du staff va utiliser ton fichier pour pointer le code et voir combien de code sont utilisés par carnet.

    Mais du coup avec ce que je viens de te dire je ne vais pas trop utiliser l'onglet "Edition", je suis désolé si tu y a passé beaucoup de temps. Mais le reste du fichier me convient parfaitement ! Vraiment !

    Je vais juste devoir traduire tous les termes en espagnol, ça ne va pas poser de soucis ?

    _______________________________


    J'ai lu le VBA.... Et je n'ai pas compris grand chose Pour le GetNC() je ne sais pas trop parce que je comprend pas ce qu'est "m". Donc je dirais que si m est égal à 0 alors ça ne sélectionne pas de boutique ?

    _______________________________


    Merci encore d'avoir continué d'essayer ! Et désolé pour mon précédent message qui ne respirait pas la joie de vivre :/


    En tout cas MERCI !

    Quentin

    PS: Les raccourci ont fonctionner cette fois, pas besoin de m'acheter un Windaube :D 


    Posté le 3 août, 23:55
    0

    Bonjour Quentin,

    « Merci pour ce fichier il m'a l'air topissime ! »

    merci pour ton retour, j'suis ravi que cette version te plaise !  :)

    ----------------------------------------------------------------------------------------

    « Le coup du x + ctrl + entrée est magique ! »

    je précise que pour cette manip du Ctrl Entrée, je n'ai rien eu à programmer en VBA : c'est déjà de base dans Excel !

    ça n'est pas QUE pour "x" : la manip du Ctrl Entrée sert pour entrer n'importe quelle donnée dans une plage de plusieurs cellules contigües.

    ça sert même pour entrer n'importe quelle donnée dans plusieurs plages non contigües de plusieurs cellules contigües.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    rappel : après avoir sélectionné une 1ère plage, tu peux sélectionner une 2ème plage sans perdre la sélection de la 1ère plage si tu maintiens enfoncée la touche Ctrl lors de la sélection de la 2ème plage ; puis de la même façon, tu peux sélectionner une 3ème plage, puis une 4ème plage, etc...

    Ctrl clic sur une cellule sélectionne une seule cellule en plus de la sélection précédente.

    pour sélectionner en plus une plage de cellules : faire Ctrl clic sur la 1ère cellule de la plage et SANS relâcher le bouton de la souris NI la touche Ctrl, glisser vers le bas et / ou la droite.

    quand toutes les sélections sont faites : saisie d'une donnée puis Ctrl Entrée ➯ cette donnée est entrée dans toutes les cellules de chaque plage de cellules.

    ----------------------------------------------------------------------------------------

    « je vais sûrement changer le sens du nom de la date et de la boutique pour que ce soit plus lisible. »

    je n'ai pas bien compris ce que tu vas faire au juste ! pour l'instant, la date actuelle est la date de distribution du carnet ; tu voudrais mettre une autre date, mais laquelle ? peut-être la date d'édition du carnet ? ou autre chose ? même si c'est une autre date, ça ne changera rien aux formules ; idem si tu choisis un autre nom pour la boutique, même si ce nom sera juste "Boutique 001" ou "Boutique 1" ou "001" ou "1" ; par contre, pour ces 2 derniers cas, ça fera répétition avec le numéro du carnet ; mais y'aura pas d'autre inconvénient.

    ----------------------------------------------------------------------------------------

    « je ne vais pas trop utiliser l'onglet "Edition" »

    tant pis ; mais comme il est déjà fait, autant le laisser ; il est déjà présent aussi dans la prochaine version du fichier.

    ----------------------------------------------------------------------------------------

    « Je vais juste devoir traduire tous les termes en espagnol, ça ne va pas poser de soucis ? »

    non, ça ne posera pas de souci.  :)

    rhodo

    rhodo Posté le 4 août, 05:30
    par rhodo
    0

    pour la sub GetNC() :

    tu as écrit : « je comprend pas ce qu'est "m". »

    attention : ce m est très important ! voici l'explication :

    sur la feuille "Boutiques", il y a un tableau structuré dont le nom est "TBtq" ; j'ai choisi ce nom car T est l'initiale de Tableau et Btq est mon abréviation pour le mot "Boutiques" ; ça aide à se rappeler qu'il s'agit du Tableau des Boutiques.

    en VBA, le mot-clé pour "tableau structuré" est : ListObject ; donc la collection des tableaux structurés est ListObjects (avec un s final au bout) ; une feuille de calcul peut contenir plusieurs tableaux structurés ; et dans un code VBA, on doit obligatoirement préciser le nom de la feuille qui contient le tableau structuré auquel on veut accéder.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    With Worksheets("Boutiques").ListObjects("TBtq") .. End With : avec le tableau structuré "TBtq" de la feuille "Boutiques".

    If .DataBodyRange Is Nothing Then Exit Sub : si y'a aucune donnée dans ce tableau structuré, on quitte la sub et m vaut 0 ; sinon, si y'a au moins une ligne de données, on continue et on exécute la ligne suivante :

    m = .ListRows.Count : on met dans m le nombre de lignes du tableau TBtq ; comme y'a une ligne par boutique, m est donc le nombre de boutiques : 5 lignes ➯ 5 boutiques.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    voilà pourquoi, dans d'autres subs qui appellent GetNC(), y'a plusieurs fois des « If m = 0 Then Exit Sub » : on quitte la sub en question si y'a aucune ligne de données dans TBtq, donc si y'a aucune boutique ; et en effet, si y'a aucune boutique, y'a rien à faire.

    ---------------------------------------------------------------------------------------------------

    maintenant, pourquoi donc y a-t-il le paramètre d ? en effet, j'ai déclaré la sub ainsi : « Sub GetNC(d As Byte) » ; pourtant, d n'est pas utilisé dans la sub !

    en fait, la sub GetNC() a besoin d'aucun paramètre ! j'aurais pu la déclarer ainsi : « Sub GetNC() » avec rien du tout entre les deux parenthèses ; mais alors, cette sub apparaîtrait dans la liste des macros de la fenêtre "Macro" (via Alt F8) ; or cette sub doit être appelée uniquement par le code VBA, pas par l'utilisateur ! tu vas me dire :

    « bon, ben dans ce cas, y'a qu'à déclarer la sub privée avec le mot-clé Private. »

    oui, sauf que ça serait possible seulement si cette sub GetNC() était appelée uniquement à partir d'une sub située dans le module qui la contient, donc ici dans Module1 ; et c'est bien le cas pour la sub ClrCoches() de Module1 ; mais comme la sub GetNC() est appelée aussi depuis d'autres endroits que Module1, ce n'est plus possible de la déclarer privée !

    la sub GetNC() doit obligatoirement rester une sub publique ! l'astuce pour éviter que GetNC soit dans la liste des macros consiste donc à ajouter un paramètre bidon, dans le sens où ce paramètre est un faux paramètre puisqu'il n'est pas utilisé dans la sub ; en anglais : dummy = idiot = bidon ; c'est pourquoi j'ai appelé d mon faux paramètre ; mais j'aurais pu mettre n'importe quel autre nom, par exemple trucmuche !  :P

    pour le type de ce faux paramètre, j'ai choisi Byte car c'est le type le plus court : 1 seul octet.

    rhodo

    rhodo Posté le 4 août, 06:36
    par rhodo
    0

    pour toute la partie que tu as décrite sur l'utilisation que tu allais faire de tous ces codes & carnets : merci pour toutes ces infos ; là, je te fais confiance : je suis sûr que tu arriveras à te débrouiller au mieux ! le post suivant est pour la nouvelle version du fichier.

    rhodo Posté le 4 août, 06:54
    par rhodo
    0

    À Quentin.

    voici le nouveau fichier : https://www.cjoint.com/c/LHekvaiiHz0

    à part la 1ère feuille, les 3 autres feuilles sont protégées ; mais c'est une protection simple, sans mot de passe ; tu pourras très facilement ôter la protection pour voir les formules ou pour d'autres choses, mais après, quand tu auras tout vu, n'oublie pas de remettre une protection simple sans mot de passe pour les 3 dernières feuilles.

    attention : a) ne met pas de mot de passe pour la protection, sinon il faudra modifier le code VBA ; b) ne protège pas la 1ère feuille car elle contient un tableau structuré ➯ il faut pouvoir y ajouter des lignes, et les formules doivent pouvoir s'étendre automatiquement.

    j'ai dû faire plusieurs modifs du code VBA, par rapport aux 3 feuilles protégées et aussi pour la grosse nouveauté qu'on va voir dans ce post.

    --------------------------------------------------------------------------------------------------------------------

    * au début, tu es sur la 3ème feuille "Récap" ; note bien qu'il y a 5 carnets, et que la 5ème boutique est "Le grizzly rouge".

    * ne change rien, et va sur la 2ème feuille "Carnets" ; tu vois le 5ème carnet ; fais Ctrl F2 ➯ aperçu avant impression ; tu vois qu'il y a déjà des codes pour tous les carnets ; appuie sur la touche Echap pour quitter l'aperçu ➯ tu es de retour sur la feuille de calcul.

    * ne change rien, et va sur la 1ère feuille "Boutiques" ; tu vois que j'ai déjà ajouté une 6ème boutique "La licorne" ; N : 006 ; Date carnet : 04/08/2022.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    * ne change rien, et retourne sur la 2ème feuille "Carnets" ; tu as bien aimé l'organisation d'un carnet sur 10 lignes et 3 colonnes, car ça a permis de réduire du tiers le nombre de lignes du fichier "Magicien-v5.xlsm" ; de plus, les fusions de cellules des colonnes B C D ont permis d'éviter de très nombreuses répétitions : en effet, ça n'est plus la peine de répéter inutilement l'information sur 10 lignes ! ni pour le du carnet ; ni pour la date ; ni pour le nom de la boutique : gain d'espace en mémoire RAM et pour le fichier sur disque dur.

    * les fusions de cellules sont donc ici un gros avantage pour tout ce que je viens de décrire, mais en même temps, ça complique la tâche pour l'ajout d'un nouveau carnet ! imagine tout ce que tu devrais faire manuellement pour ça ! ça prendrait déjà pas mal de temps pour un seul carnet, alors imagine pour 10 carnets, 20 carnets, 40 carnets, ou plus encore ! tu en aurais vite assez, et j'le comprendrais tout à fait !  :)

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    * maintenant, fais Ctrl n ; ça a fait automatiquement tout ce qu'il faut, en mettant en plus des codes aléatoires sans même que tu aies eu besoin de mettre 6 en B2 puis de faire Ctrl t ! c'est pas mal, hein ? bien sûr, y'a maint'nant aucune coche (ce sera à toi d'en mettre manuellement plus tard) ; pour ne pas fausser la démo, ne le fais pas maintenant, mais c'est juste pour info : si tu refaisais Ctrl n maintenant, ça ne ferait rien du tout !  ;)

    * sans avoir refait Ctrl n, va sur la 3ème feuille "Récap" ; ça a automatiquement ajouté un 6ème carnet, sans même que tu aies eu besoin d'étirer les formules !

    alors, qu'en dis-tu ? ça te va ? ... mais attends, ce n'est pas fini !  :D

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    * retourne sur la 2ème feuille "Carnets" ; elle est inchangée ; comme la cellule active est toujours B2, saisis 6 et appuie sur Entrée ; ça tu connais déjà : c'est juste pour que le 6ème carnet "La licorne" soit en haut : ça fait plus de place en dessous ; va maint'nant sur la 1ère feuille "Boutiques".

    sélectionne la dernière cellule du tableau qui contient "04/08/2022", puis appuie sur la touche Tab (Tabulation) ➯ ça a ajouté une ligne au tableau ; en plus, il y a déjà le numéro suivant : 007 ; appuie sur Tab pour aller sur la cellule à droite ; saisis : "Le loup garou" et juste après, au lieu d'appuyer sur Entrée appuie sur Tab ➯ là aussi, ça va sur la cellule à droite ; saisis 5/8 et appuie sur Tab ; note que ça a mis 05/08/2022 et 008 ; appuie sur Tab ; saisis "Chez Pégase" et appuie sur Tab ; saisis 6/8 et appuie sur Tab ; note que ça a mis 06/08/2022 et 009 ; appuie sur Tab ; saisis "Le yéti" et appuie sur Tab ; saisis 7/8 et appuie sur Entrée07/08/2022 ; fin de la saisie.

    * va sur la 2ème feuille "Carnets" ; elle est inchangée ; fais Ctrl n ; ça a ajouté 3 carnets d'un seul coup ! y'a les carnets 007, 008, et 009 pour "Le loup garou", "Chez Pégase", et "Le yéti", avec des codes aléatoires associés ; va en 3ème feuille "Récap" : aussi, ça a ajouté 3 carnets !  :)

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    * juste pour info : encore, si tu retournes sur la 2ème feuille "Carnets" et que tu refais Ctrl n, ça ne fera rien du tout ! en effet, ça devine tout seul si y'a des carnets à ajouter ou non !  :)

    * si tu avais ajouté 30 boutiques dans le tableau de la 1ère feuille "Boutiques", alors en 2ème feuille "Carnets", Ctrl n aurait ajouté d'un seul coup 30 carnets sur cette 2ème feuille, et sur la 3ème feuille "Récap", ça aurait aussi ajouté d'un seul coup 30 carnets !  :)

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    pour faire l'ajout de carnets, y'a un module VBA de plus.

    à te lire pour avoir ton avis.

    rhodo

    rhodo Posté le 4 août, 14:10
    par rhodo
    0

    Bonjour rhodo,


    JE SUIS CHOQUE !!!!

    Il n'y a pas d'emoji sur ce forum mais waouh.

    Le tout est super bien expliqué, vraiment c'est top !

    J'avais compris pour l'ajout de plage à la sélection dans tes précédents messages, c'est pour ça que je trouve que c'est vraiment fou !

    Pour le changement de sens je me suis mal exprimé je pense, je voulais littéralement dire que je voulais le changer de sens. Donc passer le texte à l'horizontale pour que ce soit un peu plus lisible. Mais en tout cas une date convient très bien ! 

    Au début de ta présentation j'étais inquiet, je me demandais comment j'allais pouvoir créer de nouveau carnet dans l'onglet carnet mais tu as pensé à tout haha

    Pour l'exportation de tous ces codes j'ai effectivement trouvé une solution, celle que je t'ai expliqué. C'est surement pas la meilleur mais c'est la seule que j'ai en stock alors pour l'instant je vais m'en contenter et je pense commencer à faire mes coupons d'ici demain.


    J'aurais juste deux dernières questions histoire d'être sur d'avoir tout bien compris.

    Avec ton fichier le nombre maximum de carnet est de combien ?

    Et dernière question, est-ce qu'il y a un endroit dans excel ou je peux taper mon code et que ça me le retrouve ? Un peu à la manière d'un Ctrl + F sur un navigateur ou un PDF quand on cherche une information ?

    Ça simplifierais le pointage des codes. Sinon je pense qu'il faudrait exporter le fichier en PDF puis faire un Ctrl + F sur le PDF pour au moins voir à quel carnet appartient le code.


    Merci beaucoup pour ce que tu as fais. En lisant tes messages j'avais l'impression d'être un gamin à qui on raconte une histoire pleine de rebondissement mais qui termine bien, super bien même ! (J'ai pas pu m'empêché de resté bouche bée quand j'ai vu l'ajout des carnets mais chuuut)

    Ah et aussi merci pour l'explication du code VAB, j'aurais pas la prétention de dire que j'ai compris à 100% tout ce que tu as dis et que je pourrais faire le même fichier que toi demain mais ça m'a dégrossi le truc et j'y vois plus clair.

    Posté le 6 août, 13:09
    0

    Bonjour Quentin,

    je n'étais pas disponible hier, d'où le retard de ma réponse.

    tu as écrit :
    «
    JE SUIS CHOQUE !!!!

    Il n'y a pas d'emoji sur ce forum mais waouh.

    Le tout est super bien expliqué, vraiment c'est top !
    »

    je suis positivement ravi que la nouvelle version de mon fichier te plaise autant, ainsi que toutes mes explications !  :)

    --------------------------------------------------------------------------------------------------------------------

    tu as écrit :

    « J'avais compris pour l'ajout de plage à la sélection dans tes précédents messages, c'est pour ça que je trouve que c'est vraiment fou ! »

    de quelle sélection parles-tu ? il n'y a pas de sélection de plage de cellules ; peut-être as-tu voulu dire : « ajout de plage(s) aux carnets déjà présents sur la feuille "Carnets" » ? (sans que les carnets déjà présents sur la feuille "Carnets" soient sélectionnés)

    ou peut-être que tu veux plutôt parler de la cellule B2 ? si c'est le cas : la cellule B2 est bien utilisée pour les 3 utilités différentes "aller à" ; Ctrl t (tirage des codes aléatoires) ; Ctrl e (effacement des coches) ; mais attention : la cellule B2 n'est pas utilisée pour Ctrl n (ajout de nouveau(x) carnet(s)) ! Ctrl n est totalement indépendant de B2 ! tu peux très facilement le vérifier ainsi (en même temps, je vais en profiter pour expliquer en détail quel est le mécanisme utilisé) :

    * ouvre le fichier v4 tel que tu l'avais téléchargé ➯ c'est sur la feuille "Récap" ; il y a 5 carnets, et juste pour info, note que la dernière boutique est : "Le grizzly rouge".

    * va sur la feuille "Boutiques" ; c'est comme tu l'avais vu avant : j'avais déjà ajouté une 6ème boutique "La licorne" ➯ le tableau structuré TBtq contient 6 lignes ; et comme il y a une ligne par boutique, ça fait bien 6 boutiques ; tu te rappelles de la variable m, n'est-ce pas ? je t'avais précisé que cette variable m est très importante ! quand y'aura un appel à la sub GetNC(), m va contenir le nombre de lignes de TBtq (c'est le .ListRows.Count), donc 6 lignes ➯ 6 boutiques ; j'ai choisi le nom GetNC car c'est : obtenir (= get) le Nombre de Carnets ; comme il y a un seul carnet par boutique, ça fait que 6 boutiques ➯ 6 carnets ; pour l'instant, rappelle-toi seulement que m = 6 (c'est pour : 6 carnets).

    * va sur la feuille "Carnets" ; c'est comme tu l'avais vu avant : B2 contient 5 et le carnet qu'on voit en haut (sous les 4 premières lignes) est le 5ème carnet, car j'avais utilisé l'utilité « aller à » ; tu peux faire Ctrl F2, puis Echap pour vérifier en aperçu avant impression que les 5 carnets sont bien là, et pas seulement le 5ème.

    * l'étape de ce paragraphe est seulement par rapport à l'explication du mécanisme utilisé ; ça ne fait pas partie des manips habituelles à effectuer ; sélectionne une cellule de la colonne B située sous le tableau, par exemple B68 ; appuie sur Ctrl ↑ (flèche haut) ➯ la cellule active est maintenant B45 ; en fait, c'est plus exactement la fusion de cellules B45:B54 dont la 1ère cellule B45 contient 005 ; c'est grâce à cette méthode (utilisée par la macro NewBtq) qu'on peut connaître d : le numéro du dernier carnet de la feuille "Carnets" : c'est donc 5 ; même s'il est affiché 005 ; et selon la feuille "Boutiques" : m = 6 ; si m <= d, on quitte la sub NewBtq sans rien faire : il n'y a pas d'ajout de carnet ; note que m pourrait être inférieur à d seulement si en feuille "Boutiques", tu supprimes quelques dernières lignes : il y aurait alors moins de boutiques que de carnets déjà présents en feuille "Carnets", mais normalement, tu ne dois pas faire cette manip, à moins de supprimer aussi en feuille "Carnets" les carnets qui sont devenus en trop ! donc normalement, m est supérieur ou égal à d ; si m = d, on ne fait rien : pas d'ajout de carnet (c'est un des 2 cas du précédent <=) ; il y aura ajout de carnet(s) uniquement si m > d, pour ce nombre de carnet : m - d ; et en pratique, ça sera pour : k à m, la variable k étant égale à d + 1 ; et tu vois bien que tout ça est indépendant de B2 ! comme la cellule active est maintenant B45, sélectionne B2.

    * note bien que le dernier carnet est toujours le carnet 005 pour la boutique "Le grizzly rouge" : ça n'a pas changé ; mets 1 en B2 puis Entrée ➯ ça va sur le 1er carnet ; fais Ctrl n ➯ même si tu ne le vois pas de suite, ça a quand même ajouté 1 carnet, puisque m - d = 6 - 5 = 1 ; mets 5 en B2 puis Entrée ➯ ça va sur le 5ème carnet ; juste sous le 5ème carnet, tu peux voir que le 6ème carnet "La licorne" a bien été ajouté ; et tu avais fait Ctrl n alors que B2 = 1 et que tu étais sur le 1er carnet : la preuve est donc faite que c'est bien indépendant de B2 !

    * ça serait idem pour la suite de la démo de mon post précédent du 4 août à 14:10 : en feuille "Boutiques", tu avais ajouté 3 lignes pour 007 "Le loup garou" ; 008 "Chez Pégase" ; 009 "Le yéti" ➯ m = 9 ; en feuille "Carnets" : d = 6 car le dernier carnet est 006 pour "La licorne" ; m - d = 9 - 6 = 3  ça ajoute 3 carnets ; en pratique : k = d + 1 = 6 + 1 = 7 ➯ la boucle i de k à m ajoute 3 carnets, de 7 à 9, d'où ces nouveaux carnets ajoutés : 007 ; 008 ; 009 ; pour "Le loup garou" ; "Chez Pégase" ; "Le yéti" ; juste après l'ajout des 3 carnets : m = 9 et d = 9m n'est pas supérieur à d ➯ voilà pourquoi Ctrl n ne fait plus rien : il n'y a plus besoin d'ajouter de carnets, et surtout, ça a permis d'éviter que Ctrl n ajoute une nouvelle fois 3 carnets alors que ce travail a déjà été fait !  :)

    --------------------------------------------------------------------------------------------------------------------

    c'est tout pour l'ajout de carnets : normalement, je n'aurai pas besoin d'y revenir ; la suite dans un prochain post, mais pour cela, il faut absolument que tu répondes à cette question : est-ce qu'il pourra y avoir plus d'un carnet par boutique ou non ? je t'avais déjà posé cette question précédemment, et tu n'y as pas répondu !

    or cette info est capitale pour la suite à donner : les autres explications ET la façon dont est conçu tout le système !

    * si tu me dis qu'il y aura toujours un seul carnet par boutique, on pourra laisser comme c'est.

    * mais si tu me dis qu'il pourra y avoir plus d'un carnet par boutique, alors il faudra tout remanier ! je t'expliquerai pourquoi, mais seulement si ce 2ème cas se présente : c'est inutile que je te donnes des explications (qui seront très longues) si ce 2ème cas ne se présentera jamais !

    à te lire pour la suite ; mais ne demande rien d'autre en plus de ce que tu avais déjà demandé, car y'a déjà encore plein de choses à voir ! ça me ferait trop d'un coup !

    --------------------------------------------------------------------------------------------------------------------

    autre question importante, à laquelle tu dois aussi répondre : combien y aura-t-il de carnets au maximum ?

    tu as écrit : « Avec ton fichier le nombre maximum de carnet est de combien ? »

    un numéro de carnet est sur 3 chiffres ; donc en principe, comme il n'y a pas de carnet 000 : ça fait qu'il peut y avoir 999 carnets au maximum, du carnet 001 au carnet 999 ; si ça te convient bien comme ça, pour maintenant et aussi pour bien plus tard, à très longue échéance, alors c'est ok : y'a rien à changer pour ça dans le fichier ; par contre, si tu voudras plus que 999 carnets, alors c'est dès maintenant qu'il faut utiliser 4 chiffres pour le numéro de carnet : sauf le 0000, ça fera 9999 carnets au maximum, du carnet 0001 au carnet 9999 ; tu vois qu'en fin de compte, c'est à toi de décider, en tant qu'utilisateur final du fichier ; ce n'est pas à moi de choisir cette caractéristique !  ;)

    --------------------------------------------------------------------------------------------------------------------

    tu as indiqué qu'en feuille "Carnets", la Date (de distribution du carnet) devra être (littéralement) dans le sens horizontal ; ça, ce sera très simple à faire ; simplement, ça prendra un peu plus de place en largeur ; et c'est seulement la présentation qui sera modifiée ; ça n'a aucune autre conséquence, et je le ferai moi-même dans une prochaine version ➯ ne t'en occupe pas.  :)

    --------------------------------------------------------------------------------------------------------------------

    par rapport à l'exportation, quelles sont les données que tu veux dans le fichier texte .txt ?

    normalement, ça doit être :

    * le numéro du carnet ; par exemple : 006
    * la Date (de distribution du carnet) ; par exemple : 04/08/2022
    * le nom de la boutique ; par exemple : La licorne
    * les 30 codes aléatoires ; par exemple ceux de E55:E64 ; G55:G64i55:i64 ; donc : 0064540 à 0067318
    * les 30 coches (que tu auras saisies plus tard) ; celles de F55:F64 ; H55:H64 ; J55:J64

    toutes ces données (pour un seul carnet) seront écrites dans le fichier .txt sur une seule ligne, sans tabulation.

    il y aura la même chose pour n carnets ; donc n lignes différentes, pour n carnets.

    ces n carnets seront-ils toujours des carnets contigus, par exemple les 4 carnets 005 à 008 ?
    ou ça pourrait être des carnets non contigus ? par exemple les 4 carnets 002 ; 005 ; 007 ; 025 ?
    bien sûr, ça sera bien plus simple si toujours1 fichier texte .txt = 1 seul carnet !  ;)

    --------------------------------------------------------------------------------------------------------------------

    tu as écrit : « est-ce qu'il y a un endroit dans excel ou je peux taper mon code et que ça me le retrouve ? Un peu à la manière d'un Ctrl + F sur un navigateur ou un PDF quand on cherche une information ? »

    je n'ai pas compris pourquoi tu demandes ça, puisqu'il y a déjà l'utilité « aller à » qui va sur le carnet dont le numéro est en B2 ; tu peux ainsi aller très facilement sur le carnet que tu veux : c'est le « aller à » qui te retrouve le carnet !  :)  mais j'ai peut-être mal compris ta question ?

    --------------------------------------------------------------------------------------------------------------------

    tu as écrit : « Au début de ta présentation j'étais inquiet, je me demandais comment j'allais pouvoir créer de nouveau carnet dans l'onglet carnet mais tu as pensé à tout haha »

    eh oui, hein ?  ;)  comme quoi c'est super pratique, le VBA !  :)

    rhodo

    rhodo Posté le 7 août, 13:04
    par rhodo
    0

    Bonjour rhodo,


    Merci pour ces compléments d'informations sur la réalisation du fichier, j'y vois encore un peu plus clair.

    Tu as dis : "de quelle sélection parles-tu ?"

    Je parlais de la possibilité de sélectionner 10 cellules et de taper x + entrée. J'avais compris qu'après avoir sélectionné 10 cellules je pouvais ajouter d'autre cellule à ma sélection pour toutes les remplir d'un coup !

    Tu as dis : "de quelle sélection parles-tu ?"

    Oups, j'ai du squeezé la question désolé. Oui il pourra y en avoir plusieurs mais je ne sais pas dans quelle mesure. Et si le nom de la boutique n'est pas exactement identique" (pour ne pas créer de bug dans les appellations et t'obliger à tout remanier), ça ne posera pas de soucis. Type : Le grizzly rouge / Le grizzly rouge 2 etc... 


    Je t'ai parlé de la fonction recherche plutôt pour savoir si c'était possible, et si oui te prévenir assez "tôt" pour que tu n'ai pas tous le fichier à remanier. Je voulais t'éviter des heures de souffrances.


    Je crois qu'une fois que tu auras fini le fichier et toutes tes explications je vais me faire une petite bible qui regroupera toutes tes explications pour que je puisse y revenir dès que j'en ressentirait le besoin.


    Merci encore à toi et à tantôt !


    Quentin





    Posté le 7 août, 13:40
    0

    à Quentin.

    oups ! pour mon post précédent, on s'est croisés ! donc relis-le car je l'ai complété au fur et à mesure ; en effet, sur ce présent site, il n'y a pas moyen d'enregistrer un brouillon du post en cours d'édition (sans valider le post en cliquant sur le bouton "Répondre") ; donc pour un post un peu long (ou même très long), j'ai toujours peur qu'une panne d'électricité me fasse tout perdre ! et franchement, j'aurais pas eu le courage de devoir tout réécrire car ça aurait été vraiment trop démoralisant et fastidieux !

    --------------------------------------------------------------------------------------------------------------------

    la sélection dont tu parles, pour les "x" : c'est seulement une méthode de saisie pour saisir des "x" dans plusieurs cellules contigües, et rien d'autre ! donc ça n'a aucune incidence sur le reste ! ni pour l'ajout de carnet(s) ; ni pour le nombre de carnets maximum ; ni pour le nombre de carnets par boutique maximum.

    --------------------------------------------------------------------------------------------------------------------

    pour la fonction recherche via Ctrl + F dont tu avais parlé, j'ai déjà répondu : ça devient inutile vu qu'il y a déjà l'utilité "aller à" de la cellule B2.  :)  merci quand même à toi d'avoir cherché à « m'éviter des heures de souffrances » !  :D  ce qui va suivre plus loin est malheureusement bien plus sérieux que ça !  ^^

    --------------------------------------------------------------------------------------------------------------------

    tu as écrit : « Oups, j'ai dû squeezer la question désolé. Oui il pourra y en avoir plusieurs mais je ne sais pas dans quelle mesure. »

    tu as fait un copier / coller de ta 1ère citation, qui est : « Tu as dis : "de quelle sélection parles-tu ?" » ; puis tu as oublié de modifier ce texte ! alors je ne sais pas bien à quoi tu réponds ! ou plutôt : je suppose que ton « Oui il pourra y en avoir plusieurs » est :

    « Oui il pourra y avoir plusieurs carnets PAR BOUTIQUE ».

    et ton « mais je ne sais pas dans quelle mesure » signifie alors que tu ne peux pas savoir d'avance COMBIEN y'aura de carnets par boutique : ça peut très bien être un seul carnet pour une boutique donnée, par exemple un seul carnet pour la boutique "Chez Ginette" ; ou plus : par exemple 3 carnets pour la boutique "Chez Gégé" ; et 5 carnets pour la boutique "La licorne".

    c'est bien exact ?

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    si oui, alors je suis désolé : j'ai une très mauvaise nouvelle ! l'organisation actuelle qui est pour un seul carnet par boutique ne convient vraiment plus du tout ! ça sera obligatoirement à modifier, et tu aurais donner cette indication qu'il peut y avoir plusieurs carnets par boutique dès le départ ! c'est-à-dire dès l'énoncé de ton exo sur le 1er site initial où on s'était rencontrés ! idem pour le nombre de boutiques maximum !

    --------------------------------------------------------------------------------------------------------------------

    * actuellement, le numéro d'une BOUTIQUE est sur 3 chiffres ➯ ça ferait alors 999 boutiques au maximum, de la boutique 001 à la boutique 999.

    * si plus tard il pourrait y avoir plus de boutiques, c'est maintenant qu'il faut le dire ! donc on mettrait le numéro de boutique sur 4 chiffres ➯ ça ferait alors un maximum de 9 999 boutiques, de la boutique 0001 à la boutique 9999.

    attention : tu dois absolument me dire combien de chiffres tu veux pour un numéro de boutique ; si y'a pas cette info dans ton prochain post, je ne répondrai pas ! alors c'est 3 chiffres ou c'est 4 chiffres ?

    surtout, ne te trompe pas en écrivant ta réponse, car je ferai la suite à partir de cette réponse ;
    et je ne reviendrai pas en arrière pour corriger ça !

    --------------------------------------------------------------------------------------------------------------------

    * à supposer qu'il pourrait y avoir jusqu'à 9 999 boutiques maximum : ça ferait donc 9 999 boutiques (sur 4 chiffres), de la boutique 0001 à la boutique 9999.

    ENSUITE, supposons par exemple, qu'il peut y avoir 5 carnets maximum pour chaque boutique ; dans ce cas : 9 999 boutiques × 5 carnets par boutique = 49 995 carnets !

    * c'est pas du tout la même chose que 300 boutiques maximum avec un seul carnet par boutique ! entre 300 carnets maximum et 49 995 carnets maximum, tu te rends bien compte que la différence est énorme !

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    * car en plus n'oublie pas cette évidence : pour un seul carnet, il faut :

    a) la place pour les 30 codes : (10 lignes × 3 colonnes) de codes aléatoires.

    b) la place pour les 30 coches associées : (10 lignes × 3 colonnes) de coches.

    c) la place pour ces 3 infos :

    - le numéro de carnet

    - la Date (de distribution du carnet)

    - le nom de la boutique

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    vu qu'il y aura très probablement plusieurs carnets par boutique, il faudra en fait, en plus de a) et b) qui sont déjà indiqués ci-dessus, ces 4 infos pour c)et à la place du c) ci-dessus (pas en complément) :

    - le numéro de la boutique ; par exemple 028 pour la 28ème boutique

    - le numéro de carnet pour cette boutique ; par exemple 005 pour le 5ème carnet attribué à la boutique 028 ; il faudra très probablement élaborer un système de mappage pour les différents carnets d'une boutique ; et ça à condition que ça ne s'avère pas IMPOSSIBLE de faire des tirages aléatoires sans remise ! s'il s'agissait de tirages aléatoires avec remise, ça poserait bien moins de problèmes ! (je donnerai l'explication dans un prochain post, après ta confirmation)

    - la Date (de distribution du carnet) ; comme y'aura une date pour chaque carnet, ça fera 5 dates maximum, dans l'optique indiquée plus haut de 5 carnets maximum pour chaque boutique ; ça ferait partie du système de mappage mentionné ci-dessus ; en clair : pour une boutique donnée, y'a jusqu'à 5 carnets et 5 dates au maximum.

    - le nom de la boutique

    --------------------------------------------------------------------------------------------------------------------

    pour une seule boutique, avec un maximum de 5 carnets par boutique, note bien que pour tous les codes et pour toutes les coches, il faudrait la place de 5 carnets × 30 codes = 150 codes ET 5 carnets × 30 coches = 150 coches !

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    répète TOUTE cette place pour un maximum de 9 999 boutiques ! ça va faire un fichier Excel d'une taille énorme ! 9 999 boutiques × 150 codes par boutique = 1 499 850 codes ! et autant pour les coches : 9 999 boutiques × 150 coches par boutique = 1 499 850 coches ! plus la place pour les couples boutique / n° carnet : 9 999 × 5 = 49 995 couples du style boutique n / carnet n ; plus la place pour les couples n° carnet / date (de distribution de ce carnet) : 9 999 × 5 = 49 995 couples du style carnet n / date D ; du type JJ/MM/AAAA (en sens horizontal) ; plus la place pour les 9 999 noms de boutique.

    --------------------------------------------------------------------------------------------------------------------

    bien sûr, ce qui précède est une prévision pour le pire des cas : quand TOUT est PLEIN ; et c'est effectivement ce pire des cas qu'il faut envisager pour déterminer l'emplacement et la taille de TOUTES LES DONNÉES ; même si en pratique, et en principe, y'aura JAMAIS 5 carnets pour chaque boutique ! sur les 9 999 boutiques possibles, y'aura une majorité avec un seul carnet, et par exemple : 500 boutiques avec 2 carnets ; 40 boutiques avec 3 carnets10 boutiques avec 5 carnets ; attention, je dis bien : c'est juste un exemple ! mais encore une fois : faut quand même faire comme si TOUT allait être PLEIN ! car on sait jamais : ça pourrait quand même arriver ! ... des fois que ton jeu du tirage au sort des codes de réduction a bien plus de succès que ce que tu avais imaginé !!!  :D  surtout avec l'inflation galopante actuelle ! vu la crise de l'énergie, du gaz, du conflit entre la Russie et l'Ukraine !

    au fait : et moi, j'ai droit à quelle réduction ? -100% ? ah, ben merci ! si TOUT est GRATUIT, j'vais en profiter ! surtout si j'ai un seul carnet, mais qu'il est illimité dans le temps !  :D

    --------------------------------------------------------------------------------------------------------------------

    t'es bien sûr de vouloir gérer autant de boutiques, autant de carnets, autant de codes, et autant de coches ? j'dis pas ça pour te décourager, hein ?  :D  c'est juste pour que tu sois bien conscient de ce dans quoi t'es en train de t'engager !  :D

    après tout, peut-être qu'il aurait mieux valu faire tout le "job" non pas avec Excel mais plutôt avec un logiciel de base de données relationnelle (comme par exemple Microsoft ACCESS) ? y'a des tables, requêtes, formulaires, états, qui sont faits tout exprès pour gérer de très grosses quantités de données ; avec en plus un système de liens relationnels.

    la suite du texte de ce post est de nouveau pour EXCEL, pas pour ACCESS.  ;)

    --------------------------------------------------------------------------------------------------------------------

    * par rapport au nombre maximum de boutiques, au nombre maximum de carnets par boutique, à l'emplacement et la taille de TOUTES LES DONNÉES : c'est DÈS LE DÉPART qu'il faut penser à TOUT ÇA ! et PAS APRÈS-COUP !

    * et ça d'autant plus que ça va avoir une ÉNORME CONSÉQUENCE sur la FAÇON de FAIRE les TIRAGES aléatoires SANS remise ! en plus, ça va risquer d'être IMPOSSIBLE de faire ces types de tirages ! (je t'expliquerai plus tard pour quelle raison)

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    toi qui t'es déjà lancé dans l'EXPORTATION, j'ai bien peur que ça ne serve strictement À RIEN
    si À LA BASE, la structure qui a été choisie au départ n'est PAS adéquate !

    --------------------------------------------------------------------------------------------------------------------

    comme indiqué plus haut, il faut modifier la structure (= l'organisation) ; ça va représenter un très gros boulot, et je ne suis même pas encore sûr dans quelle mesure ça sera possible ou non ! alors avant quoi que ce soit, j'attends une confirmation de ta part avant de chercher une éventuelle solution pour ça ; alors pour ta prochaine confirmation, évite un copier / coller malencontreux dont tu auras oublié de modifier le texte après-coup ; et évite aussi de mettre « Oui il pourra y en avoir plusieurs » sans préciser quoi ! à la place, dis explicitement : « Oui il pourra y avoir plusieurs carnets par boutique ».

    je n'ai vraiment aucune envie de me lancer dans un boulot énorme de révision de conception structurelle si c'est en partant sur une fausse idée car tu n'as pas su indiquer explicitement ce qu'il aurait réellement fallu !

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    je te rappelle que je ne suis même pas sûr que je vais pouvoir trouver une solution adéquate ! alors si tu confirmes qu'il y aura parfois plusieurs carnets pour une boutique, ne t'étonnes pas si mon post qui suivra sera très long à venir ! c'est car je chercherai une solution adéquate à mettre en œuvre, et ça sera ni facile, ni évident !

    si vraiment je ne trouverai aucune solution, je posterai un message pour te l'indiquer ➯ pas de post = je cherche quelque chose ; ou un post avec « j'ai trouvé aucune solution valable » = c'est fini, je ne peux rien faire de plus pour t'aider !

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    mais d'abord, sitôt que tu auras confirmé qu'il peut y avoir plusieurs carnets par boutique, et combien au maximum, j'écrirai un post pour t'indiquer les problèmes posés par un tirage aléatoire sans remise ; ça sera un post vraiment très long ! y'aura pas moyen de faire autrement !

    --------------------------------------------------------------------------------------------------------------------

    n'oublie pas non plus de m'indiquer combien de chiffres tu veux pour le numéro d'une boutique :

    * si c'est 3 chiffres, il pourra y avoir au maximum 999 boutiques, de 001 à 999.

    * si c'est 4 chiffres, il pourra y avoir au maximum 9 999 boutiques, de 0001 à 9999.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    comme sur la feuille "Carnets" il y aura (encore) une place pour un seul carnet
    de 10 lignes (mais avec mappage), ça fera respectivement :

    * pour 3 chiffres : jusqu'à 999 boutiques ➯ jusqu'à 9 990 lignes.

    * pour 4 chiffres : jusqu'à 9 999 boutiques ➯ jusqu'à 99 990 lignes.

    comme le nombre de lignes maximum d'une feuille de calcul est 1 048 576 :
    pour 99 990 lignes : en hauteur, ça tient encore largement !

    --------------------------------------------------------------------------------------------------------------------

    c'est le système du « aller à » selon la cellule B2 qui te permettra d'aller d'une BOUTIQUE à une autre (au lieu d'un CARNET à un autre) ; puis pour une BOUTIQUE sur laquelle tu seras allé (selon B2) : tu verras un seul CARNET à la fois ; et c'est un autre système (lié au système de mappage) qui te permettra de voir le carnet voulu parmi TOUS les carnets de la boutique choisie.  :)

    --------------------------------------------------------------------------------------------------------------------

    je sais bien que ce post est super long, et que ça va être TRÈS difficile pour toi de TOUT lire ! MAIS :

    a) ça aurait été moins long si tu avais répondu clairement aux questions posées.

    b) ce n'est pas ma faute si du fait qu'il y aura très probablement plusieurs carnets par boutique (ce que tu aurais indiquer dès le départ) : il faudra très probablement un système de mappage (qui est, par nature, PLUS COMPLIQUÉ à expliquer et à mettre en œuvre) : c'est assurément moins simple que l'organisation actuelle (qui n'est valable que pour un seul carnet par boutique) !

    --------------------------------------------------------------------------------------------------------------------

    à bientôt peut-être, si tu n'es pas ennuyé par toutes ces longues explications, et si tu veux bien qu'on continue ; pour l'instant, c'est à toi de choisir.  ;)  mais de très longues explications, il y en aura encore, ne serait-ce que pour expliquer le système de tirage aléatoire sans remise ou le détail du système de mappage ; dans les deux cas : ce sera un peu fastidieux (pour moi à expliquer et à écrire ; pour toi à lire et à comprendre), mais ce sera absolument indispensable et nécessaire : impossible d'y échapper, car seule une bonne compréhension de ta part des deux systèmes nous permettra d'avancer correctement dans la bonne voie ! il y aura aussi, très probablement, un 3ème système de chaînage, mais chaque chose en son temps, n'est-ce pas ?  ;)

    c'est seulement quand on aura vu TOUT ÇA qu'on pourra en venir à ton EXPORTATION de données, mais PAS AVANT ! car ça serait comme « mettre la charrue AVANT les bœufs » ! ça ne se fait PAS, même pour un illusionniste !  :D

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    si tu préfères arrêter, c'est ton choix, et merci de l'indiquer ; mais sans réponse de ta part au bout d'un assez long moment, je considèrerai aussi que ça ne t'intéresse plus de continuer ; moi, de mon côté, je choisirai d'arrêter s'il manque les infos que j'ai demandées, et dont j'ai besoin pour faire la suite de ton projet (je ne peux tout simplement pas continuer d'avancer tout en étant encore « dans le flou ») ; si au contraire tu indiques ces infos nécessaires, alors ce sera ok : je pourrai donc continuer.  :)

    rhodo

    rhodo Posté le 7 août, 17:13
    par rhodo
    0

    Bonjour rhodo,

    Tout d'abord merci de ta patience. Lire tout ça a été compliqué je l'avoue, j'ai pris des petites notes tout le long de ma lecture pour ne rien oublier cette fois-ci parce que j'ai bien compris les conséquences et je m'en excuse.

    Je vais faire attention aux termes que j’emplois et vais essayer d’être le plus précis possible au risque de me répéter. J’ai souvent l’impression quand j’explique quelque chose d’être très clair. Je me doutais que parfois c’était un peu abstrait pour les autres, maintenant je sais. Haha

    Désolé pour ça, d’ordinaire je brasse des cartes, tire des lapins de mes chapeaux ou joue avec des foulards. Je ne suis pas habitué à manier les mots.

    ________________________________

    OUI il y aura plusieurs carnets par boutique. Mais toujours dans le but de t’éviter des heures de souffrance et en imaginant que ça ne va pas arriver tous les deux matins. Je pense qu’ajouter un chiffre après le nom de la boutique peut être suffisant pour différencier les carnets pour une même boutique (par exemple « Le grizly », « Le grizly 2 », « Le grizly 3 »). Est-ce que cette solution te simplifierait la vie ? Si oui, il ne faut pas trop se poser la question et c’est nous qui ferons attention lors de la création d’un nouveau carnet.

    ________________________________

    Après avoir demandé confirmation, 999 carnets suffiront. J’ai bien compris la différence mais dans ma tête tout me semblait beaucoup plus simple. Je vais peut-être encore dire une bêtise mais, en admettant que je créé 999 carnets.

    Si j’ai au préalable dupliqué ton fichier Excel et que d’ici 2 ans je redémarre la création des carnets à 1 avec ce second fichier en admettant aussi que plus les carnets ont été donnés tôt et donc plus ils ont un petit nombre, plus vite ils seront complètement utilisés et il y aura alors moins de risque de doublon non ? J’imagine ça comme une solution de secours, je ne sais pas si nous attendrons les 999 carnets même si je l’espère vraiment !

    ________________________________

    Merci pour la date à l’horizontale, je pense que ce sera plus lisible.

    Idéalement il faudrait faire la même chose pour le nom de la boutique pour être raccord non ? Là aussi c’est purement esthétique, ça ne te fait rien modifier au niveau du code ?

    Encore une fois, si c’est trop compliqué on pourra très bien se satisfaire de ce que tu as fait qui est déjà très lisible, je chipote là on est bien d’accord !

    ________________________________

    Pour l’exportation j’ai besoin de beaucoup moins de données que ce que tu veux mettre dans ce fichier. J’ai uniquement besoin des codesrien d’autre

    L’export des codes sert uniquement à créer les supports visuel (les coupons de réduction). Je pensais faire de cette façon : Créer un dossier sur mon ordinateur qui s’appellera Codes carnets et qui contiendra autant de dossier que je vais créer de carnet (pour le moment 50). A l’intérieur du dossier appelé Carnet 1 il y aura 3 autres dossiers appelés respectivement : Réduction 5%, Réduction 10% et réduction 15%.

    De retour sur ton fichier Excel je vais vouloir exporter pour le carnet 1 la plage E5 :E14 que j’enregistrerais au format .txt (séparateur : tabulation) avec le nom Carnet 1 -5% dans le dossier Réduction 5%.

    Puis j’enregistrerais la plage G5 :G14 avec le nom Carnet 1 -10% dans le dossier Réduction 10% et enfin la plage I5 :I14 avec le nom Carnet 1 -15% dans le dossier Réduction 15%.

    J’ai trois visuels différents pour mes coupons de réduction. Ils se ressemblent beaucoup mais pour les différencieril y a un gros macaron avec écrit le montant de la réduction sur le coupon. 

    Je vais donc sur mon logiciel de PAO et j’ouvre la maquette avec le macaron -5%. Sur mon fichier j’ai un endroit où il y a un bloc texte vide qui va servir très vite, tu vas voir. Je vais demander à mon logiciel d’aller chercher la base de données dans le dossier Carnet 1, Réduction 5% puis Carnet 1 -5%. Et là, comme par magie il va m’importer les 10 codes que tu m’as fait générer et que j’ai exporté plus tôt et je vais ensuite pouvoir créer un fichier PDF de 10 pages comprenant mon visuel avec tes codes. Un code sur chaque coupon soit un fichier de 10 pages. Je vais devoir réitérer l’opération deux fois, une fois pour les codes de -10% et une fois pour les codes de -15%. A ce moment-là j’aurais presque terminé mon carnet, il ne me reste plus qu’à assembler les trois fichier PDF pour avoir un fichier PDF de 30 pages qui regroupe mes 30 codes de réduction que je vais pouvoir attribuer à un magasin. J’aurais cette manipulation à faire autant de fois que je voudrais de carnet, c’est pour ça que je te demandais s’il y avait une façon d’exporter moins fastidieuse. Ce n’est pas une tâche horrible en soit, c’est juste long, surtout lorsque je vais devoir créer les 50 premiers carnets d’un coup.

    ________________________________

    J’ai bien compris l’utilisation de B2 mais quand je t’ai demandé si je pouvais chercher un code en particulier c’est parce que je ne vais pas forcément savoir à quelle boutique il appartient.

    La fonction de recherche que tu as faite est parfaite pour savoir ou les boutiques en sont. Il faut savoir quel type de code elles distribuent le plus (-5%, -10% ou -15%) saisie des codes. Il faut aussi que nous sachions à combien de code elles en sont sur 30 pour qu’elles aient leurs récompenses.

    La fonction de recherche que je pensais faire avec mon fameux Ctrl + F c’était vraiment pour trouver un code spécifique. Par exemple, tous les lundis quelqu’un va prendre la liste des commandes faites avec un code promo et va taper le dit code dans une case et comme B2 ça l’emmènerait directement sur la case pour qu’il n’est plus qu’à mettre un petit « x » à côté pour dire qu’il a été utilisé. J’étais tellement persuadé qu’Excel avait une fonction de recherche que je ne l’ai même pas spécifié… J’aurais dû visiblement.

    ________________________________

    Parlons de ta réduction maintenant. Si tu veux on pourra s’arranger, bien que nous ne livrions pas encore en France mais peut-être un jour ! Et puis, je ne sais plus si je t’ai dit ce qu’on vendait, si ça se trouve ce sont des produits louche, tu n’en voudrais peut-être même pas ! haha

    ________________________________

    C’est vrai qu’à la base j’avais pas du tout envisagé l’ampleur qu’allait prendre la création de ce fichier et ce que ça impliquait. Je suis arrivé avec la fleur eu fusil avec mon petit Excel que j’avais bricolé (et j’étais déjà très content de moi). C’est sûr que le fichier que tu as fait est à 1000 lieux de ce que j’aurais pu faire.

    ________________________________

    J’avais dit que je commencerais l’exportation dimanche mais comme je savais qu’il y aurait des modifications sur ton fichier j’ai préféré attendre malgré la pression que je reçoi en haut lieu. Aujourd’hui j’ai deux solutions, soit je créé les 50 premiers carnets avec le fichier v4 et plus tard je continuerais avec le futur fichier que tu vas faire (V5 j’espère pour toi). Soit j’attends que le fichier soit le bon et je comme ça j’aurais vraiment un historique de toutes les boutiques et pas deux fichiers. J’aime bien les choses carré et la première solution me va que moyennement. Je le ferais que si vraiment on est dans l’impasse.

    ________________________________

    Voilà j’espère avoir répondu à tout et d’une façon compréhensible. En aucun cas je veux « arrêter » parce que je trouve que le projet est dingue et que j’ai dû apprendre plein de choses pour comprendre ce fichier et je ne suis pas de ceux qui abandonne par-contre si tu trouves que le projet est trop bancale du fait de mes informations données un peu au compte-goutte, je comprendrais… Sinon, j’ai hâte de voir la prochaine version !

    Bonne soirée à toi et au plaisir de te lire

    Quentin


    Posté le 9 août, 01:03
    0

    Bonjour Quentin,

    je suis bien content que tu ne veux pas arrêter ! alors moi aussi, je suis d'accord pour continuer ; cependant, même si tu as fait des efforts pour répondre aux questions posées, il manque toujours une info importante : c'est le nombre maximum de boutiques !

    j'ai eu beau relire ton post en entier, ça n'est pas indiqué ; ni même si 3 chiffres est suffisant ou non pour ce nombre de boutiques ; donc en l'absence de cette info, je laisse comme c'est : sur 3 chiffres ; ça signifie qu'il y aura au maximum 999 boutiques, de la boutique n° 001 à la boutique 999.

    si tu penses qu'il pourra y avoir plus de 999 boutiques, dans quelques mois ou dans quelques années, ça n'ira plus à ce moment lointain ! ce sera à toi de corriger ce qui est nécessaire pour mettre le numéro de boutique sur 4 chiffres ; il y aura alors au maximum 9 999 boutiques, de la boutique 0001 à la boutique 9999.

    ------------------------------------------------------------------

    pour le nombre de carnets, tu as écrit : « OUI il y aura plusieurs carnets par boutique. »

    donc merci pour avoir confirmé qu'il peut y avoir plusieurs carnets par boutique : ça c'est ok ; j'ai bien vu ta proposition d'ajouter un chiffre après le nom de la boutique pour différencier les carnets ; mais je n'aime pas cette solution, car elle est un peu bancale !  :(  c'est un peu comme de mettre un cautère (ou un emplâtre) sur une jambe de bois !  ;)

    tu as écrit ceci : « Après avoir demandé confirmation, 999 carnets suffiront. » ; et aussi :
    « je ne sais pas si nous atteindrons les 999 carnets même si je l’espère vraiment ! »

    donc je pense qu'il s'agit de 999 carnets en tout, je veux dire : 999 carnets pour toutes les boutiques confondues ! comme c'est probablement cela, il manque cette autre information importante : combien peut-il y avoir de carnets au maximum par boutique ? en l'absence de cette info, je fais comme cela : numéro de carnet sur 2 chiffres ; il y aura donc au maximum 99 carnets par boutique, du carnet 01 au carnet 99.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    si plus tard, il y en aura plus : soit tu devras corriger ce qui est nécessaire pour mettre le numéro de carnet sur 3 chiffres ; soit tu devras utiliser ta solution bancale de mettre un chiffre après le numéro de la boutique ; ça fera donc par exemple99 carnets pour la boutique "Chez Gégé" ; puis 99 autres carnets pour la boutique "Chez Gégé 2" ; puis encore 99 autres carnets pour la boutique "Chez Gégé 3" ; etc... ; mais il pourra y avoir moins de carnets pour la dernière boutique, donc par exemple pour : "Chez Gégé 19".

    mais je répète que cette solution est bancale, et pour voir tous les carnets de la boutique "Chez Gégé", ça t'obligera à tout ceci :

    * voir tous les carnets de la boutique initiale "Chez Gégé".

    * te souvenir si y'a ou non d'autres boutiques comme "Chez Gégé 2", "Chez Gégé 3", etc...

    SI tu t'en souviens, passer de la boutique "Chez Gégé" à la boutique "Chez Gégé 2", pour voir tous les carnets de la boutique "Chez Gégé 2".

    SI tu t'en souviens, passer de la boutique "Chez Gégé 2" à la boutique "Chez Gégé 3", pour voir tous les carnets de la boutique "Chez Gégé 3".

    * etc...

    SI tu t'en souviens, passer de la boutique "Chez Gégé 18" à la boutique "Chez Gégé 19", pour voir tous les carnets de la boutique "Chez Gégé 19".

    c'est plutôt très fastidieux, n'est-ce pas ? voilà pourquoi je déconseille très fortement cette méthode ! elle ne va pas du tout pour une seule boutique "Chez Gégé" et les boutiques suivantes du genre "Chez Gégé 2", "Chez Gégé 3", etc...

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    mais c'est ce genre de méthode qui sera utilisé pour voir tous les carnets d'une même boutique, par exemple tous les carnets de la boutique "Chez Gégé" ; mais sans qu'il y aie d'autres boutiques du genre "Chez Gégé 2", "Chez Gégé 3", etc... ; je reconnais que la différence est assez subtile, mais j'espère quand même que tu sauras saisir cette subtilité !

    bon, ça ne devrait quand même pas poser de problème pour un prestidigitateur, puisque ses tours de magie sont basés sur l'illusion et les subtilités !  :D  n'est-ce pas Quentin alias Gérard Majax ?  ;)  c'est un célèbre prestidigitateur français ; alors si t'es en Espagne, peut-être que tu ne le connais pas ? voici un lien qui devrait probablement t'intéresser : https://fr.wikipedia.org/wiki/G%C3%A9rard_Majax

    y'a sûrement de très bons prestidigitateurs espagnols, mais je ne les connais pas !  ;P  ...  à part toi, bien sûr !  :D  t'es peut-être aussi célèbre en Espagne que Gérard Majax en France ? réponse de Quentin : « mais non, voyons ! moi, je suis mondialement connu ! même à Tombouctou, en Papouasie, en Ukraine, etc... »  ;)

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    je n'aime pas non plus ta solution de dupliquer le fichier Excel, car là aussi, c'est une solution bancale !  :(  d'ailleurs, comme tu l'as dit toi-même : il s'agirait d'une solution de secours ! cependant, ça sera une bonne idée d'utiliser un fichier par année ; alors là oui, tu auras une bonne idée de dupliquer le fichier chaque début d'année.

    mais attention : pour la réinitialisation du fichier, il faudrait supprimer tous les carnets de chaque boutique ; puis toutes les boutiques ; à moins que tu veuilles utiliser les mêmes boutiques ; mais dans ce cas, il faudrait laisser le 1er carnet de la boutique (qui sera peut-être le seul carnet de ladite boutique).

    pour te faciliter la tâche, le plus simple sera de conserver toujours une copie du fichier quand il est quasiment vide de données ; selon ta façon de travailler : SOIT aucun carnet et aucune boutique ; SOIT toutes les boutiques et un seul carnet (le 1er ou le seul) pour chacune des boutiques que tu auras gardées.

    ainsi, chaque début d'année, il te suffira de dupliquer ce fichier, sans devoir en supprimer ensuite des données : il te suffira d'utiliser ce fichier tel quel : ajout de carnets pour les boutiques déjà existantes ; ajout de nouvelles boutiques (donc automatiquement avec un 1er carnet), suivi éventuellement d'un ajout de carnet(s) pour ces nouvelles boutiques.

    ------------------------------------------------------------------

    à part tout ce que je viens d'écrire à propos de la duplication du fichier, tout ce long post car tu n'as pas mis :

    * je veux 3 chiffres pour le numéro de la boutique car le nombre de boutiques maximum ne dépassera jamais 999 boutiques ; ça fera de la boutique 001 à la boutique 999.

    OU :

    * je veux 4 chiffres pour le numéro de la boutique car le nombre de boutiques maximum ne dépassera jamais 9 999 boutiques ; ça fera de la boutique 0001 à la boutique 9999.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    idem pour le nombre de carnets maximum, tu aurais dû écrire :

    * il y aura au maximum 99 carnets par boutique ; donc on peut mettre 2 chiffres pour le numéro de carnet ; ça fera donc, pour une boutique donnée, du carnet 01 au carnet 99.

    OU :

    * il y aura au maximum 999 carnets par boutique ; donc on peut mettre 3 chiffres pour le numéro de carnet ; ça fera donc, pour une boutique donnée, du carnet 001 au carnet 999.

    ------------------------------------------------------------------

    te rends-tu compte de la longueur de ce post ? de tout ce que j'ai écrire simplement pour 2 infos essentielles manquantes, car non plus, tu n'as pas mis les infos nécessaires (comme je te l'ai décrit plus haut) ? tout ce temps passé à écrire ce long post, j'aurais pu l'utiliser pour avancer ton projet ; mais hélas, j'ai dû mettre ton fichier en attente...  :(

    et ça devra encore attendre, car il va y avoir encore une suite dans le post suivant !

    rhodo

    rhodo Posté le 10 août, 10:11
    par rhodo
    0

    à Quentin.

    Lis d'abord mon post précédent de 10:11.

    pour la date dans le sens horizontal, c'est ok : c'est facile, et c'est déjà fait dans la nouvelle version en cours ; idem pour le nom de la boutique dans le sens horizontal.  :)

    ------------------------------------------------------------------

    pour l'exportation : merci pour tes infos supplémentaires ; donc y'aura uniquement les codes ; pas même les coches, ni autres : ça c'est ok.  :)

    cependant, toujours pour l'exportation, y'a d'autres choses :

    * tu parles de créer un dossier général "Codes carnets" qui contiendra autant de sous-dossiers "Carnet X" que nécessaires ; je crois que ça sera mieux de créer un dossier général "Boutiques" qui contiendra un seul fichier par boutique ; donc si y'aura 999 boutiques, y'aura 999 fichiers.

    * si tu nommes le fichier comme par exemple "005  Le grizzly rouge.txt", ce sera facile de trouver le bon fichier selon le numéro de la boutique OU selon le nom de la boutique.

    ça sera immédiat pour le numéro de la boutique ; car le classement alphabétique automatique fera automatiquement un classement selon les numéros de boutique ; cela d'après le code ascii des chiffres 0 à 9 (valeurs ascii 48 à 57), pour les numéros de boutique 001 à 999.

    je te fournirai un complément pour le nom de la boutique : tu saisiras le nom de la boutique, et ça sortira le numéro de la boutique correspondant.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    * c'est chacun de ces fichiers qui contiendra tous les codes aléatoires ; cela pour tous les carnets de la boutique concernée.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    mais si tu préfères qu'un fichier contienne un seul carnet, on peut faire comme ça :

    * un dossier général "Boutiques" qui contiendra autant de sous-dossiers "Boutique X" que nécessaires ; exemple : sous-dossier "005  Le grizzly rouge".

    * ce sera immédiat de trouver le bon sous-dossier selon le numéro de boutique (idem que ce que j'ai décrit plus haut pour le classement automatique selon les codes ascii).

    * je te fournirai un complément pour le nom de la boutique : ce sera idem, sauf que cette fois ça n'est plus pour des noms de fichiers mais pour des noms de sous-dossiers.

    * ce sera un sous-dossier de boutique qui contiendra autant de fichiers que de carnets par boutique ; exemple : le sous-dossier "005  Le grizzly rouge" contiendra le fichier "Carnet 01.txt" pour le 1er carnet (ou le seul) de la boutique 005 ; puis pour les autres carnets éventuels, il y aura : "Carnet 02.txt" ; "Carnet 03.txt" ; ... ; "Carnet 99.txt".

    * bien sûr, chaque fichier "Carnet ##.txt" contiendra tous les 30 codes aléatoires du carnet en question.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    l'ennui, c'est qu'ensuite ça se complique encore si tu veux séparer les codes selon les 3 types de réduction ! dans le sous-dossier "005  Le grizzly rouge", y'aurait d'abord ces 3 sous-dossiers : "R05" pour les réductions -5% ; "R10" pour les réductions -10% ; "R15" pour les réductions -15%.

    et donc, chacun des ces 3 sous-dossiers contiendrait des fichiers "Carnet ##.txt" comme déjà décrit plus haut ; mais cette fois, le fichier "Carnet ##.txt" contiendra uniquement les 10 codes aléatoires de la réduction concernée, AU LIEU des 30 codes aléatoires pour toutes les 3 réductions.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    alors tu vois que ton problème d'exportation est très loin d'être aussi simple que tu as l'air de le penser !  ;)  et ça avant même de parler de logiciel de PAO ou de fichier PDF ! ça va ? tu as tout suivi ?  :D

    ------------------------------------------------------------------

    la suite dans le post suivant.  :D  eh oui, pour l'instant j'essaye de répondre à tout ce que tu as écrit dans ton très long post précédent de ce matin à 1:03, sans rien oublier !  ;)

    rhodo

    rhodo Posté le 10 août, 13:13
    par rhodo
    0

    à Quentin.

    Lis d'abord mes 2 posts précédents de 10:11 et 13:13.

    ------------------------------------------------------------------

    j'ai bien compris qu'en plus de l'utilité « aller à » SELON B2, tu veux AUSSI pouvoir faire une recherche SELON un des codes aléatoires ; ça t'indiquera alors dans QUEL carnet il se trouve (et donc aussi pour QUELLE boutique) ; c'est bien ça, n'est-ce pas ? si oui, je comprends tout à fait cette demande, car c'est effectivement une bonne idée.  :)

    je ne veux rien garantir d'avance, mais j'essayerai de trouver une solution pour ça.  ;)

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    tu as écrit aussi : « Il faut savoir quel type de code elles distribuent le plus (-5%, -10% ou -15%) » et : « Il faut aussi que nous sachions à combien de code elles en sont sur 30 pour qu’elles aient leurs récompenses. »

    pour ça aussi (les 2 choses)sans rien garantir d'avance, j'essayerai de trouver une solution.  ;)

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    mais évidemment, pour chaque chose en plus, ça prendra un temps supplémentaire !

    tu as de la chance que je ne te facture pas le temps passé, lollllllllllllll !  ;)

    ------------------------------------------------------------------

    pour ma réduction et ta proposition qu'on s'arrange, même si vous ne livrez pas actuellement en France : merci quand même ; je n'ai effectivement pas besoin de produits louches ... d'autant plus que j'ai déjà une louche pour prendre ma bonne soupe de légumes !  ;)

    ainsi donc, de la même façon que la Migros livre uniquement en Suisse, vous vendez uniquement en Espagne ! c'est bien de privilégier le territoire national, même si c'est dans le sens anti-horaire de la mondialisation !  :D  c'est bien dommage pour certains produits comme le Malaga : c'est le seul vin que j'aime bien, car il est très sucré ! y'a aussi le bon nougat touron ou turrón ! (très sucré aussi) ; bien sûr, y'a aussi la bonne paëlla !  :)

    une paëlla avec du bon riz au safran, de bonnes crevettes et de bonnes moules ; mais l'ennui, c'est que c'est vraiment pas facile de décortiquer les crevettes ! ni d'ouvrir les moules ! y'en a qui sont trop bien fermées ! même si elles sont déjà mortes, les crevettes et les moules se sont unies pour faire de la résistance, lollllllllllllllllll !  :D

    peut-être qu'en Espagne vous avez un remède à ça ? vous essayez de les terroriser avec d'anciennes histoires de Franco ? alors les crevettes se décortiquent toutes seules (un peu à la manière des fours auto-nettoyants), et les moules s'ouvrent toutes seules (avec une perle rare à l'intérieur !).

    ah non, j'me trompe : les perles, c'est dans les huîtres, pas dans les moules !  :D  c'est pour ça que les huîtres sont plus appréciées des aristos et des snobs que les moules !  :D  même si ça vaut pas autant que du caviar !  ;)

    ------------------------------------------------------------------

    tu as écrit :

    « C’est sûr que le fichier que tu as fait est à 1000 lieues de ce que j’aurais pu faire. »

    tu as aimé ma version v4, mais ce n'est rien encore comparé à ce que va être la future version v5 !  ;)  avec les techniques de mappage et de chaînage, ça va être autrement plus corsé ! j'espère que tu sauras t'accrocher, et que tu arriveras à suivre !  :D  (je te donnerai toutes les infos nécessaires pour comprendre les mécanismes utilisés)

    ------------------------------------------------------------------

    pour « la pression en haut lieu » : désolé, mais je ne peux pas « avancer plus vite que la musique » ! je fais à mon rythme, et si ça ne leur convient pas, alors ce sera tant pis ! c'est déjà un boulot énorme en soi ; alors je ne veux pas accélérer juste pour faire plaisir à « ces messieurs d'en haut » ! dis-leur que « qui va piano va sano » (c'est une expression italienne), et que mieux vaut que ça avance lentement et sûrement plutôt que rapidement et de façon bâcléeavec un résultat autant approximatif qu'aléatoire ... c'est le cas de le dire ! sauf qu'ils n'aimeraient pas cet aléatoire-là, lollllllllll !  :D

    maintenant, si « ces messieurs d'en haut » ne peuvent vraiment pas attendre, alors pour t'éviter des ennuis possibles, il vaut peut-être mieux que tu commences déjà l'exportation en utilisant la version v4, même si cette version v4 n'est pas du tout adaptée pour plusieurs carnets ! et c'est normal vu qu'au départ, selon ton énoncé initial, il semblait bien n'y avoir qu'un seul carnet par boutique ! avec un maximum de 300 boutiques ; donc avec un maximum de 300 carnets !

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    à toi de voir si tu commences déjà l'exportation ou non : c'est à toi de décider ! moi, je ne veux pas m'occuper de ces problèmes de délais EN PLUS de l'énorme travail qu'il va y avoir à faire ! mais au cas où tu penses déjà que ça n'ira pas à cause des problèmes de délais, alors peut-être vaudrait-il mieux laisser tomber dès maintenant ? (c'est à toi de choisir)

    ne me demande pas de date de fin de travail, même approximative : je ne peux rien prévoir d'avance ! ça prendra peut-être une semaine ou un mois, selon comment ça se présente ET selon mes disponibilités.

    mais moi je ne veux pas m'occuper de ces problèmes de temps : j'ai déjà bien assez à faire avec tous les problèmes techniques à mettre en œuvre, et ça n'est pas évident, loin de là ! pour chaque problème technique qui se présente au fur et à mesure, il va falloir que je trouve une solution adéquate ! rends-toi bien compte que le job que tu me demande équivaut bien à créer une application complète ! et normalement, sur un forum d'entraide, on ne fait pas ça ! d'habitude, on aide sur un problème ponctuel, sans plus !

    alors si « ces messieurs d'en haut » ne sont toujours pas contents, dis-leur de faire tout le job eux-mêmes ; ou qu'ils fassent appel à une société de services informatiques ; mais , ce sera un service payant : il faudra qu'il déboursent une grosse rémunération pour « s'offrir » un logiciel fait sur mesure !

    voilà aussi pourquoi, sur les forums d'entraide, on n'autorise pas des mots comme « URGENT ! » ou « DÉLAI URGENT ! » : aucun demandeur n'est en droit de réclamer des délais à des contributeurs qui sont bénévoles et prennent volontairement sur leur temps pour aider les autres.

    ------------------------------------------------------------------

    moi, au départ, je pensais juste t'aider pour un tirage aléatoire sans remise de 30 codes, rien de plus ! c'est ensuite que ça s'est transformé en plusieurs boutiques : 300, ou plus ; je ne sais même pas combien au juste puisque tu ne l'as jamais mentionné explicitement ! je te rappelle qu'en l'absence de cette info, j'utilise 3 chiffres pour le numéro de boutique999 boutiques au maximum ; je trouve que ce serait stupide de mettre le numéro sur 4 chiffres si tu n'auras JAMAIS plus de 999 boutiques ! mais ça, je ne peux évidemment pas le deviner à ta place !

    par contre, si je savais que le nombre de boutiques (actuellement 300) risque de se rapprocher TROP PRÈS de 999, alors LÀ OUI, ça deviendrait UTILE de « prévoir le coup » dès maint'nant ! et donc de mettre le numéro boutique sur 4 chiffres : il pourra alors y avoir 1 000 boutiques et plus, jusqu'à un maximum de 9 999 boutiques.

    si ça pourrait dépasser 9 999 boutiques, alors il vaudrait mieux utiliser ACCESS ! (plutôt qu'EXCEL)

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    de même, c'est ensuite que ça s'est transformé en plusieurs carnets par boutique ; non plus, tu n'as JAMAIS précisé COMBIEN il peut y avoir au maximum de carnets PAR BOUTIQUE ! et ça j'en suis sûr puisque si tu l'avais indiqué, je l'aurais vu, et je n'aurais pas besoin de me poser la question à ce sujet !

    donc on ne peut même pas savoir approximativement COMBIEN il y aura de carnets EN TOUT ! s'il y a mettons une moyenne de 5 carnets par boutique, ça ferait en tout : 999 boutiques × 5 carnets = 4 995 carnets ; si tu me dis qu'il pourrait y avoir en moyenne jusqu'à 99 carnets par boutique, ça ferait en tout : 999 boutiques × 99 carnets = 98 901 carnets ! tu trouves peut-être que 98 901 carnets c'est la même chose que 4 995 carnets ? (smiley ironique) ; moi pas !  :D

    je rappelle qu'en plus c'est une moyenne ; et en plus aussi, les calculs du paragraphe précédent seront dramatiquement accrus si jamais on passait le nombre de boutiques à 9 999 !

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    tu comprends maintenant pourquoi je te dis que « je nage dans le flou » à cause de tes infos manquantes ou pas assez précises ?  ;)

    si j'accepte quand même de continuer, c'est car en l'absence de ces infos (pourtant essentielles à ce sujet), c'est moi qui les choisis à ta place, même si ça risquera de ne pas suffire ! mais dans ce cas-là tant pis : ce sera à toi de faire toutes les adaptations nécessaires le moment venu !  ;)

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    tout ça n'est pas dit pour te critiquer, mais c'est juste car en pratique, ces infos sont tout à la fois très importantes et nécessaires ! n'oublie pas qu'au final, dans le classeur Excel, ou si tu préfères dans le fichier Excel, il faut qu'il y ait de la place pour toutes les données ; et en plus que leur organisation soit rationnelle et pas faite n'importe comment, de bric et de broc ! ça ne ferait qu'engendrer des problèmes supplémentaires, et ça compliquerait inutilement à la fois le travail de programmation en VBA et la future utilisation du fichier !  :(

    ------------------------------------------------------------------

    bon, en attendant ta future réponse à mes 3 posts, je vais essayer d'avancer la version v5.  ;)  avec les infos que j'ai déjà indiquées en remplacement des infos manquantes : il faut bien que je parte sur « quelque chose de solide », même si « ce solide » s'avèrera peut-être quelque chose de friable ! mais comme je t'ai déjà dit : je ne reviendrai pas sur ce que j'ai déjà fait ... sauf si ça peut encore être changé SANS de trop grandes difficultés, mais j'en doute !  :(

    ------------------------------------------------------------------

    le temps d'écrire mes 3 longs posts, il est déjà 16 h 56 ! je n'ai pas pu avancer la version v5 d'un seul iota, et , j'ai besoin de faire une très longue pause ! alors la version v5 attendra encore quelques heures de plus !  :(

    rhodo

    rhodo Posté le 10 août, 15:00
    par rhodo
    0

    Bonjour rhodo,


    Je te fais une réponse rapide pour répondre au point que je n'ai pas clarifier dans mon précédent post et pour que tu puisses avancer comme tu l'entends. Je te ferais une réponse complète et détaillé ce soir, promis.

    - Il n'y aura pas plus de 999 boutiques donc on reste sur 3 chiffres pour les boutiques.

    - Il n'y aura pas plus de 99 carnets par boutique (ça sera surement une dizaine graaaaand maximum)

    - Pour la pression en au lieu c'est juste au niveau des ventes, je te détaillerais plus de chose dans mon post de ce soir mais l'ouverture de la marque ne suscite pas l'engouement qu'on aurait voulu et on sait que ces carnets peuvent générer des ventes. En AUCUN cas je disais ça pour te faire accélérer, j'énonçais juste la possibilité que j'avais de faire tout de suite 50 carnets avec le fichier V4 pour qu'on puisse commencer à distribuer ces réductions.


    - Pour l'export des codes pour faire mes fusions j'ai une autre piste qui sera plus simple pour moi. Il faut vraiment se dire que tous les codes que j'exporterais seront vraiment pour la création des carnets prêt à être imprimé et ne serviront qu'à ça. Je pourrais les supprimer par la suite. C'est ton fichier qui sera au coeur de toutes les attentions et qui va servir pendant des mois/années.

    Pour répondre à :

    tu as écrit aussi : « Il faut savoir quel type de code elles distribuent le plus (-5%, -10% ou -15%) » et : « Il faut aussi que nous sachions à combien de code elles en sont sur 30 pour qu’elles aient leurs récompenses. »

    On le sait déjà ça grâce au tableau récap que tu as fais. Ils analyseront les données, tu n'a pas besoin de changer quelques chose pour ça.



    J'espère avoir répondu à toutes les infos urgente, comme dis plus haut je te ferais une réponse complète ce soir. 

    Merci à toi.

    Je pense savoir le temps que tu passes à faire ce fichier et je sais qu'il ne se fait pas comme par Majax... (Hahaha)


    Posté le 11 août, 09:01
    0

    Bonjour Quentin,

    ton post d'hier à 09:01 m'a vraiment fait très plaisir, car tu as bien précisé que la pression en haut lieu était seulement au niveau des ventes, et pas pour me faire accélérer ; de plus, tu as enfin mis très clairement les 2 infos nécessaires que j'avais demandées ➯ je ne nage plus dans le flou, et je vois bien mieux ce que ça pourra donner plus tard !  :)

    ------------------------------------------------------------------

    a) comme il y a 3 chiffres pour le de boutique, alors il pourra y avoir un maximum de 999 boutiques, de la boutique n° 001 à la boutique n° 999.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    b) note bien que s'il y a une dizaine de carnets au grand maximum PAR BOUTIQUE, ça fait qu'EN TOUT, il y aura au maximum : 999 boutiques × 10 carnets = 9 990 carnets.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    c) sur la 2ème feuille, il y aura TOUTES les boutiques ; donc il pourra y avoir 999 boutiques ; mais attention : sur cette feuille : on n'affiche qu'un seul carnet PAR BOUTIQUE, avec 10 lignes PAR CARNET (comme c'est le cas actuellement, et comme tu connais déjà).

    note que le nombre de lignes sera alors : 999 boutiques × 1 carnet PAR BOUTIQUE = 999 carnets ; puis 999 carnets × 10 lignes PAR CARNET = 9 990 lignes.

    comme il y a en plus les 4 premières lignes, ça fera au total 9 994 lignes ; ça fait beaucoup, mais ça tient quand même largement sur une feuille de calcul.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    d) toujours sur la 2ème feuille : c'est le système de mappage qui permettra de voir TOUS les carnets d'une boutique ; cela sur l'emplacement du seul carnet visible d'une boutique ; c'est pourquoi j'ai renommé la feuille "Carnets" en "Visu" (abréviation de "Visualisation").

    en effet, cette 2ème feuille servira surtout pour la visualisation, mais elle ne servira PAS pour le STOCKAGE de TOUTES les données ! car ça prendrait bien trop de place pour TOUT mettre ! imagine ça : 999 boutiques × 10 carnets = 9 990 carnets ; puis 9 990 carnets × 10 lignes PAR CARNET = 99 900 lignes ; plus les 4 premières lignes = 99 904 lignes !!!

    d'accord, ça tiendrait largement dans une feuille de calcul de 1 048 576 lignes ; mais malgré tout, ça ne me dit rien du tout d'avoir une feuille de 99 904 lignes !!!

    voilà pourquoi je préfère largement le système de mappage mentionné ci-dessus : c'est grâce à ce système qu'on peut avoir au maximum 9 994 lignes, ce qui est beaucoup plus raisonnable !!!

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    e) bien sûr, il faut quand même stocker TOUTES les données !!! alors comment faire ? c'est là que j'ai choisi d'ajouter une nouvelle feuille, où 1 carnet d'une boutique tient entièrement sur une seule ligne999 boutiques × 10 carnets = 9 990 carnets, qui tiennent sur 9 990 lignes ; plus les 3 premières lignes = 9 993 lignes ; là aussi, c'est très raisonnable !  :)

    bien sûr, la présentation n'est pas folichonne, mais cette feuille est juste pour le stockage ; ça n'est pas pour la visualisation ; car pour ça, il y a la feuille "Visu".

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    f) comme chaque carnet d'une boutique doit avoir sa propre date de distribution, ce n'était plus possible de mettre cette date dans le tableau TBtq de la 1ère feuille "Boutiques".

    ainsi, TBtq contient maintenant 2 colonnes seulement : "N" et "Boutique" (c'est plus simple, hein ?) ; et j'ai renommé la feuille "Boutiques" en "LBtq" : Liste des Boutiques.

    évidemment, y'a maint'nant un autre système pour les dates des carnets !  ;)

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    g) j'ai ajouté une autre feuille, mais je t'en parlerai plus tard ; ce sera une surprise !  ;)  le fichier v5 actuel contient donc en tout 6 feuilles.

    je n'ai pas joint ce fichier v5 car il est loin d'être terminé : il est encore « en chantier » ➯ même si y'a pas mal de choses qui marchent bien, y'a aussi beaucoup d'autres choses qui ne sont pas encore fonctionnelles !

    ------------------------------------------------------------------

    pour la 1ère grosse partie du travail à faire : je l'ai bien avancée, mais y'a encore beaucoup à faire !!! ensuite je pourrai passer à la 2ème grosse partie ; puis y'aura encore tout le reste... donc c'est pas de sitôt que le fichier pourra être terminé, lolllllllllll !

    alors ne sois pas surpris si ça va encore beaucoup tarder ! dis-toi bien que je travaille dessus, et que je n'ai pas laissé tomber ! quand le bon moment viendra, tu verras que le résultat en vaut largement la chandelle !  :)

    ------------------------------------------------------------------

    la 1ère grosse partie concerne l'ajout d'une boutique (avec, forcément, le tout premier carnet de cette nouvelle boutique) ; car ça serait tout simplement un non-sens d'avoir ajouté une boutique, et que cette nouvelle boutique n'ait aucun carnet !

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    la 2ème grosse partie concerne l'ajout d'autres carnets pour une boutique donnée ; c'est-à-dire, évidemment, l'ajout d'au moins UN carnet au tout premier carnet d'une boutique ; donc si une boutique pourra avoir jusqu'à 10 carnets en tout, il te faudra ajouter SUCCESSIVEMENT 9 carnets supplémentaires au tout premier carnet ; c'est donc tout simple, n'est-ce pas ?  ;)

    note bien que ce sera inutile d'ajouter ces 9 carnets supplémentaires d'un seul coup puisque tu ajouteras des carnets au fur et à mesure dans le temps ; je précise cela pour te montrer que ce ne sera pas comme ce que tu avais déjà vu pour l'ajout de plusieurs nouvelles boutiques d'un seul coup : c'était ce qu'on avait déjà vu pour l'ajout des 3 nouvelles boutiques "Le loup garou" ; "Chez Pégase" ; "Le yéti" ; c'était selon le nombre de lignes de TBtq, et par comparaison avec m ; je te rassure : cette fonctionnalité super pratique existe toujours dans la nouvelle version v5 !  :)

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    même si tu as dit qu'une boutique pourra avoir « une dizaine de carnets au graaaaand maximum » : du seul fait que le numéro d'un carnet est sur 2 chiffres, alors techniquement, rien ne t'empêchera d'ajouter 98 carnets supplémentaires au tout premier carnet d'une boutique ➯ 99 carnets en tout !  :)

    tu pourras alors très facilement aller jusqu'à 20 ou même 30 carnets en tout ! car c'est selon cette expression bien connue : « qui peut le plus peut le moins ! »  ;P

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    info supplémentaire : le système de chaînage pourra éviter qu'il doive y avoir le même nombre de carnets pour chaque boutique ! et c'est heureux car ça évitera qu'on doive avoir un emplacement de stockage de 10 carnets pour chaque boutique ! donc à fortiori, c'est naturellement encore plus avantageux pour 20 ou 30 carnets ! ou même pour 99 carnets !  :)

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    ces 2 grosses parties doivent utiliser le système de mappage, ainsi que le système de chaînage ; il y aura même un double chaînage : un chaînage vers l'avant depuis le premier carnet ; et aussi un chaînage vers l'arrière depuis le dernier carnet.

    tu ne t'attendais pas à ce que cet exo nécessite de telles techniques, n'est-ce pas ?  ;)  mais tu verras plus tard, le moment venu, que même si c'est très long et compliqué à mettre en œuvre, ça s'avère largement payant !  :)  et c'est compliqué pour moi le programmeur VBA, ce ne sera pas compliqué pour toi l'utilisateur final !  :D  donc tu peux aller dormir en attendant, ou relire très attentivement ce nouveau super long post !  ;)

    rhodo

    rhodo Posté le 12 août, 04:45
    par rhodo
    0

    Bonjour rhodo,

    Tout d’abord merci de continuer toi aussi !

    _____________________________________

    Je suis content que tu sois soulagé quant à la pression que je peux avoir. Comme je te l’ai dit en aucun casc’était pour te presser car je suis bien conscient du travail que demande ce fichier. La pression que j’ai est plutôt implicite, la marque est lancée et on s’attendait à un démarrage calme mais pas à ce point, même si là ça commence à bouger un petit peu parce qu’on a plusieurs cordes à notre arc et qu’on ne mise pas tout sur un canal de communication. Ces carnets sont attendu par les boutiques ce qui me fait dire que ça pourrait générer des ventes, c’est pour cela que je me posais la question de faire les 50 premiers carnets tout de suite avec la V4 et d’avoir la V5 pour tout le reste. Mais je n’aime pas cette solution, l’idée de devoir jongler entre les fichiers pour savoir où est le code qu’on cherche je n’aime pas du tout. C’est pour ça que je repousse l’impression de ces tickets et que je préfère attendre une version finale ou tout sera dessus, bien comme il faut.

    _____________________________________

    Je savais d’avance que ma proposition d’ajouter un numéro derrière le nom de la boutique n’allait pas te plaire haha. Je voulais juste t’éviter un peu de travail. C’est sûr que la solution que tu proposes est bien mieux, ce n’est pas comparable.

    _____________________________________

     ¡ Soy Frances ! La société est en Amérique latine, moi je viens en renfort de l’équipe sur place et je travaille depuis ma France, à Lyon sa plus belle ville.

    Je regardais Gérard Majax quand j’étais tout petit, je ne sais plus dans quelle émission il passait mais je m’en souviens ! En parlant de magicien j’ai découvert un peu plus tard un Monsieur extraordinaire : José Garcimore. Je me suis pris des fous rires en revoyant des parties d’émission avec Denise Fabre avec leurs fameuses émissions avec les souris Tac et Tactac, ses deux comparses.

    _____________________________________

    Comme mon idée d’ajouter un numéro à la fin du nom des carnets je me doutais que l’idée le fichier n’allait pas te plaire non plus. C’était encore une fois pour t’éviter de tout bouger. Je n’aime pas cette idée non plus mais comme dit plus haut, en fonction des ventes (ou des non-ventes) je serais peut-être contraint de le faire.

    Je valide ton idée d’utiliser un fichier par année que je garderais vierge plutôt que de supprimer toutes les boutiques déjà inscrites. Vaut mieux faire table rase et repartir à nouveau !

    _____________________________________

    Merci pour les dates à l’horizontal, je pense que ça apporte un truc, ça devient plus lisible.

    _____________________________________

    Au Début les carnets que je vais faire ne seront pas attribués. Je vais générer les 50 premiers carnets et ainsi pouvoir créer mes coupons avec les codes qui auront été générés. C’est quand ils attribueront les carnets aux boutiques qu’ils les nommeront. Il n’y a donc pas besoin d’exporter les codes avec le nom des boutiques. D’autant que ces codes vont servir qu’à moi, personne d’autre ne se servira de ces fichiers de code. Quand je t’ai expliqué ça c’était vraiment pour que tu comprennes comment j’allais réaliser mes fichiers finaux pour que tu puisses avoir une vue d’ensemble.

    Si vraiment l’export « auto » n’est pas faisable pour x raisons, je le ferais à la main. J’aurais « juste » à copier 10 cases, les coller dans un nouveau fichier .xls et l’enregistré avec un nom du type Carnet_1_reduc_5%.(Cette opération sera à faire 3 fois par carnet du coup, une fois pour chaque pourcentage de réduction)

    _____________________________________

    J’avoue être un peu embêté parce que j’étais sûr que le fameux ctrl + F fonctionnait sur Excel. Tellement surque je n’ai pas vérifier, en prenant ça en compte c’était pour moi très simple de retrouver un code utilisé, c’est pour ça que je n’en ai pas parlé…

    A ma connaissance on n’aura pas moyen de savoir à quelle boutique appartient le code qui a été utilisédepuis le site marchand. C’est donc à nous manuellement de chercher le code dans le fichier que tu as fais puis de le pointer. Actuellement je ne vois pas trop d’autre solution pour ça mais si vraiment tu me dis que ce n’est pas possible je vais essayer de trouver une solution. Peut-être un addon à rajouter à notre site marchand qui pourra peut-être permettre de nous envoyer une notification ou je ne sais quoi… A voir

    _____________________________________ 

    Pour les statistiques je te confirme que ce que tu as fais est très bien, tu n’as pas besoin de prévoir autre chose pour savoir quel code sont les plus utilisés. La feuille Récap va parfaitement et si ils veulent faire des analyses là-dessus il pourront se fier à ce tableau, c’est déjà bien suffisant.

    _____________________________________ 

    Attention, attention à ce que tu dis ! Ce ne sont pas des produits louche et encore moins des louches ! Nous faisons dans le produit vivant, ce sont de belles plantes, très ‘décontrachté’. Cette société est une partie du travail que nous faisons, si tu veux en savoir plus je pourrais t’en parler mais en privé , ce serait avec plaisir.

    Je sais que pour ma part mon esprit fait si je ne vois/comprend pas quelque chose je ne peux pas réfléchir et proposer/trouver des solutions. C’est pour ça qu’avec Excel je suis dans le vague et que j’essaye de répondre au mieux à tes questions, de te fournir toutes les données qui te sont absolument nécessaire pour réaliser le fichier. J’ai bien vu que tu ne fonctionnais pas comme ça parce que même avec les bribes que je t’ai données tu as réussi à faire beaucoup, mais si ça peut t’aider à mieux comprendre le projet, encore une fois c’est avec plaisir.

    _____________________________________ 

    En vin espagnol je ne m’y connais pas du tout. J’ai juste un nom latin qui me vient en tête c’était du « El diablo » je crois, un bon petit vin rouge mais argentin celui-là.

    En parlant de crevette, de ‘Bubba Gump’ j’ai très récemment vu une technique pour les décortiqué très très simple ! Tellement simple qu’on pourrait croire à un tour de notre Gégé National. Il suffit de faire passer le pique d’une fourchettesur le dos de la crevette par la queue et tout s’enlève d’un coup ! Comme par Majax ! Il y a aussi ta technique de compter les fabuleuses histoire de Franco, je ne sais pas quelle technique fonctionnera le mieux haha.

    _____________________________________ 

    J’entends bien que tes remarques ne sont pas là pour critiquer mais que tu en as besoin pour avancer, comme dit plus haut je suis un peu perdu et ce fichier dépasse largement ce que j’avais en tête (et c’est tant mieux !).

    _____________________________________

    10 Carnets par boutique c’est un maximum je pense, en moyenne je pense plus à 2/3 grand maximum.

    C’est une bonne idée la feuille qui regroupe toutes les données sur une ligne pour alléger le fichier !

    J’ai hâte de voir la surprise !!!! J’adore les surprises. 

    Avec tout ce que tu m’en dis je sais déjà que le résultat va être top !!!

    _____________________________________

    EDIT

    _____________________________________

    C’est sûr que si on est plus limité par le nombre de carnets sup par boutique c’est encore mieux, on ne sait jamais !

    Chainage… Avant…Arrière…mappage…Bonne nuit…

    Je comprendrais surement mieux avec le fichier entre les mains haha !

    Navré d’avoir mis autant de temps à répondre mais j’essaye de te faire des réponses aussi précise que les tiennes.

    Bonne soirée rhodo

    Quentin


    Posté le 12 août, 18:53

    Si vous n'êtes pas inscrit sur le site, vous pouvez poster librement (en tant qu'invité).
    Pour cela, indiquez un pseudonyme (nom d'utilisateur) et une adresse email :