Créer formule, ou macros ??

nanoudiskrette Messages postés 13 Date d'inscription   Statut Membre Dernière intervention   -  
via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,

Je suis une novice de chez novice. Mon soucis est le suivant :
1-J'ai créé un classeur appelé "calendrier 2014" qui comporte 10 colonnes allant de A à J (correspondants à certains jours des mois à venir) sur 35 cellules de haut.
Ce classeur doit me permettre d'introduire des données de type "Texte" (=noms de famille)
dans l'une ou l'autre cellule du tableau en fonction de la date sélectionnée.

2- j'ai créé un second classeur appelé "journalier" qui comporte des colonnes de A à S (qui me serviront à entrer différentes autres données.

3- dans les colonnes B2 jusqu'à B35, j'ai inséré un lien me permettant (par double cliq) d'avoir accès au classeur "calendrier 2014".

Mon souhait est le suivant : j'aimerais bien avoir la possibilité lorsque je fais appel à ce lien et que j'y introduit un Nom de famille (peut importe où dans la grille) que ce nom de famille se copie dans la colonne E du second classeur.

Exemple : après avoir ouvert le classeur "journalier" et double cliq en B2 sur le lien vers le classeur "calendrier 2014"; je dactylographie le Nom "Fraisier" en D4 (qui correspond à une date du calendrier); il me serait agréable que dans le classeur "journalier" le Nom "Fraisier" se copie dans la cellule E2 en regard.

J'espère avoir été +/- claire et attends avec impatience l'aide qu'il vous sera possible de m'apporter.
Je vous rappelle que je suis une NEOPHITE !!!!

Merci de votre compréhension et à bientôt j'espère.

