Comment convertir des valeurs de données du type de données Texte au format de casse approprié dans Microsoft Access

Modéré : nécessite des compétences de base en macro, en codage et en interopérabilité.

Cet article s’applique à un fichier de base de données Microsoft Access .MDB ou .ACCDB.

Résumé

Cet article explique comment convertir des valeurs de données du type de données Texte au format de casse approprié.

Informations supplémentaires

Les valeurs de données du type de données Texte peuvent être converties au format de casse approprié à l’aide de l’une des méthodes suivantes :

  • Méthode 1 : Utiliser la fonction de conversion de chaîne Built-In
  • Méthode 2 : Utiliser une fonction User-Defined

Note Avant d’utiliser l’une de ces méthodes, créez un exemple de table nommé MyTestTextList. Pour cela, procédez comme suit :

  1. Créez une base de données vide dans Access.

  2. Créez une table avec les champs suivants :

    Field Name: testText
    Data Type: Text
    
  3. Enregistrez la table en tant que MyTestTextList.

  4. Ajoutez l’exemple testText suivant à la table :

    the cOw jumped Over the MOON
    
    THE QUICK BROWN FOX jUmped over THE lazy DOG 
    
    
  5. Enregistrez la base de données sous MyTestDatabase.

Méthode 1 : Utiliser la fonction de conversion de chaîne intégrée

  1. Ouvrez la base de données MyTestDatabase dans Access.

  2. Dans le menu Insertion , cliquez sur Requête.

    Note Dans Microsoft Office Access 2007 ou une version ultérieure, cliquez sur Création de requête dans le groupe Autre sous l’onglet Créer .

  3. Dans la boîte de dialogue Nouvelle requête , cliquez sur Mode Création.

    Note Dans Access 2007 ou une version ultérieure, ignorez cette étape.

  4. Dans la boîte de dialogue Afficher la table , cliquez sur Fermer.

  5. Dans le menu Affichage , cliquez sur Affichage SQL.

    Note Dans Access 2007 ou une version ultérieure, cliquez sur SQL dans le groupe Résultats sous l’onglet Création .

  6. Tapez le code suivant dans la vue SQL :

    SELECT testText, STRCONV(testText,3) as  TestText_in_Proper_Case FROM MyTestTextList
    
  7. Dans le menu Requête , cliquez sur Exécuter.

    Note Dans Access 2007 ou une version ultérieure, cliquez sur Exécuter dans le groupe Résultats sous l’onglet Création .

    La sortie de la requête suit :

    TestTextTestText_in_Proper_Case
    the cOw jumped Over the MOONThe Cow Jumped Over The Moon
    THE QUICK BROWN FOX jUmped overTHE lazy DOG The Quick Brown Fox Jumped Over The Lazy Dog
    

Note La méthode StrConv(<Text,3>) convertit la première lettre de chaque mot du texte en majuscules. Ce comportement se produit uniquement lorsque les mots sont séparés par un espace ou un onglet. StrConv ne traite pas les caractères spéciaux, tels que - ou $, comme un séparateur de mots.

Méthode 2 : Utiliser une fonction définie par l’utilisateur

  1. Ouvrez la base de données MyTestDatabase dans Access.

  2. Dans le menu Insertion, cliquez sur Module.

    Note Dans Access 2007 ou une version ultérieure, cliquez sur la flèche déroulante sous Macro dans le groupe Autre sous l’onglet Créer .

  3. Tapez le code suivant dans le module actuel et enregistrez vos modifications.

    Function Proper(X)
    Capitalize first letter of every word in a field.
    
    Dim Temp$, C$, OldC$, i As Integer
    
    If IsNull(X) Then
    
    Exit Function
    
    Else
    
    Temp$ = CStr(LCase(X))
    
    ' Initialize OldC$ to a single space because first
            ' letter must be capitalized but has no preceding letter.
    
    OldC$ = " "
    
    For i = 1 To Len(Temp$)
                    C$ = Mid$(Temp$, i, 1)
                    If C$ >= "a" And C$ <= "z" And (OldC$ < "a" Or OldC$ > "z") Then
                          Mid$(Temp$, i, 1) = UCase$(C$)
                    End If
                    OldC$ = C$
             Next i
    
    Proper = Temp$
    
    End If
    
    End Function
    

    Note Vous devez spécifier Option Compare Database dans la section « Déclarations » de ce module pour que la fonction fonctionne correctement.

  4. Dans le menu Fichier , cliquez sur Fermer et Revenir à Microsoft Access.

    Note Dans le menu Fichier , cliquez sur Fermerpour Access 97.

  5. Dans le menu Insertion , cliquez sur Requête.

    Note Dans Access 2007 ou une version ultérieure, cliquez sur Création de requête dans le groupe Autre sous l’onglet Créer .

  6. Dans la boîte de dialogue Nouvelle requête , cliquez sur Mode Création.

    Note Dans Access 2007 ou une version ultérieure, ignorez cette étape.

  7. Dans la boîte de dialogue Afficher la table , cliquez sur Fermer.

  8. Dans le menu Affichage , cliquez sur Affichage SQL.

    Note Dans Access 2007 ou une version ultérieure, cliquez sur SQL dans le groupe Résultats sous l’onglet Création .

  9. Tapez le code suivant dans la vue SQL :

    SELECT testText, proper(testText) as  testText_in_Proper_Case FROM MyTestTextList
    

    Notez que cette requête est similaire à la requête dans la méthode 1. Ceci est à l’exception de l’appel de fonction.

  10. Dans le menu Requête , cliquez sur Exécuter.

    Note Dans Access 2007 ou une version ultérieure, cliquez sur Exécuter dans le groupe Résultats sous l’onglet Création .

    La sortie de la requête suit :

    TestTextTestText_in_Proper_Case
    the cOw jumped Over the MOONThe Cow Jumped Over The Moon
    THE QUICK BROWN FOX jUmped overTHE lazy DOG The Quick Brown Fox Jumped Over The Lazy Dog
    

Bien que la sortie des deux méthodes soit similaire, la méthode 2 vous offre la possibilité de sélectionner n’importe quel format de cas. Cela inclut un séparateur de mots choisi tel que - ou _. Vous pouvez définir le format de casse requis, ou vous pouvez définir un séparateur de mots. Vous pouvez le faire si vous modifiez la fonction Proper mentionnée à l’étape 3.