Extraire les caractères numériques en VB
Résolu/Fermé
Vince
-
6 mai 2012 à 19:15
ccm81 Messages postés 10851 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 16 avril 2024 - 7 mai 2012 à 17:31
ccm81 Messages postés 10851 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 16 avril 2024 - 7 mai 2012 à 17:31
A voir également:
- Extraire les caractères numériques en VB
- Extraire video youtube - Guide
- Caractères ascii - Guide
- Caractères spéciaux symboles clavier - Guide
- Extraire son video - Guide
- Vb cable - Télécharger - Audio & Musique
6 réponses
lermite222
Messages postés
8702
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 190
7 mai 2012 à 11:34
7 mai 2012 à 11:34
Bonjour,
Essaye avec..
Pour autant que le nombre à rechercher soit toujours de 4 chiffres.
Tu dis
Essaye avec..
ExtFunction = Mid(x, InStr(x,"3060") , 4)
Pour autant que le nombre à rechercher soit toujours de 4 chiffres.
Tu dis
ccm81
Messages postés
10851
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
16 avril 2024
2 404
Modifié par ccm81 le 7/05/2012 à 11:58
Modifié par ccm81 le 7/05/2012 à 11:58
bonjour
je ne sais pas si j'ai bien compris, mais deux fonctions qui suppriment les caractères non numériques d'une chaine
bonne suite
je ne sais pas si j'ai bien compris, mais deux fonctions qui suppriment les caractères non numériques d'une chaine
Public Function X_chiffres1(x As String) As String If x = "" Then X_chiffres1 = "" Else If IsNumeric(Left(x, 1)) Then X_chiffres1 = Left(x, 1) & X_chiffres1(Right(x, Len(x) - 1)) Else X_chiffres1 = X_chiffres1(Right(x, Len(x) - 1)) End If End If End Function Public Function X_chiffres2(x As String) As String Dim s, k As Long s = "" For k = 1 To Len(x) If IsNumeric(Mid(x, k, 1)) Then s = s & Mid(x, k, 1) End If Next k X_chiffres2 = s End Function
bonne suite
lermite222
Messages postés
8702
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 190
Modifié par lermite222 le 7/05/2012 à 12:47
Modifié par lermite222 le 7/05/2012 à 12:47
Re,
Effectivement, pourquoi extraire un nombre que l'ont connaît déjà ?
Y faudrait un point de repaire comme par exemple
Une idée !!
Ce n'est qu'une idée :DD
A+
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
Effectivement, pourquoi extraire un nombre que l'ont connaît déjà ?
Y faudrait un point de repaire comme par exemple
x = "Vendu= 3060 ; retour= 623 "
Une idée !!
Sub Test() Dim x As String, d x = "Vendu= 3060 ; Retour= 623 " d = VdRe(x, 0) 'Avec 0 = 3060 : avec 1 = 623 End Sub Public Function VdRe(x As String, Optional Mode As Integer) As Double Dim S As String, i As Integer, e As Integer S = IIf(Mode = 0, "Vendu= ", "Retour=") i = InStr(x, S) If i > 0 Then S = Trim(Mid(x, i + 7)) For e = 1 To Len(S) If Not IsNumeric(Mid(S, e, 1)) Then Exit For Next e VdRe = Val(IIf(e > Len(S), S, Left(S, e - 1))) End If End Function
Ce n'est qu'une idée :DD
A+
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
Bonjour et merci à ceux qui m'ont apporté des réponses.
Ma description était peut être floue.... je cherchais à extraire 17 caractères numériques commençant par 3060.
Visiblement la solution est :
Function ExtFunction (x)
ExtFunction= "0"
if instr(x,"3060") <> 0 then
x = Replace(x," ","")
end if
if instr(x,"3060") <> 0 then
ExtFunction = Mid(x, InStr(x,"3060") , 17)
end if
End Function
MErci encore à Tous
Ma description était peut être floue.... je cherchais à extraire 17 caractères numériques commençant par 3060.
Visiblement la solution est :
Function ExtFunction (x)
ExtFunction= "0"
if instr(x,"3060") <> 0 then
x = Replace(x," ","")
end if
if instr(x,"3060") <> 0 then
ExtFunction = Mid(x, InStr(x,"3060") , 17)
end if
End Function
MErci encore à Tous
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
lermite222
Messages postés
8702
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 190
7 mai 2012 à 15:16
7 mai 2012 à 15:16
A désespérer....
ccm81
Messages postés
10851
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
16 avril 2024
2 404
7 mai 2012 à 17:31
7 mai 2012 à 17:31
yes !!