Récuperer dans une colonne valeur cellule non vide
phyjo
Messages postés
1
Date d'inscription
Statut
Membre
Dernière intervention
-
Mike-31 Messages postés 18405 Date d'inscription Statut Contributeur Dernière intervention -
Mike-31 Messages postés 18405 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous,
je vous expose mon problème:
Sur une feuille "somme" j'ai une colonne que je modifie et ou il y a des cellules vides et d'autres non. Je voudrais pouvoir récupérer les valeurs des cellules non vide et les stockers dans une autre feuille "résumé", c'est à dire que j'aimerai que les liste de chiffres soit "enregistrer" dans des colonnes côte à côte.
Ca ressemble à ça:
feuil "somme"A
B C D E F G H I J
1
3
3
4 (etc... jusqu'à J300)
feuil "résumé"
A B C
1
3
3
4
Merci d'avance
Bonne journée
je vous expose mon problème:
Sur une feuille "somme" j'ai une colonne que je modifie et ou il y a des cellules vides et d'autres non. Je voudrais pouvoir récupérer les valeurs des cellules non vide et les stockers dans une autre feuille "résumé", c'est à dire que j'aimerai que les liste de chiffres soit "enregistrer" dans des colonnes côte à côte.
Ca ressemble à ça:
feuil "somme"A
B C D E F G H I J
1
3
3
4 (etc... jusqu'à J300)
feuil "résumé"
A B C
1
3
3
4
Merci d'avance
Bonne journée
A voir également:
- Excel récupérer valeur cellule non vide
- Formate pour taxer client frigo vide ✓ - Forum Vos droits sur internet
- Récupérer au terminal de fret - Forum Consommation & Internet
- Excel cellule couleur si condition texte - Guide
- Liste déroulante excel - Guide
- Proteger cellule excel - Guide
2 réponses
Bonjour,
tu peux faire par formule, commence par nommer ta plage de données exemple de la cellule A2 à A3000 nommée List
sur ta deuxième feuille colle cette formule matricielle qu'il faudra valider après l'avoir collée en cliquant en même temps sur les 3 touches du clavier Ctrl, Shift (touche Shift est la touche majuscule) et la touche Entrée
=INDEX(List;PETITE.VALEUR(SI(List<>"";LIGNE(INDIRECT("1:"&LIGNES(List))));LIGNES($1:1)))
si tu fais bien la formule se mettra entre {}
ensuite incrémente vers le bas
Si tu as Excel 2007 ou 2010, complète la formule matricielle avec une gestion d'erreur avant de l'incrémenter vers le bas
=SIERREUR(INDEX(List;PETITE.VALEUR(SI(List<>"";LIGNE(INDIRECT("1:"&LIGNES(List))));LIGNES($1:1)));"")
tu peux faire par formule, commence par nommer ta plage de données exemple de la cellule A2 à A3000 nommée List
sur ta deuxième feuille colle cette formule matricielle qu'il faudra valider après l'avoir collée en cliquant en même temps sur les 3 touches du clavier Ctrl, Shift (touche Shift est la touche majuscule) et la touche Entrée
=INDEX(List;PETITE.VALEUR(SI(List<>"";LIGNE(INDIRECT("1:"&LIGNES(List))));LIGNES($1:1)))
si tu fais bien la formule se mettra entre {}
ensuite incrémente vers le bas
Si tu as Excel 2007 ou 2010, complète la formule matricielle avec une gestion d'erreur avant de l'incrémenter vers le bas
=SIERREUR(INDEX(List;PETITE.VALEUR(SI(List<>"";LIGNE(INDIRECT("1:"&LIGNES(List))));LIGNES($1:1)));"")
J'ai utilisé la première formule pour résoudre mon problème et ça a bien l'air de marcher.
Seulement, j'ai des difficultés pour comprendre l'intérêt et la formule avec SIERREUR.
Afrosee
dans le cas d'erreur la formule renvoi un message soit #VALEUR, #N/A etc
sur les versions antérieures à Excel 2003 il fallait tester la formule avec la syntaxe Si(ESTERREUR(la formule;ce qu'il fallait faire;la formule)
depuis la version 2007 le test est plus rapide avec SIERREUR(la formule;ce qu'il faut faire en cas d'erreur)
dans la formule tu supprimes SIERREUR( en début et ;"") à la fin et tu as la formule sans gestion d'erreur