Passage d'une cellule à une autre.urgent
Résolu
eslias
Messages postés
14
Date d'inscription
Statut
Membre
Dernière intervention
-
eslias -
eslias -
Bonjour équipe CCM,
Mon problème réside au niveau du découpage des données contenues dans une cellule... dans ma feuille de calcul source le contenu des cellules est un ensemble de données que je veux découper pour les afficher dans ma feuille de destination. Par exemple j'ai dans la cellule de la feuille source le nom et le prénom d'un étudiant et dans ma nouvelle feuille j'ai une colonne pour renseigner uniquement sur les noms et une autre colonne pour renseigner sur les prénoms alors je veux couper uniquement le nom dans la cellule source pour le ranger dans ma colonne "nom" et couper le prénom pour le ranger dans ma colonne "prénom".
Fichier source
Douala_Ndogpassi2-MX PK8-Essiac_LIT_443 PK8-Essiac-HR_6
Dans ma feuille destination je souhaite ranger Douala_Ndogpassi2-MX dans une cellule appartenant à la colonne « noms BSC » et PK8-Essiac_LIT_443 dans une cellule appartenant à la colonne « noms BTS »et PK8-Essia-HR_6 dans une cellule appartenant à la colonne « noms cellule »
Je veux que cela se fasse automatiquement à l'aide d'une formule et SVP que le découpage soit exacte.
Mon problème réside au niveau du découpage des données contenues dans une cellule... dans ma feuille de calcul source le contenu des cellules est un ensemble de données que je veux découper pour les afficher dans ma feuille de destination. Par exemple j'ai dans la cellule de la feuille source le nom et le prénom d'un étudiant et dans ma nouvelle feuille j'ai une colonne pour renseigner uniquement sur les noms et une autre colonne pour renseigner sur les prénoms alors je veux couper uniquement le nom dans la cellule source pour le ranger dans ma colonne "nom" et couper le prénom pour le ranger dans ma colonne "prénom".
Fichier source
Douala_Ndogpassi2-MX PK8-Essiac_LIT_443 PK8-Essiac-HR_6
Dans ma feuille destination je souhaite ranger Douala_Ndogpassi2-MX dans une cellule appartenant à la colonne « noms BSC » et PK8-Essiac_LIT_443 dans une cellule appartenant à la colonne « noms BTS »et PK8-Essia-HR_6 dans une cellule appartenant à la colonne « noms cellule »
Je veux que cela se fasse automatiquement à l'aide d'une formule et SVP que le découpage soit exacte.
A voir également:
- Passage d'une cellule à une autre.urgent
- Aller à la ligne dans une cellule excel - Guide
- Bloquer une cellule excel - Guide
- Passage qwerty azerty - Guide
- Excel cellule couleur si condition texte - Guide
- Diviser une cellule excel en deux horizontalement - Forum Excel
1 réponse
Bonjour
pour pouvoir ressortir des textes via des formules il faut des argument et vous n'en donnez pas beaucoup, pour ne pas dire aucun
quels sont ils?
à tout hasard , en attendant, pour découper selon les deux blancs qui séparent apparemment vos textes:
pour un texte en A1, à adapter
1° partie en B1:
=STXT(A1;1;TROUVE(" ";A1;1)-1)
3° partie en C1:
=STXT(A1;TROUVE("/";SUBSTITUE(A1;" ";"/";2);1)+1;50)
2° partie en C1 (qui dépend des deux autres):
=STXT(A1;TROUVE(" ";A1;1)+1;NBCAR(A1)-NBCAR(B1)-NBCAR(D1)-2)
Mais si vos données sont statiques et à transformer en une seule fois, vous pouvez utiliser pour le même résultat la fonction Données/convertir/ avec le blanc comme séparateur
crdlmnt
Errare humanum est, perseverare diabolicum
pour pouvoir ressortir des textes via des formules il faut des argument et vous n'en donnez pas beaucoup, pour ne pas dire aucun
quels sont ils?
à tout hasard , en attendant, pour découper selon les deux blancs qui séparent apparemment vos textes:
pour un texte en A1, à adapter
1° partie en B1:
=STXT(A1;1;TROUVE(" ";A1;1)-1)
3° partie en C1:
=STXT(A1;TROUVE("/";SUBSTITUE(A1;" ";"/";2);1)+1;50)
2° partie en C1 (qui dépend des deux autres):
=STXT(A1;TROUVE(" ";A1;1)+1;NBCAR(A1)-NBCAR(B1)-NBCAR(D1)-2)
Mais si vos données sont statiques et à transformer en une seule fois, vous pouvez utiliser pour le même résultat la fonction Données/convertir/ avec le blanc comme séparateur
crdlmnt
Errare humanum est, perseverare diabolicum
A votre service si d'autres besoins.
Crdlmnt
=STXT(A1;1;TROUVE(" ";A1;1)-1) ?
=STXT(A1;TROUVE("/";SUBSTITUE(A1;" ";"/";2);1)+1;50)?
=STXT(A1;TROUVE(" ";A1;1)+1;NBCAR(A1)-NBCAR(B1)-NBCAR(D1)-2) ?
Principe de base:
STXT
=STXT(Texte initial; N° de départ;Nombre de caractères)
Renvoie la partie du texte initial qui commence au N° de départ et qui contient le nombre de caractère indiqués
Fonctions accessoires:
TROUVE
=TROUVE(Texte cherché;texte;N° de départ)
SUBSTITUE
SUBSTITUE(Texte;ancien texte; nouveau texte; rang)
Remplace l'ancien texte par le nouveau au rang indiqué
(par exemple dans notre cas_voir plus loin_ le 2° blanc par un slash)
NBCAR
=NBCAR(cell)
compte le nombre de caractère d'une cellule
Donc dans la 1° formule
=STXT(A1;1;TROUVE(" ";A1;1)-1)
STXT(A1 demande d'aller chercher dans A1
;1 demande de démarrer l'édition au début du texte
TROUVE(A1;" ";1) définit la position du premier blanc dans le texte en A1 et donc la longueur du texte à éditer
Le -1 assure l'élimination du blanc en fin de texte
Dans la 3° formule (qui va contribuer ensuite à la seconde)
=STXT(A1;TROUVE("/";SUBSTITUE(A1;" ";"/";2);1)+1;50)?
SUBSTITUE(A1;" ";"/";2) transforme le deuxième blanc du texte en slash de façon à permettre à TROUVE de détecter la position sans confondre avec le premier
TROUVE donne donc la position de ce slash dans le texte en A1 et donc le départ pour STXT (avec +1 toujours pour éliminer le blanc)
50 est un nombre arbitraire qui doit au minimum couvrir le nombre de caractères à éditer dans la partie de fin du texte. STXT s'arrêtera dans tous les cas au nombre de caractères utiles
Dans la 2° formule
=STXT(A1;TROUVE(" ";A1;1)+1;NBCAR(A1)-NBCAR(B1)-NBCAR(D1)-2)
TROUVE va chercher la position du premier blanc et, en rajoutant 1 donne donc le le départ du texte à éditer
NBCAR(A1)-NBCAR(B1)-NBCAR(D1)-2 compte le nombre de carcatères de A1, en déduit ceux utilisés en 1° formule, en 2° formule et 2 pour les blanc déjà éliminés
Et donc donne le nombre de caractères restant à éditer
Wouff... peux pas faire mieux!!
....mais Si vous comprenez avec ça, vous ne devez pas être mauvaise
Un petit conseil en complément: testez pour mieux comprendre les formules en décomposant et voyez les résultats à chaque fois:
=STXT(A1;5;10) par exemple
=TROUVE(A1;" ";1)
=SUBSTITUE(A1;" ";"/";2)
=NBCAR(A1)
Bon courage!!! Bien cordialement