23 réponses

  • 1
  • 2
  1. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Bonsoir

    Sans doute une macro serait nécessaire, à voir ...
    Les noms dans la colonne E doivent se suivre au fur et à mesure de leurs entrées ?
    Ce serait plus simple si on avait un aperçu de ton classeur
    Post un exemple allégé et anonymé sur cjoint.com et reviens ici indiquer le lien fourni

    Dans l'attente

    Cdlmnt
    0
  2. nanoudiskrette Messages postés 13 Date d'inscription   Statut Membre Dernière intervention  
     
    Bonjour,
    Merci de l'intérêt que vous avez bien voulu accorder à ma requête.
    Voici le lien pour le premier fichier :

    https://www.cjoint.com/?3HllVvcRsyY

    et voici le lien pour le second fichier :
    https://www.cjoint.com/?3HlmcQFoGfV

    Pour répondre à votre question, disons que je reçois Mr Framboisier, j'ouvre mon classeur « JOURALIER », j'inscris un « V » dans la colonne A ou C (en fonction du RDV que l'on fixera <calendrier 2014 ou 2015>), ensuite je clique sur le lien
    en colonne B ou D qui me renvoie au calendrier 2014 ou 2015 ad hoc.
    Dans ce calendrier je dactylographie dans la cellule du jour choisi pour le RDV le nom « FRAMBOISIER ».
    Il me serait donc agréable que ce nom (FRAMBOISIER) se copie automatiquement dans ma colonne E de mon classeur « JOURNALIER ».

    Il s'agirait donc d'un simple COPIER-COLLER du nom ; mais mon soucis est que je ne sais pas quelle formule annoter pour que mon programme reconnaisse chaque entrée « CALENDRIER »(peu importe la cellule où j'introduirai l'entrée) comme nouvelle entrée et me copie le nom dans le classeur « JOURNALIER »
    Donc effectivement, les noms doivent se suivre au fur et à mesure de leurs entrées.

    Merci d'avance pour votre aide à venir.
    Amicalement
    0
  3. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Bonsoir

    Par macro on peut envisager le report du nom dans le classeur journalier mais il faut :

    - que la structure des 3 feuilles soient identiques (RV en ABCD et Noms en E)
    - connaître le nom exact du classeur journalier (le nom que celui que tu m'as envoyé est bien long classeur_journalier_3_zones

    Dans l'attente

    Exemple de macro à mettre dans le Worksheet de la feuille de chaque Calendrier en supposant le classeur journalier nommé journalier simplement

    Private Sub Worksheet_Change(ByVal Target As Range)
    Dim nom As String
    Dim feuille As String
    nom = Target.Value
    If Target.Value = "" Then Exit Sub
    feuille = Workbooks("journalier.xlsx").ActiveSheet.Name
    Dim DernLigne As Long
    DernLigne = Workbooks("journalier.xlsx").Sheets(feuille).Range("E" & Rows.Count).End(xlUp).Row
    If DernLigne = 1 Then DernLigne = 2
    Workbooks("journalier.xlsx").Sheets(feuille).Range("E" & DernLigne + 1) = nom
    Workbooks("journalier.xlsx").Activate
    End Sub

    De même au lieu d'avoir des liens dans toutes les cellules des colonnes B et D de journalier on pourrait avoir simplement 3 lignes de macro qui ouvre le calendrier adéquat simplement en double-cliquant dans la colonne B ou la colonne D

    Cdlmnt

    "L'imagination est plus importante que le savoir." A. Einstein
    0
  4. nanoudiskrette Messages postés 13 Date d'inscription   Statut Membre Dernière intervention  
     
    Bonjour Via55,

    Merci déjà pour la macro conçue !
    Cependant ........ je vais sans aucun doute vous paraître "très idiote" !!!! mais je ne connais pas le mot Worksheet!
    Comment y accéder ? dois-je faire le nécessaire d'abord par le classeur "Calendrier" ?
    Faut-il que je clique sur la touche macro pour introduire ces données ?

    D'autre part, j'ai travaillé mon classeur, que j'ai simplement appelé "JOURNALIER" afin que toutes les cellules/colonnes soient de dimensions identiques (j'ai vérifié par l'onglet "Format"). Cependant, l'à où je ne pige rien c'est qu'en simple visualisation, le premier onglet rouge a une apparence plus petite alors que dans les onglets vert/bleu l'apparence est différente ! or, l'affichage est idem pour les 3 onglets (100%). Je suppose que cela n'aura aucune incidence puisque les dimensions réelles sont identiques ?

    Je vous communique ci-après le lien référant de mon travail afin que vous puissiez en juger :

    https://www.cjoint.com/?3HmmnztdxPf

    Déjà un énorme merci pour l'attention que vous voudrez bien m'accorder, je trouve votre dévouement incroyable ! franchement je vous remercie pour votre patience !!

    Amitiés
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Bonjour nanoudiskrete

    Le classeur journalier est maintenant opérationnel

    Je n'étais pas allé plus loin dans les détails pour la macro en attendant ton avis

    La procédure à suivre est la suivante :

    Ouvrir le classeur Calendrier 2014
    Faire ALT + F11 pour ouvrir l'éditeur VBA
    Dans l'arborescence cliquer sur le nom de la feuille (il n'y en a qu'une je crois)
    Copier ma macro et la coller dans la fenetre blanche à droite

    Faire la même opération avec Calendrier 2015

    Les macros sont opérationnelles et doivent fonctionner si le classeur journalier est ouvert; toute inscription de nom dans un des calendriers le reporte en bonne place dans journalier et revient se positionner sur la page de journalier

    N'hésites pas à me redemander s'il y a autre chose que tu ne comprends pas

    Cdlmnt
    0
  7. nanoudiskrette Messages postés 13 Date d'inscription   Statut Membre Dernière intervention  
     
    Coucou,
    Hé bien .... oui, me revoilà encore une fois à la charge !!!!!!! et m'en excuse vraiment.
    Voici le descriptif de mes manoeuvres, explique-moi si tu veux bien, où je plante !!

    1- j'ouvre le classeur "journalier"
    2- j'ouvre le classeur "calendrier 2014"
    3- je fais ALT+F11
    4- s'ouvre l'éditeur VBA
    5- je clique à gauche de mon écran sur feuille 1 (calendrier mensuel)
    --> mais à droite de mon écran rien ne se passe, j'ai un grand espace vide grisé.
    6- si je clique à gauche de mon écran sur VBAProjet (journalier.xlsx) et ensuite sur
    feuille 1 (Liège) --> j'ai là, effectivement, 1 fenêtre blanche à droite qui s'ouvre
    dans laquelle j'exécute un copier/coller de ta macro.

    7- ne sachant comment enregistrer, j'ai cliqué sur l'onglet "fichier" de ma barre
    d'outils + "enregistrer journalier xlsx"

    ====> une fenêtre s'ouvre me disant :

    Les fonctionnalités suivantes ne peuvent pas être enregistrées dans un classeur sans nom :
    .Projet VB
    Pour enregistrer un fichier avec ses fonctionnalités, cliquez NON puis sélectionnez un type de fichier prenant en charge les macros dans la liste.
    Pour continuer à enregistrer en tant que classeur sans macro, cliquez OUI

    que dois-je faire ???

    D'autre part, j'imagine que la même manoeuvre devra être effectuée pour chaque zone (LIEGE-VERVIERS-HANNUT) ?
    Doit-il y avoir quelque chose qui change dans une/des lignes de commandes ?

    Merci d'avance.
    0
  8. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Non il ne faut pas ouvrir le journalier tout de suite
    C'est dans chacun des classeurs Calendrier qu'il faut mettre le code
    D'abord ouvrir un
    ALT F11 comme tu as fait
    Tu cliques sur feuil1 Calendrier mensuel comme tu as fait
    A droite il y a une fenetre blanche avec en Haut General et Declarations
    Tu colles le code dans cette page blanche
    Tu fermes l'éditeur
    Tu te retrouves sur ta feuille Calendrier mensuel
    Tu vas dans le bouton rond Windows en haut à gauche
    Enregistrer sous
    En dessous de nom de fichier il y a Type et là tu choisis Classeur Excel (prenant en charge les macros)(*.xlsm)

    Puis tu recommences la même opération pour l'autre classeur Calendrier

    Ensuite tu peux ouvrir journalier et faire un essai

    Les macros dans chaque classeur Calendrier repère la page active du classeur journalier d'où tu as appelé le classeur Calendrier et inscrivent dans la colonne E de la bonne feuille le nom que tu rentres dans Calendrier

    Cdlmnt

    0
  9. nanoudiskrette Messages postés 13 Date d'inscription   Statut Membre Dernière intervention  
     
    Re coucou,

    Hum ....... j'ai probable encore compris "boeuf pour vache" !!!! je suis rouge de honte, mais cela ne fonctionne pas !

    Tu me dis :
    - ouvrir un des classeurs calendrier = ok
    - faire ALT F11 = OK
    - double cliq sur feuille calendrier mensuel = OK
    - à droite fenêtre blanche = OK
    - Coller le code dans la page = OK

    - Fermer d'éditeur = (en cliquant sur la X blanche carré rouge en haut à droite ?)

    - s'ouvre la feuille calendrier = OK

    - aller dans bouton rond Windows en haut à gauche = ???? je n'ai pas cela moi !


    ===> Si je souhaite "enregistrer sous", je dois faire <fichier / Enregistrer sous / type fichier : classeur excel prenant en charge les macros>

    - Faire idem pour autre classeur calendrier = OK
    - Ouvrir classeur journalier pour test = OK

    ======>>> CELA NE FONCTIONNE PAS !

    Qu'ai-je encore mal interprété ???? je suis vraiment une nouille je crois !!!

    Merci pour toute ton aide, vraiment !
    0
  10. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Tu as suivi la procedure correctement semble-t-il
    Tu fais bien Enregistrer sous classeur prenant en charge les macros

    Quand tu rouvres un des classeurs calendrier et que tu refais ALT F11 la macro est bien présente ?

    Ensuite qu'est ce qui en fonctionne pas ?

    Tu dois apres avoir ouvert journalier et la classeur Calendrier 2014 par exemple faire la manip que tu feras habituellement, c à d tu double cliques en B2 de journalier pour acceder à Calendrier 2014, dans ce dernier tu tapes un nom à la date de ton choix, validé par Entrée et automatiquement le nom doit se reporter dans journalier

    Si ça ne va toujours pas renvoie moi tes 2 classeurs je regarderai

    Cdlmnt
    0
  11. nanoudiskrette Messages postés 13 Date d'inscription   Statut Membre Dernière intervention  
     
    Lorsque je rouvre l'un des classeurs calendrier (xlsm) et que je fais ALT+F11, j'ai effectivement bien la macro.

    Je crois avoir compris ce qu'il se passe : j'ai remarqué que lorsque je double clique sur le raccourci figurant dans la colonne B ou D, cela ouvre effectivement le calendrier correspondant mais .... celui créé au départ, celui qui ne comporte pas la macro.
    Comment faire, devrais-je refaire un nouveau raccourci vers le fichier portant le même nom mais au format xlsm ?????

    https://www.cjoint.com/?3HmuQj1hkSX
    https://www.cjoint.com/?3HmuQSJsHzL
    https://www.cjoint.com/?3HmuRKAdCKr
    https://www.cjoint.com/?3HmuSMpsbpT
    https://www.cjoint.com/?3HmuTO6CBga

    Voilà les 5 liens.

    Merci beaucoup
    0
  12. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Oui

    C'est moi qui suis étourdi, puisque les classeurs calendriers ont été réenregistrés les liens ne peuvent plus fonctionner ! j'aurais du y penser et te le dire !

    Puisqu'il faut les modifier ne préfères tu pas faire comme je suggérais dans un précédent message : au lieux de 36 liens de faire une macro qui lorsque tu double cliques dans une des colonne B ou D se positionne sur le classeur Calendrier adéquat ( à condition qu'il soit ouvert ) ? On peut même dans ce cas supprimer les colonnes B et D, le double clic se faisant dans la cellule où tu rentres V, et on peut même se passer du double-clic, le simple fait de rentrer V renverrait sur le classeur Calendrier correspondant

    Je peux modifier journalier et y mettre la macro si tu veux

    Dans l'attente

    "L'imagination est plus importante que le savoir." A. Einstein
    0
  13. nanoudiskrette Messages postés 13 Date d'inscription   Statut Membre Dernière intervention  
     
    Ouff, Alléluia !!!! pour une fois que je comprends quelque chose !!!! la bosse que je me suis faite ce matin en nettoyant mes armoires, est sans doute une " bosselette" de l'informatique hihi, tu vas voir que dans 20 ans je saurai écrire toute seule une formule (je rigole hein !)

    Plus sérieusement, oui, ton idée m'à l'air fort sympa et sans aucun doute + simple !

    Pourrais-je éventuellement créer au bas du classeur une cellule qui comporterait le total d'enregistrement d'un trimestre ??

    Dans l'attente, excellente soirée
    Amitiés,
    Nadine
    0
  14. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Re Nadine,

    Voilà les 3 classeurs avec les macros correctes;ce sont les seuls à utiliser
    Bien réenregistrer les 3 en classeur prenant en charge les macros sous les noms journalier, calendrier_2014 et calendrier_2015 sans autre chose (tu avais enregistré par exemple Calendrier_2014_xlsm) tu ne mets pas l'extension xlsm excel le fait automatiquement

    https://www.cjoint.com/?0HmxT0jYrB7
    https://www.cjoint.com/?0HmxXW1dSOn
    https://www.cjoint.com/?0HmxYAJWj4J

    Il faut que les 2 classeurs calendriers soient ouverts quand tu ouvres journalier pour que la macro (quand tu mets V dans une colonne A ou B) active le classeur correspondant (on pourrait par macro faire ouvrir le classeur mais il faut le chemin complet que je ne connais pas et de toutes façons comme tu vas faire l'aller retour continuellement entre les classeurs il vaut mieux les ouvrir dès le départ..)

    Pour le total des enregistrements tu peux mettre en bas du classeur une cellule avec la formule = NBVAL(C3:C40) qui comptera dans la plage C3:C40 (où une plage plus longue si tu mets plus que 40) le nombre de cellules non vides, donc le nombre de noms pour une feuille et si tu veux le total des 3 feuilles tu fais additionner dans la cellule en dessous ou à côté les totaux des 3 feuilles

    Bonne suite et bon essais, n'hésites pas à me redemander si quelque chose ne va pas où s'il faut modifier un truc

    Bien cordialement

    Via55
    0
  15. nanoudiskrette Messages postés 13 Date d'inscription   Statut Membre Dernière intervention  
     
    Bonjour Via55,

    Force est de constater qu'il me faut à nouveau te solliciter !
    Voilà ce qu'il se passe après que j'ai ouvert les 2 calendriers comme indiqué par toi et que je tente de mettre un V dans la colonne A ou B du journalier :

    Une petite fenêtre s'ouvre qui me dit :

    Erreur d'exécution '9'
    l'indice n'appartient pas à la sélection

    Comme choix sélectif j'ai soit FIN ou DEBOBAGE

    Vraiment désolée de t'ennuyer, et pourtant j'ai vérifié en faisant un ALT+F11 dans les 2 calendriers, et les lignes de commande sont bien présentes !

    Merci
    Amitiés
    0
  16. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Bonjour Nadine

    Si tu as cette erreur c'est qu'il ne trouve pas le classeur calendrier
    L'es tu bien réenregistré comme je te l'ai indiqué sous le seul nom : calendrier_2014 inscrit comme cela sans rien d'autre ? car c'est ce nom qui est dans la macro de journalier

    Sinon faire ALT F11 dans journalier et modifier eventuellement les noms dans la macros

    Bien crdlmnt
    0
  17. nanoudiskrette Messages postés 13 Date d'inscription   Statut Membre Dernière intervention  
     
    Il me semble avoir fait les choses correctement ...... voici du reste un print écran du dossier dans lequel se situent les classeurs utiles :

    https://www.cjoint.com/?DHnrdwNplVc

    En réalité, pour enregistrer les classeurs que tu as gentiment réalisés, rien de bien compliqué : lorsque je clique dessus dans ton message, une fenêtre s'ouvre me demandant ce que je souhaite faire, et j'ai choisi "ENREGISTRER SOUS", c'est tout.

    Merci
    0
    1. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
       
      oui mais justement tu les as enregistré avec le prefixe donné par cjoint OHMx etc
      il faut simplement le nom !
      Dans le dossier dont tu m'as envoyé la copie ecran fais clic droit sur un fichier Renommer et tu supprimes tout ce qui est devant le nom
      Une fois renommés les 3 fichiers ça doit fonctionner

      Bien cdlmnt
      0
  18. nanoudiskrette Messages postés 13 Date d'inscription   Statut Membre Dernière intervention  
     
    Re,

    Je viens de tout recommencer de zéro.
    Lorsque j'ai fait "ENREGISTRER SOUS", j'ai corrigé le nom du fichier par défaut inscrit en "calendrier_2014" .... idem pour 2015.

    Il s'avère qu'effectivement cela fonctionne; à savoir que lorsque dans mon classeur "JOURNALIER" je fais un "V" dans la colonne A ou B, cela ouvre bien le calendrier correspondant, et je peux y annoter le nom de la personne aux jours de mon choix.

    Cependant, après avoir valider par un "ENTER", et lorsque je reviens au "JOURNALIER", le nom de cette personne ne s"est pas inscrit dans ma colonne C !

    C'est j'espère le dernier problème ..... honnêtement je suis très gênée de t'ennuyer autant !!!

    Nadine
    0
  19. nanoudiskrette Messages postés 13 Date d'inscription   Statut Membre Dernière intervention  
     
    Je viens de recevoir ta réponse à ma première intervention d'aujourd'hui. Comme tu pourras le lire dans mon second message, effectivement tu avais raison, j'ai réenregistrer en supprimant une partie du nom pour ne laisser apparaître que "calendrier_2014".

    Cependant, même si le lien entre fichiers fonctionne bien, sans vouloir être critique du tout hein, ne manquerait-il pas une ligne de commande qui impliquerait une copie du "nom" vers la colonne D ?

    Car lors de mes essais, cela ne se recopie pas.

    Merci
    0
  20. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Non tout devrait marcher

    Tes classeurs calendriers sont bien ceux avec les dernières macros ?
    (verifie les en allant dans l'éditeur VBA)

    Chez moi tout fonctionnait avant que je ne t'envoie les classeurs j'ai vérifié

    Donc soit les classeurs calendriers ne trouvent pas journalier mais tu aurais un message d'erreur comme tout à l'heure, soit la macro ne se déclenche pas mais pourquoi?

    Au pire si tu n'y arrives pas renvoie moi les 2 classeurs calendriers je verrai ce que je peux faire

    on va bien arriver à ce que ça marche quand même !!
    0
  21. nanoudiskrette Messages postés 13 Date d'inscription   Statut Membre Dernière intervention  
     
    Bonjour l'ami,

    Je suis vraiment désespérée !!!!! hélas non, cela ne fonctionne toujours pas !
    lorsque je pointe la colonne A/B, c'est extra .... cela ouvre bien le calendrier de mon choix; j'y annote le nom que je souhaite, mais ...... rien ne se passe dans la colonne C !!!
    J'ai vérifié, enfin j'espère que j'ai encore quelques neurones, et mes classeurs "calendrier" sont bien ceux de la dernière version. J'ai regardé dans les lignes de commandes, y figure bien la demande de copie vers la colonne D.

    C'est à ne rien y comprendre.
    De plus, j'ai "la pression" car je dois remettre ce travail ce soir !!!!

    Voici les classeurs "calendrier" dont je me sers (ceux que tu m'as envoyé) + à tout hasard le classeur "journalier".

    https://www.cjoint.com/?3HojZs9CJze
    https://www.cjoint.com/?3HojZ5mAFzH
    https://www.cjoint.com/?3Hoj1hi5Aq9

    Merci d'y accorder ton attention et ton savoir.
    Amitiés,
    Nadine
    0
  • 1
  • 2