> Tous les forums > Forum Bureautique
 Fonction Excel => résolu
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
tacoum
  Posté le 18/01/2004 @ 20:31 
Aller en bas de la page 
Petit astucien
Bonjour, Je suis à la recherche d'une fonction sous Excel qui me permettrait d'extraire d'une cellule un certains nombre de carractères. à partir d'un classement (chaque ligne dans le tableau que j'importe est contenu dans une seule cellule) je voudrais coller a/ dans une deuxième cellule uniquement le nom du participant b/ dans une troisième uniquement le classement (en sachant qu'avec plus de 200 participants, ce nombre comporte 1,2 ou 3 chifres) le tableau tel que je l'importe : > 1 Robert (16/01/2004 16:09:21) > 2 Simon (16/01/2004 16:10:02) > 3 Gilles (16/01/2004 16:38:39) > 4 Jacques (16/01/2004 16:44:46) le tableau recherché après extraction des données : cellule A_____________________________cellule B____cellule C > 1 Robert (16/01/2004 16:09:21)_______Robert_________1 > 12 Simon (16/01/2004 16:10:02)______Simon_________12 > 47 Gilles (16/01/2004 16:38:39)_______Gilles__________47 > 152 Jacques (16/01/2004 16:44:46)___Jacques________152 j'ai bien essayé de chercher, mais avec les centaines (milliers ?) de fonctions proposées par excel, je suis resté bredouille ! merci.

Modifié par tacoum le 20/01/2004 16:04
Publicité
Ludo1128
 Posté le 18/01/2004 à 21:26 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien
Salut j'ai trouvÚ ta solution. Avant toute chose, fais une sauvegarde de ton fichier, car si y'a une mauvaise manip tu perdrÚ tous. Cette manipulation ne doit pas etre possible avec une formule. Mais ce qui suis devrait marchÚ. Voici les Útapes : 1) Tu ouvre ton fichier Excel, et tu sÚlectionne toutes ta colonne A (donc ton texte) et tu fais copier. 2) Tu ouvre le Bloc Notes. 3) Et la tu fais Coller. 4) Tu enregeristre ton fichier. 5) Tu rouvre Excel, et tu fais Ouvrir et la tu sÚlectionne ton fichier *.txt (il faut changer l'extansion dans excel) 6) La u arrive dans un assistant. VÚrifie que Largueur Fixe est cochÚ, si oui tu fais suivant. 7) La tu va voir ton texte avec des flÞches qui le sÚpare, tu place les flÚches comme tu veux afin de faire les sÚparations de ton choix. 8) La tu fais Terminer. Et voila ta tes colonnes qui sont sÚparÚs. Par contre ton texte d'origine ne sera pas prÚsent, mais tu peut tres bien insÚrer une colonne et faire un copier. Voila dis moi si ca marche. @+
tacoum
 Posté le 18/01/2004 à 23:03 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien
Merci pour ta rÚponse Ludo cela ne fonctionne pas pour mon classement ! ex : > 1 Robert (16/01/2004 16:09:21) > 12 Simon (16/01/2004 16:10:02) > 47 Gilles (16/01/2004 16:38:39) > 152 Jacques (16/01/2004 16:44:46) avec la largeur fixe, si je prend juste avant le "R" de robert, j'aurais pour rÚsultat 15__2Jacques au lieu de 152 Jacques pour le 152Þ. de plus, les dates et heures d'arrivÚe restent accolÚes aux prÚnoms. j'ai donc essayÚ avec la largeur variable : lÓ, þa fonctionne pour le classement (suffit de dÚterminer l'emplacement de la sÚparation Ó l'endroit de l'espace), mais les prÚnoms composÚs se retrouvent dans 2 colonnes ! AAAaaargh ! pas simple mon histoire !
sourisdeservice
 Posté le 19/01/2004 à 01:59 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Grande Maîtresse astucienne

ex pour 12 Robert dans la cellule A1 tu tapes en A2 =GAUCHE(A1;3) cela extrait Ó partir de gauche les 3 premiers caractÞres de la chaine soit 12 Ó partir de droite =DROITE(A1;6) soit ROBERT Tu dois chercher dans les fonctions texte Je sais qu'on peut faire des test sur la position de l'espace pour savoir si il faut enlever les 1 ou 2 ou 3 premiers mais je n'ai plus d'exemple sous la main Personellement, je mettrai ma liste dans Word je transforme en tableau en donnant comme rÞgle de sÚparation l'espace et je n'ai plus qu'Ó recopier mon tableau dans excel tout dÚpend de la longueur de ta liste

