Copier une valeur si valeur trouvée

titiborregan5

XLDnaute Accro
Bonjour à tous,
j'ai une question toute bête mais pour laquelle je n'ai pas trouvé la solution sur le forum :s

J'ai une référence en A3 : Février on va dire
Une valeur qui lui correspond en B3: 20 par exemple

Dans G3:G15 j'ai les mois : Janvier - Février - Mars - etc...

je souhaiterai que si la macro trouve A3 dans G3:G15, il me copie la valeur dans la colonne H (décalage à droite de 1) trouvée en B3.

Merci de vos lumières parce que là je bloque sur qqch de tout simple!!!


Bonne journée

Thibault
 

Catrice

XLDnaute Barbatruc
Re : Copier une valeur si valeur trouvée

Bonsoir,

Je pense tout bien comprendre (les congés, les roulements etc.) mais j'ai du mal à comprendre comment tu remplis ton planning.
A chaque fois tu mets les noms à la main ?
Enregistres-tu l'historique des N semaines quelque part ?
Qui remplce la personne en vacances ?

Je propose la version ci-jointe.
On change la semaine dans la cellule H7 et les données sont récupérées dans l'onglet base.
Semaine 50 Jean est en vacances et seamine 51, il reprend sa place.
 

justine62000

XLDnaute Occasionnel
Re : Copier une valeur si valeur trouvée

Bonsoir,

Je pense tout bien comprendre (les congés, les roulements etc.) mais j'ai du mal à comprendre comment tu remplis ton planning.
A chaque fois tu mets les noms à la main ?
Enregistres-tu l'historique des N semaines quelque part ?
Qui remplce la personne en vacances ?

Je propose la version ci-jointe.
On change la semaine dans la cellule H7 et les données sont récupérées dans l'onglet base.
Semaine 50 Jean est en vacances et seamine 51, il reprend sa place.
bonjour catrice
pour mettre les noms sur le planning une macro me fait changer automatiquement le nom des persones elle descende tous d'une case a chaque semaine pour les personel 1 a8 ensemble et 9 et 10ensemble
ou o
chaque planning est sauvegarder dans un dossier nommer archive planning sur le disque local c avec comme nom numero de semaine et 1er jour de la semaine soit semaine 47 du lundi 22/11/2010

pour les personnes en vacance
soit pour le moment on mettra manuellement le nom de la personne qui remplace
soit tu peux me faire une macro ou fonction qui va prendre le nom remplacement 1 de la liste rest de la feuille mise a jour planning colone masquée "L" si il est disponible ou remplacement2 ou remplacement 3

pour ta solution je ne vois pas ce que tu veux dire l'as tu essayée tu n'a pas joint le fichier

pour plus de renseignemenst on peux comuniqué par msn ou je peut t'envoyer le fichier complet tu comprendrais mieux
mais tu ne prend pas les mp

encore merci pour ton aide

justine
 

Pièces jointes

  • planning test.zip
    32.5 KB · Affichages: 47
  • planning test.zip
    32.5 KB · Affichages: 49
  • planning test.zip
    32.5 KB · Affichages: 50

Catrice

XLDnaute Barbatruc
Re : Copier une valeur si valeur trouvée

Bonjour,

La solution que je propose n'est pas "LA" solution mais c'est une autre approche.
Les informations sont stockées dans l'onglet "base" et en selectionnant la semaine de son choix apparait le planning correspondant.

Je crois comprendre que tu créés un planning par semaine et que tu l'archives dans ce format. Ca génère une grosse quantité de fichiers lourds (mise en forme) et pénalise la recherche (il faut ouvrir les fichier 1 à 1).

