Fonction indirecte hasardeuse

Le
Lionel
Bonjour


http://www.sendbox.fr/pro/files/3/fhts4joczzgbng/exemple.xls


dans ce fichier il y a un onglet "recapindiv" et en A2 une liste deroulante

avec nom1, ma formule foctionne et si je selectionne nom2 plus rien ne
fonctionne

ou est l'erreur?

Merci de votre aide

Lionel
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
MichD
Le #25268822
Bonjour,

Débutons par ceci :

Dans cette macro :
'---------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect([A2], Target) Is Nothing Then

end sub
'---------------------------------

Cette ligne de code est problématique :
Sheets("ParamètresCouleurs").Range("MesCouleurs")(p).Copy

Le nom de l'onglet de la feuille est "Paramètres" et non
"ParamètresCouleurs"

Le nom "MesCouleurs" représente cette plage de données :
=JANVIER13!$A$5:$Q$5
si tu veux écrire dans le module de la feuille "recapindiv" la ligne de
code,
tu devrais utiliser ceci :

Sheets("Janvier13").Range("MesCouleurs")(p).Copy

Mais pour savoir ce qui ne fonctionne pas, il faudrait savoir ce que
tu veux réussir à faire!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Si tu veux publier un fichier, utilise Cjoint.com



MichD
---------------------------------------------------------------
Lionel
Le #25268832
Resalut

l'onglet "RecapIndiv" est la base de mon probleme
la fonction indirect des cellules B4 AF15 fonctionne avec nom01 en A2
(liste deroulante)
c'est a dire que le tableau rappelle bien les cellules de Janvier
Fevrier..... B6:AF6
et d'ailleurs
je crois que le probleme est le 6 de B à AF car pour nom02 il faudrait que
le 6 deviennent 11...
dans =INDEX(INDIRECT($A4&"!$B6:$AF6");EQUIV($A$2;nom;0);COLONNE()-1)

cette fonction est riche mais tres complexe pour moi...

Merci pour l'aide
Lionel

"MichD" a écrit dans le message de groupe de discussion :
khcse4$nqi$

Bonjour,

Débutons par ceci :

Dans cette macro :
'---------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect([A2], Target) Is Nothing Then

end sub
'---------------------------------

Cette ligne de code est problématique :
Sheets("ParamètresCouleurs").Range("MesCouleurs")(p).Copy

Le nom de l'onglet de la feuille est "Paramètres" et non
"ParamètresCouleurs"

Le nom "MesCouleurs" représente cette plage de données :
=JANVIER13!$A$5:$Q$5
si tu veux écrire dans le module de la feuille "recapindiv" la ligne de
code,
tu devrais utiliser ceci :

Sheets("Janvier13").Range("MesCouleurs")(p).Copy

Mais pour savoir ce qui ne fonctionne pas, il faudrait savoir ce que
tu veux réussir à faire!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Si tu veux publier un fichier, utilise Cjoint.com



MichD
---------------------------------------------------------------
MichD
Le #25268972
Explique pourquoi ta macro événementielle se plante
lorsque l'on change la valeur de la liste de validation
en A2 de l'onglet "RecapIndiv"

Je n'ai pas regardé les formules, ça plante avant que la
macro finisse son travail.

MichD
---------------------------------------------------------------
Lionel
Le #25268962
Je ne vois pas de quelle macro tu parles....

"MichD" a écrit dans le message de groupe de discussion :
khd1om$8m4$

Explique pourquoi ta macro événementielle se plante
lorsque l'on change la valeur de la liste de validation
en A2 de l'onglet "RecapIndiv"

Je n'ai pas regardé les formules, ça plante avant que la
macro finisse son travail.

MichD
---------------------------------------------------------------
MichD
Le #25269112
Fais un clic droit sur l'onglet "RecapIndiv" et tu pourras
voir la macro suivante.

Attention, cette macro désactive le mode de calcul automatique
lorsque la macro plante. En conséquence, les formules ne se
mettent plus à jour!

'---------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect([A2], Target) Is Nothing Then
Application.Calculation = xlCalculationManual

'Le reste du code

End Sub
'---------------------------

MichD
---------------------------------------------------------------
MichD
Le #25269132
En passant, dans ta formule le nom défini "NOM"
fait référence à une plage de cellule de la feuille "CPT AN"
Si tu affiches cette feuille, tu as plein de cellules qui
affichent #Ref! Tu étais au courant?

Quelle devrait être la formule dans cette plage de cellules?


MichD
---------------------------------------------------------------
Lionel
Le #25270442
Ma question etait plus simple que ca !! lol

qu'est ce qui fait que pour nom01 dans recapindiv la fonction
indirect fonctionne et pourquoi si je change le nom ca ne fonctionne pas...
la fonction indirect elle n'appelle pas de macro alors pourquoi chercher
dedans...?




"MichD" a écrit dans le message de groupe de discussion :
khd9s5$1qd$

En passant, dans ta formule le nom défini "NOM"
fait référence à une plage de cellule de la feuille "CPT AN"
Si tu affiches cette feuille, tu as plein de cellules qui
affichent #Ref! Tu étais au courant?

Quelle devrait être la formule dans cette plage de cellules?


