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

IHM Discussion :

Comment mettre en majuscule ce qui est saisi dans l'InputBox? [AC-2003]


Sujet :

IHM

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    132
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Septembre 2008
    Messages : 132
    Points : 61
    Points
    61
    Par défaut Comment mettre en majuscule ce qui est saisi dans l'InputBox?
    Bonjour tout le monde,

    Voici ma petit question du jour.

    Via un InputBox j'incrémente le nom d'une UT, grâce à ça:

    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
    Private Sub btn_ajout_ut_Click()
     
    'ajouter une ut dans tbl_ut
    Dim oRst As DAO.Recordset
     
    nouvelEnregistrement = InputBox("Entrez ci-dessous l'élément à rajouter dans la liste :")
    If nouvelEnregistrement = "" Or IsNull(nouvelEnregistrement) Then
    Exit Sub
    Else
    Set oRst = CurrentDb.OpenRecordset("select nom_ut from tbl_ut", dbOpenDynaset)
    While Not oRst.EOF
    If nouvelEnregistrement = oRst.Fields("nom_ut").Value Then
    MsgBox ("L'élément saisi existe déjà dans la liste.")
    Exit Sub
    End If
    oRst.MoveNext
    Wend
     
    With DoCmd
    .SetWarnings False
    .RunSQL "INSERT INTO tbl_ut(nom_ut) VALUES ('" & nouvelEnregistrement & "');"
    .SetWarnings True
    End With
    MsgBox ("L'élément " & nouvelEnregistrement & " a été ajouté à la liste.")
    End If
     
    End Sub
    Car malgré que j'ai mis >AAA;; dans le masque de saisi dans la table tbl_ut à nom_ut quand c'est saisi en minuscule, les nom_ut son bien en majuscule dans la table mais pas dans la zone de liste déroulante du formulaire.

    Comment faire pour que tout ce qui sera saisi par cette inputbox soit en majuscule (même si la personne oublie d'écrire en majuscule)?

    Ou il vaut mieux après mis à jour de la zone de liste déroulante que tout ce qui est écrit soit en majuscule? Et comment faire à ce moment là?


    Je vous remercie par avance pour votre aide.

  2. #2
    Expert confirmé Avatar de nico84
    Homme Profil pro
    Consultant/développeur ERP
    Inscrit en
    Mai 2008
    Messages
    3 108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant/développeur ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 3 108
    Points : 5 231
    Points
    5 231
    Par défaut
    Bonjour,

    Simplement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    nouvelEnregistrement = ucase(InputBox("Entrez ci-dessous l'élément à rajouter dans la liste :"))
    Le masque de saisie ne concerne que l'affichage et non le stockage

    Par ailleurs ces p... d'amerloques nous ont inventé les majuscules accentuées mais c'est une autre histoire

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    132
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Septembre 2008
    Messages : 132
    Points : 61
    Points
    61
    Par défaut
    Tu es mon idole nico84 merci beaucoup.

    Si je comprend bien si je met Lcase à la place de Ucase ça sera en minuscule.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    132
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Septembre 2008
    Messages : 132
    Points : 61
    Points
    61
    Par défaut Comment faire via inputbox pour que toutes les 1er lettre du mot soit en majuscule?
    Bonsoir,

    Pour éviter de créer un autre poste qui sera un complément pour celui-ci ^^.

    je voudrai savoir comment faire via l'InputBox pour que toutes les 1er lettre du mot soit en majuscule.
    ex: Sony Ericsonne, Jean-Paul.

    j'ai un module avec ce 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
    Public Function GetProperName(ByVal TextToConvert As String) As String
    Dim i As Integer
    Dim separateur
    separateur = Array(" ", ";", ":", "-", "~", "@", "_", "&", "*", "#", "'", Chr(160))
    TextToConvert = LCase(TextToConvert)
     
    'mettre la première lettre en majuscule
    TextToConvert = UCase(Mid(TextToConvert, 1, 1)) + Right(TextToConvert, Len(TextToConvert) - 1)
     
    'mettre en majuscule après chaque séparateur
    For i = 1 To Len(TextToConvert) - 1
        If UBound(Filter(separateur, Mid(TextToConvert, i, 1))) >= 0 Then
            TextToConvert = Left(TextToConvert, i) + UCase(Mid(TextToConvert, i + 1, 1)) + Right(TextToConvert, Len(TextToConvert) - i - 1)
        End If
    Next i
     
    GetProperName = TextToConvert
    End Function
    qui permet de mettre toutes les premières lettres de chaque mot en majuscule.

    Ce module est il utilisable pour l'inputbox, si oui comment faire ou il vaut mieux utiliser un autre code?

    je vous remercie par avance pour votre aide

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    132
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Septembre 2008
    Messages : 132
    Points : 61
    Points
    61
    Par défaut
    Après plusieurs test j'ai trouvé solution a mon problème.

    Voici le bout de code que j'ai mis.

    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
    Private Sub btn_ajout_marque_Click()
     
    Dim oRst As DAO.Recordset
     
    nouvelEnregistrement = GetProperName(InputBox("Entrez ci-dessous l'élément à rajouter dans la liste :"))
    If nouvelEnregistrement = "" Or IsNull(nouvelEnregistrement) Then
    Exit Sub
    Else
    Set oRst = CurrentDb.OpenRecordset("select nom_marque from tbl_marque", dbOpenDynaset)
    While Not oRst.EOF
    If nouvelEnregistrement = oRst.Fields("nom_marque").Value Then
    MsgBox ("L'élément saisi existe déjà dans la liste.")
    Exit Sub
    End If
    oRst.MoveNext
    Wend
     
    With DoCmd
    .SetWarnings False
    .RunSQL "INSERT INTO tbl_marque(nom_marque) VALUES ('" & nouvelEnregistrement & "');"
    .SetWarnings True
    End With
    MsgBox ("L'élément " & nouvelEnregistrement & " a été ajouté à la liste.")
    End If
     
    End Sub
    Et ca marche nickel chrome.

    Merci au developpezien(ne)s

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 04/04/2013, 10h37
  2. Réponses: 16
    Dernier message: 06/04/2007, 13h36
  3. Réponses: 5
    Dernier message: 18/01/2007, 20h09
  4. Réponses: 4
    Dernier message: 12/06/2006, 10h09

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