Microsoft 365 additionner le contenu d'une cellule excel contenant du texte et des chiffres

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

andromaque

XLDnaute Nouveau
Bonjour,

Je souhaiterais savoir s'il existe une formule permettant de mettre dans la colonne B le contenu de la colonne A en ne prenant que les chiffres qu'il contient ? CF fichier joint.

Cordialement,
 

Pièces jointes

Re,

Ils risquent d'ouvrir une usine à gaz à Le Blanc-Mesnil...
Quand on parle d'usine à gaz, ça me fait immanquablement penser à The Pogues, à Shane McGowans et à Dirty Old Town...
I met my love by the gas works wall
Dreamed a dream by the old canal
I kissed my girl by the factory wall
...

Pour afficher ce contenu, nous aurons besoin de votre consentement pour définir des cookies tiers.
Pour plus d'informations, consultez notre page sur les cookies.
 
😉
Function nombre(cellule)
nb = Len(cellule)
For n = 1 To nb
If IsNumeric(Mid(cellule, n, 1)) = True Then
nf = fin(n, cellule)
phrase = phrase & Mid(cellule, n, nf - n + 1) & " "
n = nf
End If
Next
nombre = phrase
End Function

Function fin(n, x)
n1 = InStr(n, x, " ")
If n1 = 0 Then fin = Len(x) Else fin = n1 - 1
End Function
 
Bonsoir à tous,
Pour le fun, une autre:
VB:
Function Extr(ByVal x As String) As String
Dim i&, c As String * 1
   For i = 1 To Len(x)
      c = Mid(x, i, 1)
      If Not (c Like "#" Or c = "," Or c = " ") Then x = Replace(x, c, " ")
   Next i
   Extr = Application.Trim(x)
End Function
 
Bonsoir @job75 🙂 😀,

En bon français un chiffre c'est 0 1 2 3 4 5 6 7 8 9, à ne pas confondre avec un nombre e
Selon moi, pas si simple et évident que ça.

Le chiffre n'est pas forcément compris entre 0 et 9. En mathématique peut-être, en français j'en doute un peu.

"Quel est le chiffre de tes dépenses ce mois ci ? " est une phrase totalement correcte en français et n'implique aucunement un maximum des dépenses mensuelles égal à 9 (et c'est bien dommage - car même en étant confiné, je dépasse le seuil).

Ou bien "quels sont les chiffres du chômage en mars ?". Dire "quels sont les nombres du chômage en mars ?" serait étrange, non ?

Donnez moi un nombre entre 5 et 15 ? On ne choisit qu'entre 10 et 15 ?
Donnez moi un chiffre entre 5 et 15 ? On ne choisit qu'entre 5 et 9 ?

Et que dire du chiffre d'affaires...
Sans parler de ce dernier chiffre
1587449939147.png


De plus le chiffre n'est pas forcément numérique. Chiffrer un texte n'implique pas de le transformer en une suite de chiffres. On peut très bien chiffrer un texte pour le transformer en une autre suite de caractères. Bon j'arrête et m'en vais prendre un 1/2 (nombre rationnel) doliprane après toutes ces élucubrations. 😉

(faut bien que je meuble le confinement, job75 😛)

nota: ceci dit, ton interprétation est peut-être correcte. Ce n'est pas grâce aux explications du demandeur qu'on le saura 🙁.
 
Dernière édition:
Bonjour à tous

Bonsoir @job75 🙂 😀,
Selon moi, pas si simple et évident que ça.
....
Donnez moi un nombre entre 5 et 15 ? On ne choisit qu'entre 10 et 15 ?

En français courant, on n'est pas toujours très précis

Les chiffres vont de 0 à 9, les nombres de - l'infini à + l'infini, y compris les nombres décimaux, réels, plus les complexes, plus... donc à la demande "Donner moi un nombre entre 5 et 15, on peut répondre n'importe quel nombre entre 5 et 15.

Donnez moi un chiffre entre 5 et 15 ? On ne choisit qu'entre 5 et 9 ?

Et là, on ne peut répondre que 5, 6, 7, 8 ou 9 (avec ou sans les bornes ?) et rien d'autre.

Et pour ce qui est du monde des papillons, vu le taux d'hybridation, de l'ordre de 40 % 🙂, il y a de quoi y perdre son latin...

@ plus
 
Dernière édition:
Pour les pôvres qui ne peuvent lire JOINDRE.TEXTE :
VB:
Function Chiffres(txt$)
Dim i%, x$
For i = 1 To Len(txt)
    x = Mid(txt, i, 1)
    If IsNumeric(x) Then Chiffres = Chiffres & x
Next
End Function

Function Nombres(txt$, Optional sep$)
Dim i%, x$
For i = 1 To Len(txt)
    x = Mid(txt, i, 1)
    Nombres = Nombres & IIf(IsNumeric(x) Or x = "," Or x = ".", x, " ")
Next
Nombres = Application.Trim(Nombres) 'SUPPRESPACE
If Len(sep) Then Nombres = Replace(Nombres, " ", sep)
End Function
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
67
Réponses
3
Affichages
46
Retour