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

Macros et VBA Excel Discussion :

VBA SELECT CASE avec LIKE [XL-2013]


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Homme Profil pro
    futur retraité
    Inscrit en
    Février 2016
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : futur retraité

    Informations forums :
    Inscription : Février 2016
    Messages : 40
    Par défaut VBA SELECT CASE avec LIKE
    Bonsoir !

    j'ai un souci avec mon code VBA

    il s'agit de traiter les fichiers extraits apres telechrgement des fichiers XLS à partir d'un site Internet d'une banque avec les instructions SELECT CASE et LIKE

    Relever dans cellule C2 qui peut etre soit "****1111" ce qui correspond au compte de Monsieur soit "****2222" qui correspond au compte de Madame , etc... donc une dizaine de comptes à traiter ( toujours precedés de 4 asteriques )


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    Dim nocompte as string
    Dim compte as string
    ...
    Range("C2").Select
    compte = Range("C2")
    Select Case compte
        Case compte Like "*1111"
             nocompte = "n°1111 Compte Monsieur"
        Case compte Like "*2222"
             nocompte = "n°2222 Compte Madame"
        Case Else
             nocompte = "compte inconnu"
     End Select
    Mon code VBA me retourne toujours "compte inconnu" ==> ?
    J'ai lu par ci qu'on ne peut pas utiliser SELECT CASE et LIKE et par là que des personnes ont reussi à le faire

    Je suis d'accord pour remplacer par une autre forme de condition ( le plus simplement à comprendre ou le moins de lignes )

    d'avance Merci et bon WE !

  2. #2
    Membre Expert
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Novembre 2011
    Messages
    1 503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Irlande

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Novembre 2011
    Messages : 1 503
    Par défaut
    Bonjour aacmweb,

    Cherche "SELECT CASE avec LIKE en VBA" sur ton ami google et tu trouves de suite ta réponse !
    En effet, le SELECT CASE n'admet pas l'opérateur LIKE en l'état. Tu dois changer ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Select Case True
        Case compte Like "*1111"
             nocompte = "n°1111 Compte Monsieur"
        Case compte Like "*2222"
             nocompte = "n°2222 Compte Madame"
        Case Else
             nocompte = "compte inconnu"
     End Select
    N'hésite pas à revenir vers moi !

    Cordialement,
    Kimy

  3. #3
    Membre averti
    Homme Profil pro
    futur retraité
    Inscrit en
    Février 2016
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : futur retraité

    Informations forums :
    Inscription : Février 2016
    Messages : 40
    Par défaut
    j'etais obsedé par STRING en fait c'est TRUE/FALSE ==> ca marche !
    Merci pour ton aide !

  4. #4
    Membre Expert
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 266
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 2 266
    Par défaut
    Bonjour,

    que tu peux aussi écrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    If compte Like "*1111" Then
         nocompte = "n°1111 Compte Monsieur"
    ElseIf compte Like "*2222" Then
         nocompte = "n°2222 Compte Madame"
    Else
        nocompte = "compte inconnu"
    End If
    eric

  5. #5
    Membre averti
    Homme Profil pro
    futur retraité
    Inscrit en
    Février 2016
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : futur retraité

    Informations forums :
    Inscription : Février 2016
    Messages : 40
    Par défaut
    Merci ! je vais essayer demain !

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

Discussions similaires

  1. Besoin aide vba "Select Case"
    Par warrio67 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 09/08/2010, 18h07
  2. Select Case avec plusieurs variables
    Par sphynxounet dans le forum VB.NET
    Réponses: 10
    Dernier message: 10/08/2009, 18h16
  3. Select case avec then qui retourne une variable
    Par dinette dans le forum SQL
    Réponses: 6
    Dernier message: 06/07/2009, 11h03
  4. select case avec if
    Par *kitty* dans le forum VB 6 et antérieur
    Réponses: 24
    Dernier message: 27/11/2008, 15h59
  5. SELECT CASE et LIKE
    Par xian21 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 24/11/2008, 00h52

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