Neutraliser une touche pour l'enselmble des textbox

Goufra

XLDnaute Occasionnel
Bonjour à tous,


J'utilise ce code pour neutraliser 3 touches lors du servi du textbox

Private Sub TextBox4_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 8 Or KeyCode = 27 Or KeyCode = 46 Then
MsgBox "Cette touche provoque une erreur." & _
Chr(10) & "vous ne pouvez pa l'utiliser" 'Vous venez d'appuyer sur la touche ""Backspace"""
KeyCode = 0
End If
End Sub

Existe - t - il un moyen pour ne pas avoir à répéter 50 fois ce code dans un userform.
Je pense à une fonction qu'il faudrait mettre dans une routine, mais
je ne sais pas comment faire ni où placer la routine..

Je vous remercie par avance pour l'aide que vous pourrez m'apporter
bonne journée.
GOUFRA
 

Goufra

XLDnaute Occasionnel
Re : Neutraliser une touche pour l'enselmble des textbox

Bonsoir Papou-Net

Merci à toi, Cela diminue quelque peu la quantité de ligne.

J'aurais bien voulu me dispenser de ces 3 lignes par textbox

Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
Touche KeyCode
End Sub


J'utilise dans commandbutton1

For Each ctl In Me.Controls
If TypeOf ctl Is MSForms.TextBox Then
If ctl.text = "" Then
MsgBox "Saisie incomplète"
ctl.SetFocus
Exit Sub
End If

For Each ctl In UserForm1.Controls
colonne = Val(ctl.Tag)
If colonne > 0 Then Sheets("base").Cells(Derligne, colonne) = ctrl
Next
End If
Next

Si tu avais une idée de fonction, avoir un code élégant.

Encore merci pour ta réponse et l'élégance de ton code.
Bonne soirée
 

Papou-net

XLDnaute Barbatruc
Re : Neutraliser une touche pour l'enselmble des textbox

RE:

J'aurais bien voulu me dispenser de ces 3 lignes par textbox
Pour y parvenir, il faut passer par un Module de Classe, comme dans la copie en PJ. Tu pourras constater que les TextBox ne contiennent plus aucune ligne de code.

J'utilise dans commandbutton1
...
Si tu avais une idée de fonction, avoir un code élégant
Peux-tu préciser davantage ta pensée car j'avoue ne pas comprendre le sens de ta question. Un fichier exemple serait à mon sens souhaitable.

A +

Cordialement.
 

Pièces jointes

  • Exemple 01 Goufra.xlsm
    25.9 KB · Affichages: 32

Goufra

XLDnaute Occasionnel
Re : Neutraliser une touche pour l'enselmble des textbox

Re,
Merci infiniment.
Ce dernier code est très épuré. Ce que je recherchais.

Mais je suis incapable de reproduire tes codes sauf à les recopier !!!
Place à la réflexion.
Bonne nuit et encore merci.
Goufra
 

Papou-net

XLDnaute Barbatruc
Re : Neutraliser une touche pour l'enselmble des textbox

Bonjour Goufra,

Sans vouloir t'embrouiller l'esprit, mais juste pour te faire voir la puissance des modules de classe, voici un exemple avec deux types de TextBox intégrés dans des Frames.

Tu peux bien sûr masquer le cadre de ces Frames pour une présentation plus transparente (voir Démo 2).

En te souhaitant bon WE et bonne réflexion.

Cordialement.
 

Pièces jointes

  • Exemple 02 Goufra.xlsm
    33.6 KB · Affichages: 35

Goufra

XLDnaute Occasionnel
Re : Neutraliser une touche pour l'enselmble des textbox

Papou Net

Je te remercie infiniment pour ton complément d'informations.

Je vais donc pas à pas :

comprendre et apprendre à utiliser le code dans
Private Sub UserForm_Initialize()

Comprendre ce qu'est un module de classe et la relation entre le module1 et le module de classe

De quoi m'occuper.
Si tu le permets je reviendrais vers toi pour te dire que j'ai réussi à comprendre ... ou à compléter mes lacunes.

Je voudrais que tu saches que j'apprécie énormément ton implication à aller au-delà de la question à expliquer. C'est la première fois que je rencontre un tel intérêt de la part de quelqu'un qui dispose d'un savoir.



Encore une fois merci, Permets-moi de t'offrir un café ... virtuel !
Très cordialement
Goufra
 

Papou-net

XLDnaute Barbatruc
Re : Neutraliser une touche pour l'enselmble des textbox

RE:

Merci à toi pour ce retour.

Ton éloge, qui bien qu'excessif de mon point de vue, me fait très plaisir.

Je partage volontiers ton café et je te souhaite d'aboutir rapidement dans ta démarche.

A bientôt pour la suite de l'aventure.

Très cordialement.
 

Papou-net

XLDnaute Barbatruc
Re : Neutraliser une touche pour l'enselmble des textbox

Pour t'aider je viens de préparer, en toute simplicité, un petit PDF pour expliquer la logique de création d'un module de classe. Je pense qu'il te sera utile pour tes futures applications à venir.

Bon WE.

Très cordialement.
 

Pièces jointes

  • PROCÉDURE TYPE MODULE DE CLASSE.pdf
    321.8 KB · Affichages: 26

Goufra

XLDnaute Occasionnel
Re : Neutraliser une touche pour l'enselmble des textbox

Bonjour Papounet

fichier : Exemple 02 Goufra.xlsm‎

j’ai quelques incompréhensions concernant les codes utilisés ( quelques est un euphémisme.)

Avant de te solliciter je me suis replongé dans :
• la gestion des objets, notamment les boutons activex insérés dans une feuille
• Les modules de classe avec property let et get.
• Routine et sous routine.
• Les fonctions.

Bref je coince.

Je te sollicite donc au travers du fichier word joint. J’ai décrit mes incompréhensions j’espère avoir été compréhensible !!!

Dans la mesure de tes disponibilités, je te remercie de bien vouloir jeter un coup d’œil sur ma problématique.
J’ai cherché mais n’ai pas trouvé d’explication à mes interrogations.

Pardon de t’importuner.
Bonne soirée
Goufra
 

Pièces jointes

  • Questions Goufra.docx
    107 KB · Affichages: 25

Papou-net

XLDnaute Barbatruc
Re : Neutraliser une touche pour l'enselmble des textbox

Bonsoir Goufra,

Voici une copie commentée de ton fichier Word.

J'espère y avoir répondu clairement, car il n'est pas forcément facile d'expliquer le fonctionnement des modules de classe.

Restant à ton écoute.

Bien cordialement.
 

Pièces jointes

  • Réponse Questions Goufra-1.docx
    108.5 KB · Affichages: 22

Goufra

XLDnaute Occasionnel
Re : Neutraliser une touche pour l'enselmble des textbox

Bonjour papou-net
Merci à toi, je viens de lire tes réponses, je n'ai plus
qu'à les étudier pour me les approprier.
Je te recontacte pour te tenir informé.

Encore une fois merci pour ton aide.
Bien cordialement
Goufra
 

Goufra

XLDnaute Occasionnel
Re : Neutraliser une touche pour l'enselmble des textbox

Bonjour Papou-net,

Je suis navré mais je bloque avec l'écriture des codes concernant les objets.

Je te joins question 2, plus facile pour m'expliquer.
Bien cordialement
Goufra
 

Pièces jointes

  • Question3.docx
    16.9 KB · Affichages: 23

Papou-net

XLDnaute Barbatruc
Re : Neutraliser une touche pour l'enselmble des textbox

Bonjour Goufra,

J'espère avoir répondu à tes dernières interrogations car, comme je te le disais précédemment, il n'est pas évident d'expliquer clairement les modules de classe.

Bonne journée.

Cordialement.
 

Pièces jointes

  • Réponse Questions Goufra-2.docx
    17.5 KB · Affichages: 30

Discussions similaires

Statistiques des forums

Discussions
312 112
Messages
2 085 415
Membres
102 885
dernier inscrit
AISSOU