Remplacer des lettres par un chiffres

  • Initiateur de la discussion Initiateur de la discussion phil59110
  • Date de début Date de début

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 !

phil59110

XLDnaute Occasionnel
un grand Bonjour a tous le forum!!!!!
voila j'ai un petit souci avec un tableau avec des lettres et des chiffres
je vous ai joint un petit fichier pour l'exemple
si voulez bien y jeter un petit coup d'oeil

je vous en remerci beaucoup!!!!
 

Pièces jointes

Re : Remplacer des lettres par un chiffres

Bonjour phil59110,
Une proposition (basée sur votre exemple et à adapter):
Code:
Sub test()
Dim c As Range
For Each c In Sheets("Feuil1").Range("L16:Q34")
    If Not IsNumeric(c.Value) Then c.Value = 10
Next c
End Sub
Cordialement
 
Re : Remplacer des lettres par un chiffres

Re phil59110,
Bonjour Paritec. Désolé pour la rapidité de réponse 😱, mais je "l'avait sous le coude"😉.
Ta proposition était peut être différente? Ce serait interressant.
Cordialement
 
Re : Remplacer des lettres par un chiffres

Re,

Petite modif de la macro identique à celle d'Efgé pour inclure le 0 dans les valeurs à transformer :

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("L15:Q34")) Is Nothing Then
Dim Plage As Range, Cel As Range
Set Plage = Range("L15:Q34")
For Each Cel In Plage
If TypeName(Cel.Value) = "String" Or Cel.Value = 0 Then
Cel = 10
End If
Next Cel
End If
End Sub
 
Re : Remplacer des lettres par un chiffres

Bonsoir CBernardT, Efgé Phil,
Petite réponse pour Efgé,
pour ma réponse c'était exactement à la virgule la même que la tienne Efgé dans la première version sans les zéro que phil a rajouté après sauf que moi j'avais mis cel et toi c
bonne soirée à tous
papou 🙂
 
Re : Remplacer des lettres par un chiffres

Bonsoir à tous

Deux petites variantes commises un soir de désœuvrement 😉

Code:
Sub test_OK1()
Dim c As Range
For Each c In Sheets("Feuil1").Range("A1:C5")
If Len(c) > 0 Then
c = 10 + ((Not IsNumeric(c)) * (c = 0))
End If
Next c
End Sub
Code:
Sub test_OK2()
Dim c As Range
For Each c In Sheets("Feuil1").Range("A1:C5")
c = Switch(c = "", vbNullString, c = 0, 10, Not IsNumeric(c), 10)
Next c
End Sub
 
- 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
15
Affichages
522
  • Question Question
Microsoft 365 probleme d heure
Réponses
11
Affichages
254
Retour