Dans la solution que je propose, on a une "base de données" qui stocke tous les plannings et un "masque" qui affiche le contenu "habillé".
=> Maximum 2 fichiers (taille : volume / qté reduite)
=> Archivage rapide
=> Recherche rapide (on peut par exemple voir rapidement le nb de semaine de présence de quelqu'un sur une période donnée, TCD)
 

justine62000

XLDnaute Occasionnel
Re : Copier une valeur si valeur trouvée

bonjour catrice
ta solution serait tres interressante mais je debute en macro et fonction
je ne pense pas avoir le niveau pour faire ce que tu dis
disons pour le moment
ca te prendrais beaucoup de temps pour toi
en effet moi en archive
1 fichier par semaine
soit 52 par an

justinne
 

justine62000

XLDnaute Occasionnel
Re : Copier une valeur si valeur trouvée

Bonjour,

La solution que je propose n'est pas "LA" solution mais c'est une autre approche.
Les informations sont stockées dans l'onglet "base" et en selectionnant la semaine de son choix apparait le planning correspondant.

Je crois comprendre que tu créés un planning par semaine et que tu l'archives dans ce format. Ca génère une grosse quantité de fichiers lourds (mise en forme) et pénalise la recherche (il faut ouvrir les fichier 1 à 1).

Dans la solution que je propose, on a une "base de données" qui stocke tous les plannings et un "masque" qui affiche le contenu "habillé".
=> Maximum 2 fichiers (taille : volume / qté reduite)
=> Archivage rapide
=> Recherche rapide (on peut par exemple voir rapidement le nb de semaine de présence de quelqu'un sur une période donnée, TCD)


as tu le fichié modifié
justine
 

Catrice

XLDnaute Barbatruc
Re : Copier une valeur si valeur trouvée

Re,

Autant pour moi, le fichier n'a pas du passer.
voir ci-joint.

Tu modifie H17 est le planning se met à jour.
Dans base, tu mets (c'est automatisable) les infos concernant les personnels et leurs remplaçants.
 

Pièces jointes

  • planning test.zip
    21.2 KB · Affichages: 53
  • planning test.zip
    21.2 KB · Affichages: 54
  • planning test.zip
    21.2 KB · Affichages: 56

justine62000

XLDnaute Occasionnel
Re : Copier une valeur si valeur trouvée

Re,

Autant pour moi, le fichier n'a pas du passer.
voir ci-joint.

Tu modifie H17 est le planning se met à jour.
Dans base, tu mets (c'est automatisable) les infos concernant les personnels et leurs remplaçants.

catrice ton fichier a l'ai tres bien mais comment ajouter d'autre information
si je rajoute semaine 1 par exemple je ne retrouve pas semaine dans la feuille mise a jour planning
justine
 

Catrice

XLDnaute Barbatruc
Re : Copier une valeur si valeur trouvée

Bonjour,

Soit tu fais évoluer les formules dans l'onglet en lui faisant intégrer les nouvelles lignes de base.
Soit on peut utiliser une versio nplus élaborée (voir fichier joint) où des noms dynamiques permettent de prendre en compte des nouvelles données.
CTRL + F3 pour voir ces noms => base, MaCol, Maligne
 

Pièces jointes

  • planning test.zip
    21.9 KB · Affichages: 43
  • planning test.zip
    21.9 KB · Affichages: 45
  • planning test.zip
    21.9 KB · Affichages: 45

justine62000

XLDnaute Occasionnel
Re : Copier une valeur si valeur trouvée

bonjour catrice ton fichier fonctionne tres bien
par contre je n'arrive pas a l'adaptésur mon fichier d'origine
quand je deplace ou copie les feuilles mise a jour et base je n'ai pas acce a la validationde donnée en h7 et les formule ne s'applique pas
as tu une adress email que je puisse t'envoyer le fichier complet
ou alors comment faire

il faudrait peut etre que CTRL + F3 pour voir ces noms => base, MaCol, Maligne
s'enregistre dans mon nouveau classeur


merci justine
 
Dernière édition:

Catrice

XLDnaute Barbatruc
Re : Copier une valeur si valeur trouvée

Bonjour Justine,

Je ne suis pas tres fana des mp et mail perso qui s'éloignent de l'objectif du Forum.
La solution que je propose est sans macro et relativement simple dans le principe.
Seules quelques fomules peuvent paraitre un peu complexes mais sensiblement identiques. Il suffit de s'en approprier le principe.
Je vais donc tenter d'en expliquer la portabilité (par rapport au fichier précédement posté) :

Le principe, une base (feuille "Base") recense les informations pour l'année du planning souhaité et un tableau (feuille "mise a jour planning") affiche les informations en fontion de la semaine choisie.

Dans la feuille "mise a jour planning" la cellule H1 integre simplement une liste de 1 à 52 située dans l'onglet "liste du personel".
L'astuce, la zone N1:N52 est nommée "Semaines" afin de pouvoir etre définie dans la cellule H1 par Données/Validation. (on ne peut pas faire une liste de validation sur une autre feuille sans faire cette manipulation).

!Information : il y a un onglet "base" et un nom défini "base" à ne pas confondre !

Dans la feuille "Base" 3 noms dynamiques ont été définis pour une utilisation plus facile et dynamque dans les formules.
Les noms sont :
base => DECALER(base!$A$1;0;0;NBVAL(base!$A:$A);NBVAL(base!$1:$1))
MaCol => DECALER(base!$A$1;0;0;NBVAL(base!$A:$A))
MaLig => DECALER(base!$A$1;0;0;;NBVAL(base!$1:$1))

DECALER(REF;nbligdécalage;nbcoldécalage;hauteur;largeur)
Par exemple pour "base" avec la fontion DECALER, on définit une zone qui se decale par rapport à la cellule base!$A$1 de 0 ligne, 0 colonne et qui prend NBVAL(base!$A:$A) de hauteur et NBVAL(base!$1:$1) de largeur.
Dans l'exemple joint base correspond à A1:I9. Pour le verifier appuyer sur F5 puis taper "base" puis OK.
Le principe est le meme pour MaCol et MaLig sauf qu'on ne prend qu'une ligne et une colonne.
MaCol => A1:A9
MaLig => A1:I1

La formule :
=SI(ESTNA(EQUIV($H$7;MaCol;0));"Planning non renseigné";INDEX(base;EQUIV($H$7;MaCol;0);EQUIV(B20;MaLigne;0)))

EQUIV($H$7;MaCol;0) cherche le N° de semaine dans A1:A9 de la base (le 0 cherche la valeur exacte. cf. aide Excel)
Par exemple si H1=48 => la fonction renvoie 5. La semaine 48 est à la 5eme ligne de la base.

ESTNA(EQUIV($H$7;MaCol;0)) si EQUIV ne trouve pas la semaine (par ex : semaine 2 dans le fichier exemple). EQUIV renvoie #NA. on teste l'erreur si il y a erreur, on affiche "Planning non renseigné"

INDEX(base;EQUIV($H$7;MaCol;0);EQUIV(B20;MaLigne;0))
INDEX(base;Lig;Col) => renvoi un element dans un tableau à 2 dimensions. On renseigne les coordonnées Lig et Col de la zone (ici base)
On a vu que EQUIV($H$7;MaCol;0) renvoyait le N° de ligne.
De meme EQUIV(B20;MaLigne;0) cherche Personnel dans la ligne 1 de la base.

!Information : $H$7 est une reference absolue. On fait en permanence référence à la cellule H7. En recopiant la formule vers le bas, $H$7 ne change pas.
!Information : B20 est une référence relative. On fait référence aux cellules situées à 8 cellules à gauche de la cellule contenant la formule. B20 va changer en recopiant vers le bas et va devenir B21, B22 etc ...

Finalement, on créé un formulaire unique formaté, on renseigne une base simplifiée sur laquelle on peut facilement faire des recherches et modifications et on affiche le planning en choisissant une semaine.
Si on rajoute des données dans l'onglet base, elles sont automatiquement prises en compte.
 
Dernière édition:

justine62000

XLDnaute Occasionnel
Re : Copier une valeur si valeur trouvée

bonjour catrice
en fait dans le fichier que tu m'a envoyé il faut faire un copier coller de tous les noms "gestion des noms" dans mon nouveau planning et ensuite copier feuille base et mise a jour planning
est ce ca
justine
(merci pour tes explications je vais relire tous ca )
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 165
Messages
2 085 882
Membres
103 011
dernier inscrit
rine