Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Suppression de caractères non numériques

11 réponses
Avatar
Flac
Bonjour,
Excel 2000
Je cherche une procédure qui me permettrait de supprimer tous les caractères
non-numériques d'une
cellule standard.

Genre:
Détermine le nombre de caractères de la cellule et
supprime ceux qui sont numériques.

Merci

Flac

10 réponses

1 2
Avatar
Flac
Genre:
Détermine le nombre de caractères de la cellule et
supprime ceux qui sont non numériques.


"Flac" a écrit dans le message de news:

Bonjour,
Excel 2000
Je cherche une procédure qui me permettrait de supprimer tous les
caractères non-numériques d'une
cellule standard.

Genre:
Détermine le nombre de caractères de la cellule et
supprime ceux qui sont numériques.

Merci

Flac



Avatar
FFO
Salut à toi

Traitement de la cellule active :

For i = 1 To Len(ActiveCell)
If "1234567890" Like "*" & Mid(ActiveCell, i, 1) & "*" Then
Valeur = Valeur & Mid(ActiveCell, i, 1)
End If
Next
ActiveCell = Valeur

A adapter Activecell à la cellule à traiter

Celà devrait convenir
Dis moi !!!!
Avatar
garnote
Salut Flac,

Quelque chose du genre, peut-être :

Sub SupprimeNonNumériques()
Dim c As Range
Dim i As Integer, x As String, n As String
For Each c In Selection
For i = 1 To Len(c)
x = Mid(c, i, 1)
If IsNumeric(x) Then n = n & x
Next i
c.Value = n
n = ""
Next c
End Sub


Serge


"Flac" a écrit dans le message de news:
Bonjour,
Excel 2000
Je cherche une procédure qui me permettrait de supprimer tous les caractères non-numériques d'une
cellule standard.

Genre:
Détermine le nombre de caractères de la cellule et
supprime ceux qui sont numériques.

Merci

Flac



Avatar
Flac
Merci
La suggestion de FFO me convient. Ça fait le travail.

Flac

"garnote" a écrit dans le message de news:
%23%
Salut Flac,

Quelque chose du genre, peut-être :

Sub SupprimeNonNumériques()
Dim c As Range
Dim i As Integer, x As String, n As String
For Each c In Selection
For i = 1 To Len(c)
x = Mid(c, i, 1)
If IsNumeric(x) Then n = n & x
Next i
c.Value = n
n = ""
Next c
End Sub


Serge


"Flac" a écrit dans le message de news:

Bonjour,
Excel 2000
Je cherche une procédure qui me permettrait de supprimer tous les
caractères non-numériques d'une
cellule standard.

Genre:
Détermine le nombre de caractères de la cellule et
supprime ceux qui sont numériques.

Merci

Flac







Avatar
Modeste
Bonsour® Flac avec ferveur ;o))) vous nous disiez :

Excel 2000
Je cherche une procédure qui me permettrait de supprimer tous les
caractères non-numériques d'une
cellule standard.


attention aux formats dates et heures
attention également aux interprétations d'unités


Function ExtractNum(target)
ExtractNum = ""
'---- adapter selon besoin -------------------------------'"&-:+*"
StringNum = Application.DecimalSeparator & "1234567890/" & "&-:+*"
For i = 1 To Len(target)
If InStr(StringNum, Mid(target, i, 1)) > 0 Then
ExtractNum = ExtractNum & Mid(target, i, 1)
End If
Next
End Function

exemples :
24 kg de Pdt 24 24 <=1*ExtractNum(A1)
Surface 22m² 22 22
120 Go 120 120
22 ares 5 centiares 225 225
lundi 2h45 245 245
né le 17/02/2008 17/02/2008 39495
il est 12:30:22 12:30:22 0,52108796
tps 22mn 15sec 2215 2215
12 pommes + 5 poires 12+5 #VALEUR!



--
--
@+
;o)))
Avatar
Charabeuh
ou bien sans "If"

Public Function AucunChiffre(X)
Dim i
AucunChiffre = X
For i = 0 To 9
AucunChiffre = Replace(AucunChiffre, i, "")
Next i
End Function




"Flac" a écrit dans le message de news:
Bonjour,
Excel 2000
Je cherche une procédure qui me permettrait de supprimer tous les caractères non-numériques d'une
cellule standard.

Genre:
Détermine le nombre de caractères de la cellule et
supprime ceux qui sont numériques.

Merci

Flac



Avatar
Flac
Bonjour,
Intéressant comme solution.
Pourrais-tu m'expliquer comment je dois intégrer cette
fonction dans le module de feuille avec
la macro
Private Sub Worksheet_Change(ByVal Target As Range)
quand le Range("c3") est modifié

Merci

Flac



"Charabeuh" a écrit dans le message de news:

ou bien sans "If"

Public Function AucunChiffre(X)
Dim i
AucunChiffre = X
For i = 0 To 9
AucunChiffre = Replace(AucunChiffre, i, "")
Next i
End Function




"Flac" a écrit dans le message de
news:
Bonjour,
Excel 2000
Je cherche une procédure qui me permettrait de supprimer tous les
caractères non-numériques d'une
cellule standard.

Genre:
Détermine le nombre de caractères de la cellule et
supprime ceux qui sont numériques.

Merci

Flac






Avatar
Modeste
Bonsour® Flac avec ferveur ;o))) vous nous disiez :

Intéressant comme solution.



Function AucunChiffre(X)

;o)))
Q : Suppression de caractères non numériques
R : en effet qui supprime les caractères numériques

--
@+
;o)))
Avatar
Flac
Bonjour,
Belle observation!!
J'imagine que la fonction fait quand même le travail, c'est juste que je ne
sais pas comment intégrer cette fonction dans le module de feuille, avec
worksheetchange
Merci

Flac

"Modeste" a écrit dans le message de news:
eqd$
Bonsour® Flac avec ferveur ;o))) vous nous disiez :

Intéressant comme solution.



Function AucunChiffre(X)

;o)))
Q : Suppression de caractères non numériques
R : en effet qui supprime les caractères numériques

--
@+
;o)))
Avatar
Charabeuh
Bonjour Modeste, Flac

Je crois que je vais supprimer
toutes les boissons non alcoolisées.
Non ! Je ne vais garder que les boissons alcoolisées.
Euh peut-être! non alcoolisées, je crois.
Je sais plus...
Bref il est grand temps de me mettre à l'eau !
Plate ou gazeuse, mais à l'eau claire.
Exit le 51 ! AucunChiffre("Eau+Glaçon+51") me servira au moins à ça.

:-)

Charabeuh




"Modeste" a écrit dans le message de news:eqd$
Bonsour® Flac avec ferveur ;o))) vous nous disiez :

Intéressant comme solution.



Function AucunChiffre(X)

;o)))
Q : Suppression de caractères non numériques
R : en effet qui supprime les caractères numériques

--
@+
;o)))
1 2