| ||||||||
Astucienne | Bonjour, J'ai un fichier comportant des macros et des formules (fonctions logiques Si, entre autres) avec 8 SI imbriqués. Il est au format xlsm. Je dois l'envoyer à quelqu'un qui a encore la version 2003. Je l'enregistre sous / Type Excel 97-2003. Je conserve la même extension xlsm. Y a t-il des risques de perdre des données (SI) et/ou des macros ? Merci. A bientôt, j'espère. | |||||||
Publicité | ||||||||
| ||||||||
![]() ![]() | Bonjour,
Extension .xls ! Le vérificateur de compatibilité t'indiquera ce qui peut éventuellement être perdu dans le changement de format. Tu peux négliger les pertes mineures liées aux couleurs (fonctionnement différent à partir de 2007).
| |||||||
Astucienne | OK Ferrand, merci. Pendant que j'y suis : savez-vous comment il faut faire si on veut mettre + de 8 SI imbriqués ? Merci d'avance. | |||||||
Astucienne | Que veux-tu dire par redécouper manuellement. | |||||||
![]() ![]() | maryloo2005 a écrit : Le nombre de niveaux d'imbrication est toujours limité à 7. Il s'agit bien de niveaux d'imbrication, pas du nombre de fonctions utilisées dans une formule. Par exemple dans Quelle est la formule qui te préoccupe ? | |||||||
Astucienne | 7 ou 8 ? Prenons un exemple tout simple, une formule de ce genre : Ci dessous formule de calcul en B1 : =SI(A1=1;"un";SI(A1=2;"deux";SI(A1=3;"trois";SI(A1=4;"quatre";SI(A1=5;"cinq";SI(A1=6;"six";SI(A1=7;"sept";SI(A1=8;"huit";"erreur")))))))) J'ai 8 SI . Si je continue en écrivant après le ; du "huit" : Si(A1=9;"neuf";"erreur" et si je ferme une parenthèse supplémentaire, quand je valide par Entrée, j'obtiens le message suivant dans une fenêtre : "Impossible d'entrer la formule spécifiée car elle utilise plus de niveaux d'imbrication que ne l'autorise le format de fichier actuel" Donc, d'après moi, je ne peux mettre que 8 SI au maximum l'un après l'autre dans Excel 2010. Est-ce que c'était déjà le cas en Excel 2003 et versions précédentes ? Donc comment faire si j'ai + de huit SI à mettre ? Et si j'enregistre mon fichier à la version 97-2003, mon correspondant à qui j'envoie le fichier et qui possède une ancienne version va-t-il pouvoir utiliser 8 SI ? Est-ce que cela va fonctionner ou bloquer ? Merci. | |||||||
![]() ![]() | Anonyme a écrit :
Petit exemple : =SI(A1<5;SI(A1<4;SI(A1<3;SI(A1<2;SI(A1<1;SI(A1<0;"erreur";"zéro");"un");"deux");"trois");"quatre");SI(A1<10;SI(A1<9;SI(A1<8;SI(A1<7;SI(A1<6;"cinq";"six");"sept");"huit");"neuf");"erreur")) J'ai 11 SI, je couvre les valeurs 0 à 9 (mieux que 1 à 8), et je n'ai que 5 niveaux d'imbrication sous le premier, ce qui prmettrait de faire encore un peu mieux... Les solutions peuvent être très diverses face à cet écueil. Si tu veux des conseils efficaces, donne des formules réelles sur lesquelles tu bloques au lieu d'exemples pas forcément transposables. | |||||||
![]() | Bonjour, Classiquement on utilisait fréquemment les formules nommées qui couvrent une multitude de cas. Voir les explications dans le classeur ci-joint (non testé car je n'ai malheureusement plus 2003 ) Merci de me signaler si la démo beugue... | |||||||
Astucienne | Désolée, je ne comprends pas tout cela ! C'est trop complexe pour moi, apparemment. merci tout de même pour votre implication. | |||||||
Petit astucien | Bonjour, Une solution pour contourner la fonction Si imbriquée est d'utiliser la fonction CHOISIR. Exemple pour A1 de 1 à 10 : =SI(ESTERR(CHOISIR(A1;"un";"deux";"trois";"quatre";"cinq";"six";"sept";"huit";"neuf";"dix"))=VRAI;"erreur";CHOISIR(A1;"un";"deux";"trois";"quatre";"cinq";"six";"sept";"huit";"neuf";"dix")) La valeur de A1 peut aller de 1 à 254. Si la valeur de A1 est inférieure à 1 ou supérieure au numéro de la dernière valeur de la liste, la fonction CHOISIR renvoie la valeur d'erreur #VALEUR! La fonction ESTERR corrige cette valeur d'erreur en "erreur" Cordialement | |||||||
Astucienne | Merci, je vois que j'ai encore à apprendre dans Excel. Il faut que je revoie tout ça "à tête reposée". | |||||||
Astucien |
Les arguments sous excel 2003 ne sont pas limités à 29?
| |||||||
Petit astucien | Bonjour, Brownie0169 Je n'ai pas précisé que ma réponse était pour Excel 2007. Comme je n'ai plus Excel 2003, quelqu'un peut-il vérfier dans l'aide de la fonction CHOISIR ? Cordialement | |||||||
Astucien |
| |||||||
|
Les bons plans du moment PC Astuces | Tous les Bons Plans | ||||||||||||||||||
|