IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBScript Discussion :

Condition si la variable est un chiffre


Sujet :

VBScript

  1. #1
    Membre averti
    Inscrit en
    Février 2009
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 36
    Par défaut Condition si la variable est un chiffre
    Bonjour à tous

    J'aimerais faire une condition "if / end if" mais j'y arrive pas ! Je m'explique

    J'ai une valeur qui est 123,00E par exemple (c'est une variable aléatoire que je récupère dans un fichier). J'aimerais faire un "if" qui serait "Si la valeur est un chiffre et qu'elle fini par E alors supprimer le E"

    J'arrive à supprimer le E sans problème :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if right(result,1) = "E" then
     
    result = replace(result,right(result,1),"")
     
    end if
    Par contre je n'arrive pas trouver comment savoir si c'est un chiffre ?

    Du coup le code serait un truc du syle

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if result=chiffre -1 AND right(result,1) = "E" then
     
    	result = replace(result,right(result,1),"")
     
    end if
    Merci pour votre aide

  2. #2
    Expert confirmé
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 843
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 843
    Par défaut
    Citation Envoyé par Touny Voir le message
    Par contre je n'arrive pas trouver comment savoir si c'est un chiffre ?

    Essaye la Fonction IsNumeric
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Renvoie une valeur booléenne indiquant si une expression peut être évaluée sous la forme d'un nombre.
    IsNumeric(expression)
    L'argument expression représente toute expression.
    La fonction IsNumeric renvoie une valeur booléenne indiquant si une expression spécifiée peut être évaluée comme un nombre. elle retourne True si l'expression est reconnue comme un nombre, sinon, elle retourne False.
    Exemple d'utilisation

  3. #3
    Membre averti
    Inscrit en
    Février 2009
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 36
    Par défaut
    Citation Envoyé par hackoofr Voir le message

    Essaye la Fonction IsNumeric
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Renvoie une valeur booléenne indiquant si une expression peut être évaluée sous la forme d'un nombre.
    IsNumeric(expression)
    L'argument expression représente toute expression.
    La fonction IsNumeric renvoie une valeur booléenne indiquant si une expression spécifiée peut être évaluée comme un nombre. elle retourne True si l'expression est reconnue comme un nombre, sinon, elle retourne False.
    Exemple d'utilisation
    Oh merci c'est tout bête je vais tester ça

  4. #4
    Membre averti
    Inscrit en
    Février 2009
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 36
    Par défaut
    Ca ne fonctionne pas. En effet ma valeur contient un "E" (123,00E) du coup il ne trouve pas que c'est un num (logique). Des idées?

  5. #5
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 127
    Par défaut
    Salut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub Form_Load()
    Dim MeVar As String
    MeVar = "123,45E"
    MeVar = Replace(MeVar, "E", "")
    Dim Recup As Single
    If IsNumeric(MeVar) Then Recup = CSng(MeVar)
    MsgBox Recup
    End Sub
    Pas besoin de condition pour le Replace, si le E est contenu, il sera remplacé, sinon, ben le Replace aura été inutile.
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

  6. #6
    Membre averti
    Inscrit en
    Février 2009
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 36
    Par défaut
    J'arrive à récupérer ma variable sans le E mais le soucis c'est que par exemple j'ai une autre variable "KILDARE" et donc il me vire le E pour me faire "KILDAR". C'est pour ça que je voudrais lui dire de retirer le E que si c'est un numérique.

  7. #7
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 127
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Dim MeVar As String
    Dim Recup As Single
    'MeVar = "123,45KILDARE"
    MeVar = "123,45E"
    If Right(MeVar, 1) = "E" And IsNumeric(Left(MeVar, Len(MeVar) - 1)) Then
        MeVar = Replace(MeVar, "E", "")
        Recup = CSng(MeVar)
        MsgBox Recup
    End If
    Mieux ?
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

  8. #8
    Membre averti
    Inscrit en
    Février 2009
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 36
    Par défaut
    OOOooooh c'est mieuuux Merci beaucoup ProgElecT !!

    J'ai une autre p'tite question : j'ai une variable d'heure ":18:30:25" et je voudrais supprimer les ":" devant l'heure. J'ai fais ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if left(result,1) = ":" then
     
    	result = replace(result,left(result,1),"")
     
    end if
    Ce p'tit bout de code me supprime tous les ":" alors que pour moi il me supprime que le ":" du premier caractère de gauche !

    Un p'tit coup de main ?

  9. #9
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 127
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    result = Replace(Lheure, ":", "", 1, 1)
    'ou
    result = Right(Lheure, Len(Lheure) - 1)
    Tu peux voire que le 5éme paramètre te permet d'indiquer le nombre de modification à effectuer.
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

  10. #10
    Membre averti
    Inscrit en
    Février 2009
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 36
    Par défaut
    J'ai trouvé la solution hier et c'est la même que toi ProgElect Merci pour ta réactivité en tout les cas

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 7
    Dernier message: 30/03/2007, 14h58
  2. Comment savoir si ma variable est un chiffre
    Par PrinceMaster77 dans le forum ASP
    Réponses: 4
    Dernier message: 19/11/2006, 13h53
  3. Savoir si une variable est bien un chiffre
    Par tomasi dans le forum C
    Réponses: 34
    Dernier message: 15/11/2006, 13h15
  4. Réponses: 3
    Dernier message: 11/10/2006, 17h18
  5. Comment savoir si une variable est initialisée ?
    Par nabix dans le forum Général Python
    Réponses: 8
    Dernier message: 10/03/2005, 15h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo