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
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
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
---------------------------------------------------------------
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
---------------------------------------------------------------
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" 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
---------------------------------------------------------------
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
---------------------------------------------------------------
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
---------------------------------------------------------------
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
---------------------------------------------------------------
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
---------------------------------------------------------------
essaie ceci
=INDEX(INDIRECT($A4&"!$B6:$AF46");(EQUIV($A$2;nom;0)-1)*5+1;COLONNE()-1)
h2so4
Lionel expressed precisely :
--
h2so4
ca PAN
pique DORA
.
"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 :
--
h2so4
ca PAN
pique DORA
.