Fonction de formatage de cellule ?
Xisandro
-
Xisandro -
Xisandro -
Bonjour,
J'ai deux problématiques que je souhaiterai vous soumettre :
La première est pour extraire du texte d'une cellule pour le mettre dans une autre :
j'ai la cellule A1 avec "Intel(R) Core(TM) i3-2120 CPU @ 3.30GHz" et je veux dans la cellule A2 uniquement "i3-2"
j'ai réussi avec la formule =STXT([@Processeur];19;4)
Seulement voilà, d'autres cellules contiennent aussi :
- Intel(R) Pentium(R) CPU G3220 @ 3.00GHz (dont je voudrai qu'elle apparaisse en "CP")
- Intel(R) Xeon(R) CPU W3550 @ 3.07GHz (dont je voudrai qu'elle apparaisse en "Xéon")
- Intel(R) Core(TM) M-5Y71 CPU @ 1.20GHz (dont je voudrai qu'elle apparaisse en "-")
mais je n'arrive pas à composer ma formule pour qu'elle prenne en compte les différentes compositions de texte.
La deuxième lui ressemble :
j'ai des modèles de machines :
ThinkPad E550 20DF00CQFR
Thinkpad E550 20DF-00CUFR
Thinkpad Helix 20CHS10S0P
Thinkpad Helix 20CHS10S0P
Thinkpad Helix 20CHS10S0P
Thinkpad Helix 3702-6F3
ProBook 6570b
ProDesk 400 G2 MT
Lifebook E751
Lifebook S751
OptiPlex 3010
dont la seule chose qui m'intéresse est le début car les modèles doivent être identiques pour que je puisse les prendre en compte dans un tableau croisé dynamique :
ThinkPad E550
Thinkpad E550
Thinkpad Helix
Thinkpad Helix
Thinkpad Helix
Thinkpad Helix
ProBook 6570b
ProDesk 400 G2 MT
Lifebook E751
Lifebook S751
OptiPlex 3010
Savez-vous s'il est possible de réaliser un "formatage" avec une formule ?
Merci d'avance ! :D
J'ai deux problématiques que je souhaiterai vous soumettre :
La première est pour extraire du texte d'une cellule pour le mettre dans une autre :
j'ai la cellule A1 avec "Intel(R) Core(TM) i3-2120 CPU @ 3.30GHz" et je veux dans la cellule A2 uniquement "i3-2"
j'ai réussi avec la formule =STXT([@Processeur];19;4)
Seulement voilà, d'autres cellules contiennent aussi :
- Intel(R) Pentium(R) CPU G3220 @ 3.00GHz (dont je voudrai qu'elle apparaisse en "CP")
- Intel(R) Xeon(R) CPU W3550 @ 3.07GHz (dont je voudrai qu'elle apparaisse en "Xéon")
- Intel(R) Core(TM) M-5Y71 CPU @ 1.20GHz (dont je voudrai qu'elle apparaisse en "-")
mais je n'arrive pas à composer ma formule pour qu'elle prenne en compte les différentes compositions de texte.
La deuxième lui ressemble :
j'ai des modèles de machines :
ThinkPad E550 20DF00CQFR
Thinkpad E550 20DF-00CUFR
Thinkpad Helix 20CHS10S0P
Thinkpad Helix 20CHS10S0P
Thinkpad Helix 20CHS10S0P
Thinkpad Helix 3702-6F3
ProBook 6570b
ProDesk 400 G2 MT
Lifebook E751
Lifebook S751
OptiPlex 3010
dont la seule chose qui m'intéresse est le début car les modèles doivent être identiques pour que je puisse les prendre en compte dans un tableau croisé dynamique :
ThinkPad E550
Thinkpad E550
Thinkpad Helix
Thinkpad Helix
Thinkpad Helix
Thinkpad Helix
ProBook 6570b
ProDesk 400 G2 MT
Lifebook E751
Lifebook S751
OptiPlex 3010
Savez-vous s'il est possible de réaliser un "formatage" avec une formule ?
Merci d'avance ! :D
Configuration: Windows / Opera 70.0.3728.189
A voir également:
- Fonction de formatage de cellule ?
- Fonction si et - Guide
- Formatage clé usb - Guide
- Formatage pc - Guide
- Excel cellule couleur si condition texte - Guide
- Excel remplir automatiquement une cellule en fonction d'une autre ✓ - Forum Excel
9 réponses
Bonjour,
Et le jour ou vous voudrez ajouter de nouveaux élèments, ça ne marchera plus.
Le plus simple est de créer les listes des processeurs et des machines sur une autre feuille avec dans la colonne à côté le texte à extraire, puis avec une recherchev etc...
Exemple:
https://mon-partage.fr/f/z74R2a3w/
formule pour les processeurs: =RECHERCHEV($A2;Processeurs;2;0)
formule pour les machines:=RECHERCHEV($A9;Machines;2;0)
Cdlt
Et le jour ou vous voudrez ajouter de nouveaux élèments, ça ne marchera plus.
Le plus simple est de créer les listes des processeurs et des machines sur une autre feuille avec dans la colonne à côté le texte à extraire, puis avec une recherchev etc...
Exemple:
https://mon-partage.fr/f/z74R2a3w/
formule pour les processeurs: =RECHERCHEV($A2;Processeurs;2;0)
formule pour les machines:=RECHERCHEV($A9;Machines;2;0)
Cdlt
Merci pour votre réponse Frenchie83 !
J'espérais ne pas devoir en arriver là car cela me ferait trop de références à noter ... J'ai déjà des recherchev pour d'autres colonnes et cela m'a pris un temps fou !
Je vais attendre d'éventuelles réponses avec d'autres idées avant de devoir me résoudre à l'horrible réalité :D
J'espérais ne pas devoir en arriver là car cela me ferait trop de références à noter ... J'ai déjà des recherchev pour d'autres colonnes et cela m'a pris un temps fou !
Je vais attendre d'éventuelles réponses avec d'autres idées avant de devoir me résoudre à l'horrible réalité :D
Bonsoir.
Désolé, mais ta demande est incohérente :
- Intel(R) Core(TM)
- Intel(R) Pentium(R)
- Intel(R)
- Intel(R) Core(TM) M
Ce serait plus logique de souhaiter obtenir i3-2120 ; CPU ; CPU ; M-5Y71 ...
Désolé, mais ta demande est incohérente :
- Intel(R) Core(TM)
i3-2120 CPU @ 3.30GHz" et je veux en A2 uniquement "i3-2"
- Intel(R) Pentium(R)
CPU G3220 @ 3.00GHz (dont je voudrai "CP")
- Intel(R)
Xeon(R) CPU W3550 @ 3.07GHz (dont je voudrai "Xéon")
- Intel(R) Core(TM) M
-5Y71 CPU @ 1.20GHz (dont je voudrai "-")
Ce serait plus logique de souhaiter obtenir i3-2120 ; CPU ; CPU ; M-5Y71 ...
Pour la seconde problématique ce serait possible sauf pour la huitième donnée
" ProDesk 400 G2 MT " qui donnerait " ProDesk 400 ".
" ProDesk 400 G2 MT " qui donnerait " ProDesk 400 ".
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Je vais expliquer plus en détails afin de retirer un maximum d'incohérences :
J'ai un fichier excel qui est un export d'une base de données contenant les configurations d'ordinateurs ; elle est brute et difficilement exploitable en l'état. En plus, cette source est mise à jour régulièrement et tout tri/formatage pour interpréter les données devient obsolète au bout de 2 jours. Je souhaite donc réaliser un fichier de mise en forme/formatage de ces données pour qu'elles soient lisibles et exploitables en un minimum d'efforts.
C'est là que la colonne des processeurs est plus complexe car il s'agit de récupérer les informations telles que suit :
i3/i5/i7 + premier chiffre après le tiret correspond au processeur et à sa génération. rien d'autre n'est utile.
Xéon/Pentium/Céléron/AMD idem, à part le type de processeur rien d'autre n'est utile.
Pour les premiers processeurs, le texte est toujours le même :
Intel(R) Core(TM) i3-2120 CPU @ 3.30GHz : il est donc facile à tronquer
les Xéon/Céléron/Pentium pourrait se tronquer au même endroit aussi mais comment les différencier des premiers ?
Intel(R) Xeon(R) CPU W3550 @ 3.07GHz
Intel(R) Pentium(R) CPU G3220 @ 3.00GHz
Même problème avec les AMD
AMD A4 PRO-7300B
Si dans un premier temps je souhaitais obtenir "CP" comme résultat ce n'était pas pour raccourcir CPU mais pour "CéléronPentium" qui sont plus ou moins équivalents.
les "Intel(R) Core(TM) M-5Y71 CPU @ 1.20GHz" sont des casses pieds qui n'apparaissent pas souvent et dont je peux calculer les équivalences manuellement d'où le "-"
Pour finir, je n'y connais rien en VBA et à terme il me faudrait voir si tout cela peut s'exporter dans un google sheet ... Si je trouve déjà la solution pour les processeurs ce sera déjà bien ! :D
J'ai un fichier excel qui est un export d'une base de données contenant les configurations d'ordinateurs ; elle est brute et difficilement exploitable en l'état. En plus, cette source est mise à jour régulièrement et tout tri/formatage pour interpréter les données devient obsolète au bout de 2 jours. Je souhaite donc réaliser un fichier de mise en forme/formatage de ces données pour qu'elles soient lisibles et exploitables en un minimum d'efforts.
C'est là que la colonne des processeurs est plus complexe car il s'agit de récupérer les informations telles que suit :
i3/i5/i7 + premier chiffre après le tiret correspond au processeur et à sa génération. rien d'autre n'est utile.
Xéon/Pentium/Céléron/AMD idem, à part le type de processeur rien d'autre n'est utile.
Pour les premiers processeurs, le texte est toujours le même :
Intel(R) Core(TM) i3-2120 CPU @ 3.30GHz : il est donc facile à tronquer
les Xéon/Céléron/Pentium pourrait se tronquer au même endroit aussi mais comment les différencier des premiers ?
Intel(R) Xeon(R) CPU W3550 @ 3.07GHz
Intel(R) Pentium(R) CPU G3220 @ 3.00GHz
Même problème avec les AMD
AMD A4 PRO-7300B
Si dans un premier temps je souhaitais obtenir "CP" comme résultat ce n'était pas pour raccourcir CPU mais pour "CéléronPentium" qui sont plus ou moins équivalents.
les "Intel(R) Core(TM) M-5Y71 CPU @ 1.20GHz" sont des casses pieds qui n'apparaissent pas souvent et dont je peux calculer les équivalences manuellement d'où le "-"
Pour finir, je n'y connais rien en VBA et à terme il me faudrait voir si tout cela peut s'exporter dans un google sheet ... Si je trouve déjà la solution pour les processeurs ce sera déjà bien ! :D
Bonjour !
Juste AMD.
Pour les xéon, céléron, pentium et AMD, ces machines ont été triées au préalable et seul le nom du processeur est important, peu importe la génération.
Suis-je en droit d'espérer une solution ? :D
Juste AMD.
Pour les xéon, céléron, pentium et AMD, ces machines ont été triées au préalable et seul le nom du processeur est important, peu importe la génération.
Suis-je en droit d'espérer une solution ? :D
Le mieux que je puisse te proposer, c'est
=STXT(A2;TROUVE(" ";A2)+1;TROUVE(" ";A2;TROUVE(" ";A2)+1)-TROUVE(" ";A2))
qui affiche PENTIUM(R), Xeon(R) et A4
=STXT(A2;TROUVE(" ";A2)+1;TROUVE(" ";A2;TROUVE(" ";A2)+1)-TROUVE(" ";A2))
qui affiche PENTIUM(R), Xeon(R) et A4
Bonjour !
J'ai trouvé ma réponse sous google sheet mais pas sous excel ...
J'ai utilisé la fonction SPLIT dans ma page de données pour séparer le texte en supprimant certains éléments :
=split(BDD!H7;"`=[]\;',./!@#$%^&*()")
Intel(R) Celeron(R) 3205U @ 1.50GHz (en une seule cellule)
est devenu
Intel R Celeron R 3205U 1 50GHz (tous les espaces marquent les différentes cellules)
Puis j'ai utilisé la formule SI avec imbrications pour trier ...
=SI('données'!J6=" Pentium";"Pentium";
SI('données'!J6=" Celeron";"Celeron";
SI('données'!J6=" Xeon";"Xeon";
SI('données'!H6="AMD";"AMD";STXT('données'!L6;1;5)))))
(avec des sauts de lignes pour que cela soit plus lisible)
merci pour vos retours en tout cas !
J'ai trouvé ma réponse sous google sheet mais pas sous excel ...
J'ai utilisé la fonction SPLIT dans ma page de données pour séparer le texte en supprimant certains éléments :
=split(BDD!H7;"`=[]\;',./!@#$%^&*()")
Intel(R) Celeron(R) 3205U @ 1.50GHz (en une seule cellule)
est devenu
Intel R Celeron R 3205U 1 50GHz (tous les espaces marquent les différentes cellules)
Puis j'ai utilisé la formule SI avec imbrications pour trier ...
=SI('données'!J6=" Pentium";"Pentium";
SI('données'!J6=" Celeron";"Celeron";
SI('données'!J6=" Xeon";"Xeon";
SI('données'!H6="AMD";"AMD";STXT('données'!L6;1;5)))))
(avec des sauts de lignes pour que cela soit plus lisible)
merci pour vos retours en tout cas !