Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

AIDE SUR MACRO

4 réponses
Avatar
Lionel M
https://www.wetransfer.com/downloads/ef1ffe69de8282982eafb1e13566de5f201601=
09104303/814e0668a2a76d62e8691da42e323e4620160109104303/17851b

Bonjour a tous et tout d'abord tous mes voeux pour 2016 ! Que cette ann=E9e=
soit lumineuse !!

Encore besoin de vous !

Sur le fichier des onglets 'mois'

une feuille CP-Mal qui va etre notre cheval de bataille

Sur cette feuille plusieurs colonnes mois, nom, cp/mal, date debut,date fin=
et un bouton pour lancer la macro

Il faudrait la macro verifie que la date fin n'est pas inferieure a la da=
te debut puis qu'elle trouve la ligne du mois du 1 au 31
qu'elle copie cette ligne dans l'onglet cp-mal puis modifie entre les dates=
donn=E9es en mettant le code design=E9 cp ou mal. petit b=E9mol important =
si entre les dates donn=E9es les cases sont vides il faut noter cp (en min=
uscules) ou mld suivant le choix et si la case n'est pas vide alors il fau=
t noter CP ou MAL... et ensuite recopier les nouvelles donn=E9es dans le mo=
is de depart...

Je compte sur votre aide pour me sortir de ce petrin !

Merci d'avance du temps pass=E9 pour m'aider

Lionel

4 réponses

Avatar
MichD
A ) Si tu publies un classeur et que tu n'entres aucune donnée même
factice, comment savoir ce que tu vas y inscrire.

Exemple :

Dans la feuille cp/mal, dans la colonne "Mois" comment entres-tu la
donnée? Par le chiffre 1 pour janvier...etc OU en inscrivant le texte
"Janvier" ou "Janv."

Dans la colonne jour début ou jour fin, est-ce que tu entres la date
complète 10/01/2016 ou simplement 10 ?

Sans ces précisions, comment faire pour répondre à ta question?

Quand le contenu d'une cellule est une date reconnu par Excel, tu n'as
qu'à comparer le contenu des cellules Range("A1") <= Range("A2") OU
Range("A1") >= Range("A2") OU Range("A1") = Range("A2")

Si dans les colonnes jour début ou jour fin, tu as saisi des dates ou
des nombres, tu peux utiliser en VBA, Application.Match( ) les
paramètres sont les mêmes que la fonction "Equiv()" dans la feuille de
calcul. (Tu ne dois pas avoir de répétition de la date ou du jour pour cela)
Exemple : Ligne = Application.Match(jour, range("A1:A25"),0) en
adaptant la valeur pour jour et la plage de cellules selon ton application.
Avatar
Lionel M
Le dimanche 10 janvier 2016 18:48:46 UTC+1, MichD a écrit :
A ) Si tu publies un classeur et que tu n'entres aucune donnée même
factice, comment savoir ce que tu vas y inscrire.

Exemple :

Dans la feuille cp/mal, dans la colonne "Mois" comment entres-tu la
donnée? Par le chiffre 1 pour janvier...etc OU en inscrivant le texte
"Janvier" ou "Janv."

Dans la colonne jour début ou jour fin, est-ce que tu entres la date
complète 10/01/2016 ou simplement 10 ?

Sans ces précisions, comment faire pour répondre à ta question?

Quand le contenu d'une cellule est une date reconnu par Excel, tu n'as
qu'à comparer le contenu des cellules Range("A1") <= Range("A2") OU
Range("A1") >= Range("A2") OU Range("A1") = Range("A2")

Si dans les colonnes jour début ou jour fin, tu as saisi des dates ou
des nombres, tu peux utiliser en VBA, Application.Match( ) les
paramètres sont les mêmes que la fonction "Equiv()" dans la feuille d e
calcul. (Tu ne dois pas avoir de répétition de la date ou du jour pou r cela)
Exemple : Ligne = Application.Match(jour, range("A1:A25"),0) en
adaptant la valeur pour jour et la plage de cellules selon ton applicatio n.



