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 :

Mettre une apostrophe devant un champ avec condition !


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 Mettre une apostrophe devant un champ avec condition !
    Bonjour a tous,

    Je cherche une source de contrôle ou une fonction qui me permet d'introduire une apostrophe a des nom de champ de texte spécifique.

    Exemple:

    Mettre " d' " Si mon [Nom]=Arriel ----> alors j'obtiens d'Arriel.

    Merci beaucoup.

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Bonjour.

    À mettre dans un module

    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
    Public function GererElision(prmPrepostion as string, prmTexte as string) as string
         dim result as string
     
         select case right(prmTexte, 1)
            case "a", "â",  "e", "é", "ê", "è", "ë", "i", "o", "ô", "u", "y", _
                   "h"
               'Il faudra peut-être ajouter des voyelles accentuées
               ' Je ne suis pas sur pour le "h"
               result=left(prmProposition,1)
            case else
               result=prmPreposition
         end select
     
         if len(result)=1 then
               result=result & "'"
            else
               result=result & " "
         end if
     
         GererElision=resullt
    end function
    Pour l'utiliser :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =GererElision("de", [Nom]) & [Nom]
    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  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 Marot,

    Je ne sais pas pourquoi ça ne marche pas.

    En faite, je voulais faire cela dans un contenu de texte enrichi sur un Etat.

    Voici un quelques extrait:

    Sous la direction de Anne Dupont

    Sous la direction de Hugo

    Est-ce que je doit mettre le code en Déclaration ou sur le nom de mon champ ?

  4. #4
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Développeur VBA/C#/VB.Net/Power Platform
    Inscrit en
    Juillet 2007
    Messages
    14 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur VBA/C#/VB.Net/Power Platform
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 594
    Points : 34 263
    Points
    34 263
    Par défaut
    Salut,

    ici tu peux adapter le code propose en forcant la minuscule :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    select case LCase(right(prmTexte, 1))
            case "a", "â",  "e", "é", "ê", "è", "ë", "i", "o", "ô", "u", "y", _
                   "h"
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  5. #5
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Tu peux mettre la fonction dans le rapport si tu veux ou dans un module et l'utiliser quand tu mets en forme ton texte.
    Poste le code qui met ton texte en forme pour une réponse plus précise.

    Je ne sais pas pourquoi ça ne marche pas.
    Comment cela ne marche pas ?
    1. Cela ne fait rien
    2. Cela génère une erreur ? Si oui, laquelle ?
    3. Cela donne un résultat mais pas celui attendu. Si oui, lequel ?


    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  6. #6
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Un autre solution serait de remplacer le " de " par " : " comme cela tu n'as pas à gérer l'élision.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  7. #7
    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 ! vous avez raison Marot.

    Oui, j'ai obtenus seulement le contenu du champ, quelle il est.

    Mon champ contiens des adresses, alors je veut mettre l'apostrophe pas obligatoirement après chaque voyelle, mais je voudrai faire cela pour certains adresses à mon propre choix, ville: A, ville:B, ville:C...par exemple.

  8. #8
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Si tu ne garde pas l'idée des ":", il faudrait que tu en dises plus sur la façon dont tu remplis ton champ enrichi imprimé.

    Par exemple une copie d'écran du contrôle et de sa propriété source ou le code VBA utiliser pour composer le texte.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  9. #9
    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
    En fait, j'ai presque rien changé du tout dans les propriété des champs, mis à part le texte enrichi.

    Voir ci-joint, i'imprime de l'écran.
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. [AC-2010] Mettre à jour une case d'un champ avec plusieurs résultats ?
    Par Warwolf dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 19/10/2015, 12h58
  2. [CKEditor] impossibilité de mettre une apostrophe
    Par dedel53 dans le forum Bibliothèques & Frameworks
    Réponses: 2
    Dernier message: 08/03/2007, 13h16
  3. mettre une valeur a un champs dans un onglet..
    Par Fritzoune dans le forum Access
    Réponses: 2
    Dernier message: 03/03/2006, 14h33
  4. Renvoi d'une valeur dans un champ avec un style
    Par m@thieu dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 15/11/2005, 18h09
  5. [Interbase] Mettre une contrainte sur un champ
    Par mika dans le forum InterBase
    Réponses: 2
    Dernier message: 26/01/2005, 14h04

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