Modifié par sourisdeservice le 19/01/2004 02:01
ximi
 Posté le 19/01/2004 à 03:52 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien
Tacoum bonsoir, Pour rÚsoudre ta mise en forme tu dois passer par une cellule intermÚdiaire de calcul. Ton tableau: A1 = 1 Robert (16/01/2004 16:09:10) => Valeur initiale B1 tu veux: 1 C1 tu veux: Robert D1 tu veux: (16/01/2004 16:09:10) Nous allons mettre notre cellule de calcul en F1 ou Ó tout autre endroit. Nous avons alors: F1 =Gauche(A1;Cherche("(";A1;1)-1) ==> 1 Robert B1 =Gauche(A1;Cherche(" ";A1;1)) ==> 1 C1 =Droite(F1;NBCAR(F1)-Cherche(" ";F1;1)+1)==> Robert D1 =Droite(A1;NBCAR(A1)-Cherche("(";A1;1)+1)==> (16/01/2004 16:09:10) Tu recopies l'ensemble de ces 4 cellules sur l'ensemble de ton tableau et le tour est jouÚ. Pour Úviter qu'apparaisse #Valeur dans les cellules Bx, Cx, Dx, Fx si Ax est vide il faut faire un test sur le contenu de la cellule Ax. Donc en: F1 =Si(Estnontexte(A1);"";Gauche(A1;Cherche("(";A1;1)-1)) B1 =Si(Estnontexte(A1);"";Gauche(A1;Cherche(" ";A1;1))) C1 =Si(Estnontexte(A1);"";Droite(F1;NBCAR(F1)-Cherche(" ";F1;1)+1)) D1 =Si(Estnontexte(A1);"";Droite(A1;NBCAR(A1)-Cherche("(";A1;1)+1)) Attention: le format de ta cellule en Ax est {Chiffres} { Lettres } {(111 az 22 ce que l'on veut)} car teste sur la 1Úre "(" et sur le 1er " ". Byyyyyyyyyyyyyyeeeeeeeeeeeeeeee

Modifié par ximi le 23/01/2004 09:27
qmike
 Posté le 19/01/2004 à 09:18 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien
aprÞs l'importation de tes donnÚes en seule colonne tu peux sÚprarer tes donnÚes comme suit : SÚlectionnez les cellules Ó sÚparer, Menu DonnÚes, Convertir, DÚlimiter, Suivant Cochez Espaces, suivant Format de donnÚes, texte, numÚrique, etc http://perso.club-internet.fr/bvrve/Astuces_Michel/accueil.htm
tacoum
 Posté le 19/01/2004 à 22:38 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien
faut que j'essaye tout þa ! j'Útudie et vous tient au courant ! merci pour vos rÚponses !
SAKI
 Posté le 20/01/2004 à 00:04 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien
Je ne suis pas s¹r d'avoir compris ton pb, mais je me permets de te livrer 2 fonctions personnalisÚes que j'ai programmÚe en VBA pour Excel. Je les utilise pour d'extraire le nom et le prÚnom d'une personne lorsque les deux sont contenus ds la mÛme cellule: Si la cellule "A1", contient "Durand Paul", ds une autre cellule la fonction NOM(A1) te rendra "Durand" et la fonction "Prenom(A1)" te rendra Paul. Pour rendre ces 2 fonctions opÚrationnelles, tu fais un copier-coller dans un module (accÞs au Visual Basic Editor par les touches ALT-F11, puis insertion - module ...) Function NOM(Ch) NOM = Left(Ch, InStr(Ch, " ") - 1) End Function Function PRENOM(Ch) PRENOM = Right(Ch, Len(Ch) - InStr(Ch, " ") - 1) End Function Bon courage.
bad.jack
 Posté le 20/01/2004 à 07:05 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien
