Bonjour à tous,

Je fais appel à vos méthodes pour forcer l'écriture alphabétique dans une textbox.

J'ai un USF qui fonctionne bien, sauf que à l'utilisation je me suis aperçu que des utilisateurs ne rentraient pas correctement le nom de l'opérateur, ils rentrent leur code identifiant (ex: Z854).
Je souhaiterai par codage les forcer à rentrer le nom

Ci dessous le code de l'USF
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
Private Sub CommandButton_Valider1_Click()
 
    Application.ScreenUpdating = False
 
'Activation de la feuille de recueil
    Worksheets("Recueil données").Activate
 
'Détermine la première ligne vierge sous le tableau
    no_lignes = Range("A" & Rows.Count).End(xlUp).Row + 1
 
'Copier la dernière ligne pour formater le remplissage
    Rows(no_lignes).Select
    Selection.FillDown
 
'Remplir les cellules avec les valeurs des ComboBox et TextBox
        Cells(no_lignes, 1) = Date
        Cells(no_lignes, 2) = ComboBox_Section.Value
        Cells(no_lignes, 3) = ComboBox_Auditeur.Value
        Cells(no_lignes, 4) = ComboBox_Poste.Value
        Cells(no_lignes, 5) = TextBox_Operateur.Value
'Ouvrir le questionnaire suivant
    Questionnaire1_Sécu.Show
 
'Fermer l'USF Formulaire
    Unload Me
 
End Sub
Private Sub userForm_Initialize()
    'Incrémantation de la date
    Label8.Caption = Date
    'Ajout des valeurs des cellules A1 à Y1 de l'onglet "Sections-Auditeurs"
    For i = 1 To 25 'Liste des sections
        ComboBox_Section.AddItem Worksheets("Sections-Auditeurs-Machines").Cells(1, i)
    Next
    no_lignes = 0
End Sub
Private Sub ComboBox_Section_Change()
    'Zone de liste vidée (sinon les valeurs s'ajoutent)
    ComboBox_Auditeur.Clear
    ComboBox_Poste.Clear
 
    Dim no_section As Integer, nom_auditeur As Integer, no_poste As Integer
 
    'Numéro de la sélection "section" (ListIndex commence à 0)
    no_section = ComboBox_Section.ListIndex + 1
    'Nom des auditeurs de la colonne section choisie
    nom_auditeur = Worksheets("Sections-Auditeurs-Machines").Cells(1, no_section).End(4).Row
    'Nombre de lignes poste de la colonne section choisie
    no_poste = Worksheets("Sections-Auditeurs-Machines").Cells(6, no_section).End(xlDown).Row
    For i = 2 To nom_auditeur
        ComboBox_Auditeur.AddItem Worksheets("Sections-Auditeurs-Machines").Cells(i, no_section)
    Next
    For i = 6 To no_poste
        ComboBox_Poste.AddItem Worksheets("Sections-Auditeurs-Machines").Cells(i, no_section)
    Next
End Sub
Private Sub CommandButton_Annuler1_Click()
  delete_form ("Formulaire")
  MsgBox "Etes-vous sûre de vouloir arrêter?", vbYesNo + vbQuestion
 
End Sub
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
    If CloseMode = vbFormControlMenu Then Cancel = True
End Sub
Private Sub TextBox_Operateur_keyPress(ByVal keyAscii As MSForms.ReturnInteger) 'Force les MAJUSCULSES
    keyAscii = Asc(UCase(Chr(keyAscii)))
End Sub
En vous remerciant par avance

Cdt