MichD
---------------------------------------------------------------
Lionel
Le #25272612
http://cjoint.com/?3CkoOWKjea8

je crois qu'il y a eu meprise sur ma question

revoila un fichier vierge

ce que je recherche c'est que lorsque la cellule a2 de "RecapIndiv" indique
un nom tous les planning des mois se ré affichent dans les lignes pour
nom01 en janvier13 = Janvier13!B6:AF6

j'avais essayé une formule
=INDEX(INDIRECT($A4&"!$B6:$AF6");EQUIV($A$2;nom;0);COLONNE()-1) qui
fonctionnait pour nom01 mais b6:af6 est figé donc resultat faux pour nom02
je seche pour modifier...

Merci de l'aide ...

Lionel

"Lionel" a écrit dans le message de groupe de discussion :
513b3090$0$1219$

Ma question etait plus simple que ca !! lol

qu'est ce qui fait que pour nom01 dans recapindiv la fonction
indirect fonctionne et pourquoi si je change le nom ca ne fonctionne pas...
la fonction indirect elle n'appelle pas de macro alors pourquoi chercher
dedans...?




"MichD" a écrit dans le message de groupe de discussion :
khd9s5$1qd$

En passant, dans ta formule le nom défini "NOM"
fait référence à une plage de cellule de la feuille "CPT AN"
Si tu affiches cette feuille, tu as plein de cellules qui
affichent #Ref! Tu étais au courant?

Quelle devrait être la formule dans cette plage de cellules?


MichD
---------------------------------------------------------------
h2so4
Le #25272792
bonsoir,

essaie ceci

=INDEX(INDIRECT($A4&"!$B6:$AF46");(EQUIV($A$2;nom;0)-1)*5+1;COLONNE()-1)

h2so4

Lionel expressed precisely :
http://cjoint.com/?3CkoOWKjea8

je crois qu'il y a eu meprise sur ma question

revoila un fichier vierge

ce que je recherche c'est que lorsque la cellule a2 de "RecapIndiv" indique
un nom tous les planning des mois se ré affichent dans les lignes pour nom01
en janvier13 = Janvier13!B6:AF6

j'avais essayé une formule
=INDEX(INDIRECT($A4&"!$B6:$AF6");EQUIV($A$2;nom;0);COLONNE()-1) qui
fonctionnait pour nom01 mais b6:af6 est figé donc resultat faux pour nom02
je seche pour modifier...

Merci de l'aide ...

Lionel

"Lionel" a écrit dans le message de groupe de discussion :
513b3090$0$1219$

Ma question etait plus simple que ca !! lol

qu'est ce qui fait que pour nom01 dans recapindiv la fonction
indirect fonctionne et pourquoi si je change le nom ca ne fonctionne pas...
la fonction indirect elle n'appelle pas de macro alors pourquoi chercher
dedans...?




"MichD" a écrit dans le message de groupe de discussion :
khd9s5$1qd$

En passant, dans ta formule le nom défini "NOM"
fait référence à une plage de cellule de la feuille "CPT AN"
Si tu affiches cette feuille, tu as plein de cellules qui
affichent #Ref! Tu étais au courant?

Quelle devrait être la formule dans cette plage de cellules?


MichD
---------------------------------------------------------------



--
h2so4
ca PAN
pique DORA
.
Lionel
Le #25272902
C'est trop cool ! ca fonctionne ... Merci


"h2so4" a écrit dans le message de groupe de discussion :
khifol$24k$

bonsoir,

essaie ceci

=INDEX(INDIRECT($A4&"!$B6:$AF46");(EQUIV($A$2;nom;0)-1)*5+1;COLONNE()-1)

h2so4

Lionel expressed precisely :
http://cjoint.com/?3CkoOWKjea8

je crois qu'il y a eu meprise sur ma question

revoila un fichier vierge

ce que je recherche c'est que lorsque la cellule a2 de "RecapIndiv"
indique un nom tous les planning des mois se ré affichent dans les lignes
pour nom01 en janvier13 = Janvier13!B6:AF6

j'avais essayé une formule
=INDEX(INDIRECT($A4&"!$B6:$AF6");EQUIV($A$2;nom;0);COLONNE()-1) qui
fonctionnait pour nom01 mais b6:af6 est figé donc resultat faux pour nom02
je seche pour modifier...

Merci de l'aide ...

Lionel

"Lionel" a écrit dans le message de groupe de discussion :
513b3090$0$1219$

Ma question etait plus simple que ca !! lol

qu'est ce qui fait que pour nom01 dans recapindiv la fonction
indirect fonctionne et pourquoi si je change le nom ca ne fonctionne
pas...
la fonction indirect elle n'appelle pas de macro alors pourquoi chercher
dedans...?




"MichD" a écrit dans le message de groupe de discussion :
khd9s5$1qd$

En passant, dans ta formule le nom défini "NOM"
fait référence à une plage de cellule de la feuille "CPT AN"
Si tu affiches cette feuille, tu as plein de cellules qui
affichent #Ref! Tu étais au courant?

Quelle devrait être la formule dans cette plage de cellules?


MichD
---------------------------------------------------------------



--
h2so4
ca PAN
pique DORA
.
Publicité
Poster une réponse
Anonyme