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 :

Condition Where qui ne fonctionne pas avec Enr_Affiche()


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2024
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Juillet 2024
    Messages : 44
    Par défaut Condition Where qui ne fonctionne pas avec Enr_Affiche()
    Bonjour à tous,

    Voilà, je suis en cours de dev. avec le super tutoriels de Laurent OTT concernant la manipulation d'une base Access avec Excel
    https://laurent-ott.developpez.com/t...s-excel/#LII-D

    Par contre je rencontre un problème que je ne comprends pas avec sa fonction Enr_Affiche()
    Dans ma base Access, j'ai une table "T_Employe" qui contient un champ "FonctionEmp", celui-ci contient la fonction des employés et j'ai entre autre la fonction "Chef d'équipe"

    Si j'utilise cette fonction sans la clause WHERE, je n'ai pas de souci
    en revanche, si je mets la clause "WHERE FonctionEmp LIKE '*équipe'" je n'ai aucun retour

    Si je met la clause "WHERE FonctionEmp LIKE 'monteur'" j'ai bien le retour des enregistrements

    Est-ce que quelqu'un saurait me dire quelle en est la raison ?
    Ne serait-ce pas un souci de caractère accentué !

    A+

  2. #2
    Membre Expert Avatar de Thumb down
    Homme Profil pro
    Retraité
    Inscrit en
    Juin 2019
    Messages
    1 581
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juin 2019
    Messages : 1 581
    Par défaut
    Bonsoir,
    Avec adodb le like ne se fait pas avec * mais le %

    "WHERE FonctionEmp LIKE '%équipe'"

  3. #3
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2024
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Juillet 2024
    Messages : 44
    Par défaut
    Bonsoir Thumb down

    Fait pas la gueule ta réponse est la bonne
    Pourquoi l'informatique ne peut pas être plus simple....

    Mille merci
    A+

  4. #4
    Membre Expert
    Avatar de tototiti2008
    Homme Profil pro
    Formateur/développeur
    Inscrit en
    Octobre 2008
    Messages
    1 210
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Formateur/développeur

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 210
    Billets dans le blog
    2
    Par défaut
    Bonjour,

    Parce que, autant que je sache (pas trouvé d'historique pour confirmer ce qu'on m'a dit) les caractères génériques classiques viennent originellement des bases de données avec l'opérateur LIKE, il on été défini comme % pour remplacer un nombre indéfini de caractères et _ pour remplacer un caractère
    Puis Microsoft s'est dit qu'ils allaient reprendre le concept mais un génie s'est dit qu'ils allaient remplacer % par * et _ par ?, parce qu'ils sont Microsoft alors pourquoi pas

  5. #5
    Membre Expert Avatar de Thumb down
    Homme Profil pro
    Retraité
    Inscrit en
    Juin 2019
    Messages
    1 581
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juin 2019
    Messages : 1 581
    Par défaut
    Citation Envoyé par tototiti2008 Voir le message
    Bonjour,

    Parce que, autant que je sache (pas trouvé d'historique pour confirmer ce qu'on m'a dit) les caractères génériques classiques viennent originellement des bases de données avec l'opérateur LIKE, il on été défini comme % pour remplacer un nombre indéfini de caractères et _ pour remplacer un caractère
    Puis Microsoft s'est dit qu'ils allaient reprendre le concept mais un génie s'est dit qu'ils allaient remplacer % par * et _ par ?, parce qu'ils sont Microsoft alors pourquoi pas
    Bonjour,

    Oui, c'est une théorie assez plausible ! Les caractères génériques que l'on retrouve dans les bases de données (avec LIKE en SQL, par exemple) utilisent % pour représenter plusieurs caractères et _ pour un seul. Ces conventions viennent probablement de langages antérieurs comme COBOL ou d'autres systèmes de requêtage textuel.

    Microsoft, en développant MS-DOS et Windows, a adopté une autre logique pour les fichiers et les recherches : * pour plusieurs caractères et ? pour un seul. Pourquoi ce changement ? Plusieurs hypothèses :

    1. Compatibilité avec CP/M : MS-DOS s'inspire fortement de CP/M, qui utilisait déjà * et ? pour la gestion des fichiers.


    2. Ergonomie pour les utilisateurs finaux : * et ? sont plus intuitifs pour des utilisateurs non techniques, alors que % et _ sont plus spécifiques aux bases de données et aux langages de requête.


    3. Séparation des usages : % et _ sont liés aux requêtes textuelles en base de données, tandis que * et ? sont destinés aux systèmes de fichiers et aux recherches.



    Bref, Microsoft n'a peut-être pas réinventé la roue sans raison, mais c'est vrai que ce genre d'incohérence peut être frustrant quand on jongle entre SQL et Windows !

Discussions similaires

  1. condition if qui ne fonctionne pas avec tous les elements
    Par oceane751 dans le forum Langage
    Réponses: 2
    Dernier message: 04/09/2008, 12h39
  2. un For Each qui ne fonctionne pas avec une collection maison !
    Par grenouillesiverte dans le forum Windows Forms
    Réponses: 7
    Dernier message: 01/09/2007, 21h00
  3. Réponses: 4
    Dernier message: 15/05/2007, 10h10
  4. tutoriel qui ne fonctionne pas avec glassfish
    Par dev7 dans le forum Glassfish et Payara
    Réponses: 1
    Dernier message: 13/04/2007, 17h25
  5. Réponses: 10
    Dernier message: 13/03/2007, 11h38

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