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

Access Discussion :

Codage par la fonction VraiFaux par VBA !


Sujet :

Access

  1. #1
    Membre du Club
    Homme Profil pro
    Chargé d'études statistique
    Inscrit en
    Février 2017
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Algérie

    Informations professionnelles :
    Activité : Chargé d'études statistique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2017
    Messages : 96
    Points : 59
    Points
    59
    Par défaut Codage par la fonction VraiFaux par VBA !
    Bonjour pour tout le monde,

    Je travail sur un requête et je voudrai créer un nouveau champ pour faire coder une colonne existante déjà.

    La colonne existante porte l'intitulé des postes de travail, et la colonne que je voudrai créer va me coder ces postes par mon choix,

    voici ce que j'ai essayé de faire sur la source de control mais puisque j'ai une liste longue il m’affiche un message d'erreur "expression entrée est trop complexe":

    New_Poste:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    VraiFaux(Gauche([Poste];11)="Chef d'Awem";1;
    VraiFaux(Gauche([Poste];15)="Chef de service";2;
    VraiFaux(Gauche([Poste];9)="Ingénieur";3;
    VraiFaux(Gauche([Poste];20)="Conseiller principal";4;
    VraiFaux(Gauche([Poste];21)="Conseiller à l'emploi";5
    Le reste si [Poste] est différent de ces postes alors est égal à "6"


    La liste est encore longue...

    Alors, je cherche comment exprimer ça par un code VBA ?

    Je vous remercie d'avance.

  2. #2
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut
    Bonjour,

    Il faut faire des blocs conditionnels, par exemple dans une fonction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    Function resultat(Poste as string) as long
     
       if Left(Poste,11)="Chef d'Awem" then
            resultat= 1
       else
            if Left(Poste,15)="Chef de service" then
              resultat= 2
            else
                if Left(Poste,9)="Ingénieur" then 
                    resultat = 3
                else
                    if(Left(Poste,20)="Conseiller principal" then
                      resultat = 4
                    end if
                end if
            end if
        end if
     
    end function
    Cdlt,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  3. #3
    Membre du Club
    Homme Profil pro
    Chargé d'études statistique
    Inscrit en
    Février 2017
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Algérie

    Informations professionnelles :
    Activité : Chargé d'études statistique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2017
    Messages : 96
    Points : 59
    Points
    59
    Par défaut
    Merci User pour votre intervention,

    Pouvez vous m'aider un peut plus pour l'emplacement de cette fonction.

    Pour le moment j'ai pas trop pratiquer sur les code VBA et SQL sur des requêtes, en faite j'ai fait ça seulement pour des états alors je manque de notions.

    J'ai placé cette fonction sur un nouveau module mais j'ai pas trouvé ou l’exécuté.

  4. #4
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut
    Par exemple, dans un champ Result d'une requête en mode création :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Result: Resultat([Poste])
    Ici la fonction appelée se nomme Resultat et [Poste] est un champ de la requête.

    Cdlt,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  5. #5
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 921
    Points
    55 921
    Billets dans le blog
    131
    Par défaut
    Salut.

    Coder des données métier en dur n'est jamais une solution durable.

    Perso, je créerais une table reprenant les postes et leur numéro. Ca aurait l'avantage de te permettre d'ajouter des postes sans devoir toucher à ton code. Et je choisirais plutôt 0 comme poste par défaut que le nombre de postes +1.
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  6. #6
    Membre du Club
    Homme Profil pro
    Chargé d'études statistique
    Inscrit en
    Février 2017
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Algérie

    Informations professionnelles :
    Activité : Chargé d'études statistique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2017
    Messages : 96
    Points : 59
    Points
    59
    Par défaut
    Oh! SUPER !

    J'ai viens d'apprendre une chose très intéressante.

    Une dernière chose pour terminer cette fonction, comment je puisse exprimer Le reste des postes sur cette fonction, par exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    If Left(Poste, 11) = "Chef d'Awem" Then
            resultat = 1
       Else
            If Left(Poste, 15) = "Chef de service" Then
              resultat = 2
            Else
                If Left(Poste, 9) = "Ingénieur" Then
                    resultat = 3
                Else
                    If Left(Poste, 20) = "Conseiller principal" Then
                      resultat = 4
    Si le reste des postes est différent de ça, alors resultat= 5

  7. #7
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut
    C'est vrai ce que note Pierre Fauconnier, le plus simple serait de créer une table Metier(NomMetier,CodeMetier)
    ou tu ferais la correspondance entre les noms et les codes des métiers, ensuite tu reprendrais cette table dans une requête.

    Sinon, pour le cas restant il faut le préciser dans le dernier sous-bloc :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    ...
    else
         if(Left(Poste,20)="Conseiller principal" then
              resultat = 4
         else
              resultat = 5                       
         end if
    end if
    Cdlt,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  8. #8
    Membre du Club
    Homme Profil pro
    Chargé d'études statistique
    Inscrit en
    Février 2017
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Algérie

    Informations professionnelles :
    Activité : Chargé d'études statistique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2017
    Messages : 96
    Points : 59
    Points
    59
    Par défaut
    Merci beaucoup User pour le complément, merci aussi pierre pour votre proposition,

    En faite, je reçois ces données par une source extérieur, c'est à dire que la base de données n'est pas actualiser a mon niveau et le champ que je voulais coder est comme un champ ouvert, alors j'ai inspiré cette façon de codage a fin de détermine seulement les postes.

    Merci encore une fois et bonne journée.

  9. #9
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 921
    Points
    55 921
    Billets dans le blog
    131
    Par défaut
    Ca ne change pas grand-chose à ma proposition. Je dirais même que tu justifies l'intérêt de passer par une table des postes. Coder tes données en dur alors que tu les reçois de l'extérieur, c'est aller au casse-pipe à coup sûr.
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  10. #10
    Membre du Club
    Homme Profil pro
    Chargé d'études statistique
    Inscrit en
    Février 2017
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Algérie

    Informations professionnelles :
    Activité : Chargé d'études statistique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2017
    Messages : 96
    Points : 59
    Points
    59
    Par défaut
    Merci encore pierre,

    En réalité, ce code mon servir pour un tri personnalisé de ces postes afin d'exprime le niveau de la catégorie.

  11. #11
    Membre du Club
    Homme Profil pro
    Chargé d'études statistique
    Inscrit en
    Février 2017
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Algérie

    Informations professionnelles :
    Activité : Chargé d'études statistique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2017
    Messages : 96
    Points : 59
    Points
    59
    Par défaut
    Encore un probléme !

    Cette fois ci, il m’affiche un message d'erreur "Erreur de Compilation: Else sans if".

    Je ne voie pas ou est l'erreur ?

    Voici mon dernier code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    Function resultat(Poste As String) As Long
     
    If Left(Poste, 11) = "Chef d'Awem" Then resultat = 1
     
    Else If Left(Poste, 11) = "Chef d'Alem" Then resultat = 2
    Else If Left(Poste, 15) = "Chef de service" Then resultat = 3
     
    Else If Left(Poste, 12) = "Chef d'étude" Then resultat = 4
    Else If Left(Poste, 9) = "Ingénieur" Then resultat = 5
     
    Else If Left(Poste, 20) = "Conseiller principal" Then resultat = 6
    Else If Left(Poste, 21) = "Conseiller a l'emploi" Then resultat = 7
     
     
    Else If Left(Poste, 15) = "Chargé d'études" Then resultat = 8
    Else If Left(Poste, 15) = "Conseiller assistant" Then resultat = 9
     
    Else: resultat = 10
     
    End If
    End if
    End if
    End if
    End if
    End if
    End if
    End if
    End if
     
    End Function

  12. #12
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 921
    Points
    55 921
    Billets dans le blog
    131
    Par défaut
    Tu structures mal tes if imbriqués. Tu dois aller sur une nouvelle ligne après le then sinon tes endif ne sont pas nécessaires et il n'y a pas d'imbrication. Mais tu as intérêt à imbriquer tes ifs pour éviter les tests inutiles

    Tu dois avoir une structure du style
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    if ... then
        ...
    elseif ... then
        ...
    elseif ... then
        ...
    end if
    Question: Awen et Alem, ce sont des prénoms? Ca va être "rigolo" si tu as plein de prénoms différents... Je ne sais pas trop ce que tu cherches à faire, mais tu t'y prends très mal, à mon avis (ce n'est pas une attaque ad hominen, juste une réflexion technique qui devrait t'alerter sur le fait que vas te casser la pipe...).

    Tu as très clairement intérêt à réfléchir à ce que tu souhaites obtenir avant de te lancer dans du n'importe quoi et à plancher sur la conception de ton outil.

    Je dis ça, je ne dis rien...
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  13. #13
    Membre du Club
    Homme Profil pro
    Chargé d'études statistique
    Inscrit en
    Février 2017
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Algérie

    Informations professionnelles :
    Activité : Chargé d'études statistique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2017
    Messages : 96
    Points : 59
    Points
    59
    Par défaut
    Non, ceux sont des abréviation d'une agence si tu veux, (Agence wilayal, agence local), il y a seulement ces deux circonscription.

    Je ne sais pas si vous avez vu mon dernier message, mais ces codes me servent pour faire un tri selon la catégorie de ces postes.

    Je vais tester ce que vous m'avez proposé.

    Merci pierre.

  14. #14
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 921
    Points
    55 921
    Billets dans le blog
    131
    Par défaut
    Oui oui, j'ai lu ton post.

    Je trouve juste étonnant que le résultat pour "Conseiller principal" passe de 4 à 6 en fonction de tes versions de code...
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  15. #15
    Membre du Club
    Homme Profil pro
    Chargé d'études statistique
    Inscrit en
    Février 2017
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Algérie

    Informations professionnelles :
    Activité : Chargé d'études statistique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2017
    Messages : 96
    Points : 59
    Points
    59
    Par défaut
    Ah ! la ça bien marcher.

    Oui, en postant je rate parfois quelques changements.

    J'ai pas trouvé d'autres moyen pour faire trier ces postes, le problème c'est que ces données collecté manque d'informations complémentaire.

  16. #16
    Membre du Club
    Homme Profil pro
    Chargé d'études statistique
    Inscrit en
    Février 2017
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Algérie

    Informations professionnelles :
    Activité : Chargé d'études statistique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2017
    Messages : 96
    Points : 59
    Points
    59
    Par défaut
    Est-ce vous pouvez me rajouter un petit plus concernant cette fonction.

    Est-ce que c'est logique d’écrire comme cela:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    If Left(Affectation, 4) = "ALEM" And Right(Affectation, 4) = Right(Wilaya, 4) Then
      Tri_affectation = 1
    le test du module na détecter aucun problème par contre na donné aucun résultat.

  17. #17
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 921
    Points
    55 921
    Billets dans le blog
    131
    Par défaut
    Oui. Il faut bien vérifier les données reprises dans les variables Affectation et Wilaya.

    Tu peux poser un point d'arrêt sur la ligne et lorsque le code s'arrêtera dessus, tu pourras passer avec la souris sur les variables pour en voir la valeur.

    Tu peux aussi utiliser les fenêtres des variables locales et des espions, et tester certaines choses via la fenêtre d'exécution.

    Fais attention aux espaces qui pourraient traîner à droite de données saisies... C'est un piège courant. Eventuellement, supprime les espaces de part et d'autre avec la fonction TRIM(...).
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  18. #18
    Membre du Club
    Homme Profil pro
    Chargé d'études statistique
    Inscrit en
    Février 2017
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Algérie

    Informations professionnelles :
    Activité : Chargé d'études statistique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2017
    Messages : 96
    Points : 59
    Points
    59
    Par défaut
    J'ai reçus seulement "1" et le reste en "0",

    Voir ci-joint un extrait de résultat obtenu.
    Fichiers attachés Fichiers attachés

  19. #19
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 921
    Points
    55 921
    Billets dans le blog
    131
    Par défaut
    A priori, tu ne devrais avoir que des 1, 2 et 3. Je soupçonne une variable mal déclarée dans le code qui appelle la fonction. Pourrais-tu donner ce code? Afin d'éviter la mauvaise déclaration de variable, vérifie que la ligne Option Explicit figure bien en haut de ton module (normalement, première ligne).

    Pense également que l'opérateur d'égalité, par défaut, différencie la casse. Dans ton exemple, "zane" n'est pas égal à "ZANE"...

    Pour contrer cela, soit
    tu places la ligne Option Compare Text au début du module;
    tu testes ucase(right...) = ucase(right...)
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  20. #20
    Membre du Club
    Homme Profil pro
    Chargé d'études statistique
    Inscrit en
    Février 2017
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Algérie

    Informations professionnelles :
    Activité : Chargé d'études statistique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2017
    Messages : 96
    Points : 59
    Points
    59
    Par défaut
    Bonjour,

    Je n'arrive toujours pas a trouver cette l'erreur, apparemment il s'agit d'une erreur logique.

    J'ai tout vérifier, et j'ai déclaré seulement la variable Wilaya.

    Est-ce que les majuscules peuvent causé une erreur ? de toute façon j'ai tester cela mais ça ne donne rien.

    Voici mon fichier d'exemple.
    Fichiers attachés Fichiers attachés

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 8
    Dernier message: 18/02/2016, 04h56
  2. [AC-2010] Quitter fonction appelée par une fonction
    Par chrtophe dans le forum Access
    Réponses: 6
    Dernier message: 27/10/2015, 20h51
  3. Réponses: 6
    Dernier message: 29/07/2009, 15h31
  4. Réponses: 7
    Dernier message: 31/08/2006, 09h41
  5. [VBA]Affectation d'une valeur à une cellule par une fonction
    Par lallougri dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 27/02/2006, 14h24

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