rebonjour,

Dans le fichier envoyé les cellules citées (sauf dates qui sont aliment ées en chiffres simple 12 par exemple) sont des cellules remplies par lis te validation.
je pensais qu'il faudrait utiliser les fonctions index et equiv dont je ne maitrise pas trop l'utilisation.
a partir de la copier dans l'onglet mois (janvier) correspondant les cellul es de la ligne du nom concerné dans l'onglet cp-mal en K5:AO5 puis modi fier les cellules entre les dates debut et fin et enfin copier les cellules k5:A05de cet onglet dans le mois concerné (janvier du debut de l'exemple ).
Lionel
Avatar
Lionel M
Le dimanche 10 janvier 2016 18:48:46 UTC+1, MichD a écrit :
A ) Si tu publies un classeur et que tu n'entres aucune donnée même
factice, comment savoir ce que tu vas y inscrire.

Exemple :

Dans la feuille cp/mal, dans la colonne "Mois" comment entres-tu la
donnée? Par le chiffre 1 pour janvier...etc OU en inscrivant le texte
"Janvier" ou "Janv."

Dans la colonne jour début ou jour fin, est-ce que tu entres la date
complète 10/01/2016 ou simplement 10 ?

Sans ces précisions, comment faire pour répondre à ta question?

Quand le contenu d'une cellule est une date reconnu par Excel, tu n'as
qu'à comparer le contenu des cellules Range("A1") <= Range("A2") OU
Range("A1") >= Range("A2") OU Range("A1") = Range("A2")

Si dans les colonnes jour début ou jour fin, tu as saisi des dates ou
des nombres, tu peux utiliser en VBA, Application.Match( ) les
paramètres sont les mêmes que la fonction "Equiv()" dans la feuille d e
calcul. (Tu ne dois pas avoir de répétition de la date ou du jour pou r cela)
Exemple : Ligne = Application.Match(jour, range("A1:A25"),0) en
adaptant la valeur pour jour et la plage de cellules selon ton applicatio n.



Pas de reponse ...dommage
Avatar
Lionel M
Le dimanche 10 janvier 2016 18:48:46 UTC+1, MichD a écrit :
A ) Si tu publies un classeur et que tu n'entres aucune donnée même
factice, comment savoir ce que tu vas y inscrire.

Exemple :

Dans la feuille cp/mal, dans la colonne "Mois" comment entres-tu la
donnée? Par le chiffre 1 pour janvier...etc OU en inscrivant le texte
"Janvier" ou "Janv."

Dans la colonne jour début ou jour fin, est-ce que tu entres la date
complète 10/01/2016 ou simplement 10 ?

Sans ces précisions, comment faire pour répondre à ta question?

Quand le contenu d'une cellule est une date reconnu par Excel, tu n'as
qu'à comparer le contenu des cellules Range("A1") <= Range("A2") OU
Range("A1") >= Range("A2") OU Range("A1") = Range("A2")

Si dans les colonnes jour début ou jour fin, tu as saisi des dates ou
des nombres, tu peux utiliser en VBA, Application.Match( ) les
paramètres sont les mêmes que la fonction "Equiv()" dans la feuille d e
calcul. (Tu ne dois pas avoir de répétition de la date ou du jour pou r cela)
Exemple : Ligne = Application.Match(jour, range("A1:A25"),0) en
adaptant la valeur pour jour et la plage de cellules selon ton applicatio n.



je viens de trouver une parade pour simplifier la tache

http://www.cjoint.com/c/FArlY0kSVd4

Dans l'onglet CP-Mal

la ligne 9 appelle la ligne du mois A2 concernant la personne en A3

une fois cette ligne appellée la macro fait un copier coller de cette lig ne puis c'est la que l'aide m'est indispensable modifier entre les dates st ipulées les codes notés par CP ou Mal suivant le cas designé en A4...

dans un premier temps la formule indirect ne fonctionne pas et rien ne sert d'aller plus loin si je n'arrive pas a obtenir le resultat escompté ....
Merci de l'aide !
Lionel