Bonjour, les formules : > 1 Robert (16/01/2004 16:09:21) =STXT(A1;3;500) =GAUCHE(B1;CHERCHE(" ";B1)-1) =STXT(B1;CHERCHE(" ";B1)+1;500) > 2 Simon (16/01/2004 16:10:02) =STXT(A2;3;500) =GAUCHE(B2;CHERCHE(" ";B2)-1) =STXT(B2;CHERCHE(" ";B2)+1;500) > 3 Gilles (16/01/2004 16:38:39) =STXT(A3;3;500) =GAUCHE(B3;CHERCHE(" ";B3)-1) =STXT(B3;CHERCHE(" ";B3)+1;500) > 4 Jacques (16/01/2004 16:44:46) =STXT(A4;3;500) =GAUCHE(B4;CHERCHE(" ";B4)-1) =STXT(B4;CHERCHE(" ";B4)+1;500) les rÚsultats : > 1 Robert (16/01/2004 16:09:21) 1 Robert (16/01/2004 16:09:21) 1 Robert (16/01/2004 16:09:21) > 2 Simon (16/01/2004 16:10:02) 2 Simon (16/01/2004 16:10:02) 2 Simon (16/01/2004 16:10:02) > 3 Gilles (16/01/2004 16:38:39) 3 Gilles (16/01/2004 16:38:39) 3 Gilles (16/01/2004 16:38:39) > 4 Jacques (16/01/2004 16:44:46) 4 Jacques (16/01/2004 16:44:46) 4 Jacques (16/01/2004 16:44:46) Il te reste Ó faire un copier des colonnes 3 et 4, puis un collage spÚcial / Valeurs, afin de rÚcupÚrer tes donnÚes. Tu peux alors affacer les 2 premiÞres colonnes.
tacoum
 Posté le 20/01/2004 à 16:03 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien
Merci Ó tous et toutes pour votre aide ! pour l'instant, þa fonctionne trÚs bien en recopiant "bÛtement" les formules de ximi ! maintenant je n'ai plus Ó essayer de comprendre "pourquoi" et comment" þa marche ! [img]http://www.vgmasterweb.ch/forum/html/emoticons/taz.gif[/img]
Page : [1] 
Page 1 sur 1

Vous devez être connecté pour participer à la discussion.
Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !
Recevoir PC Astuces par e-mail


La Lettre quotidienne +226 000 inscrits
Avec l'actu, des logiciels, des applis, des astuces, des bons plans, ...

Les bonnes affaires
Une fois par semaine, un récap des meilleurs offres.

Les fonds d'écran
De jolies photos pour personnaliser votre bureau. Une fois par semaine.

Les nouveaux Bons Plans
Des notifications pour ne pas rater les bons plans publiés sur le site.

Les bons plans du moment PC Astuces

Tous les Bons Plans
Batterie externe ultra mince INIU Power Bank (10 000 mAh, PD 20W, câble USB C intégré)
14,49 € 29,99 € -52%
@Amazon
Carte mémoire SDXC UHS-I U3 Samsung PRO Plus 512 Go (jusqu'à 180 Mo/s)
44,85 € 69,99 € -36%
@Amazon Allemagne
Caméra sport DJI Osmo Action 4 Standard
202,29 € 329 € -39%
@Amazon Espagne
Câble INIU USB-C 100W PD (2 mètres, nylon tressé, charge rapide)
6,99 € 9,99 € -30%
@Amazon
Onduleur APC BE850G2-FR (8 prises, USB, RJ45, 520 W/850 VA)
104,62 € 145 € -28%
@Amazon
Amazon Fire TV Stick 4K Max (2ème gén.)
47,99 € 79,99 € -40%
@Amazon

Sujets relatifs
fonction à copier dans un modéle excel (RESOLU)
aide pr fonction recherche verticale excel[resolu]
Excel 2000 - Fonction ALEA() [Résolu]
=DATEDIF(fonction excel) : résolu
Résolu Excel 2000 quelle fonction utiliser?
Excel - fonction "recherche" (résolu)
EXCEL: Fonction DATEDIF
VBA Excel valeur en fonction de cellules
[Excel 2007] Fonction NB.SI - problème
Recherche d'une fonction dans EXCEL
Plus de sujets relatifs à Fonction Excel => résolu
 > Tous les forums > Forum Bureautique