Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Récupérer caractères non numériques

O

opera_6

Guest
Bonjour le Forum,

Malgré la charge que je constate sur le Forum, j'espère obtenir un coup de pouce pour surmonter mon problème que voici:

Comment extraire d'une cellule les caractères non numériques de longueur variable, exemple
en A1 j'ai la valeur suivante "32589-2 qwertz 25-658".
Résultat escompté "qwertz"
en A2 j'ai une valeur similaire, soit "234432-235.6 - asdfghj hgztfrd 2-35".
Résultat escompté "asdfghj hgztfrd"

En termes plus simples: comment extraire d'une cellule tous les caractères à l'exception des chiffres et signes "- + . , / *...".

Un Grand Merci d'ores et déjà.
 
J

Jean-Marie

Guest
Bonsoir

Voici une fonction VBA, à placer dans un module, et à utiliser dans une fonction de feuille de calcul.

Public Function SuppNonTexte(VarChaine As String) As String
Dim I As Integer
Dim varCar As String
Dim varConc As String
varConc = ""
For I = 1 To Len(VarChaine)
varCar = Mid(VarChaine, I, 1)
If Asc(varCar) > 64 Or Asc(varCar) = 32 Then varConc = varConc + varCar
Next
SuppNonTexte = Trim(varConc)
End Function

Dans une cellule écrit ceci =SuppNonTexte(A1), par exemple

Bonne soirée

@+Jean-Marie
 
J

Jean-Marie

Guest
Bonjour

Autre fonction VBA, avec l'utilisation de la fonction Substitue des feuilles de calcul.

Public Function SuppNonTexte(VarChaine As String) As String
Dim I As Integer
Dim varCar As String

I = 1
Do While I < Len(VarChaine)
varCar = Mid(VarChaine, I, 1)
If Asc(varCar) < 65 And Asc(varCar) > 32 Then
VarChaine = Application.WorksheetFunction.Substitute(VarChaine, varCar, "")
Else
I = I + 1
End If
Loop
SuppNonTexte = Trim(VarChaine)
End Function

@+Jean-Marie
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…