Userform : comment modifier et supprimer un enregistrement

Bonjour Banzai64, Le Forum

Je reviens vers vous avec le fichier joint modifié.

Feuille perfs

-J'arrive (enfin) à appeler les données dans l'USf

Il reste cependant plusieurs problèmes, mais je ne vais pas en énumérer plus de 2 par post.

1- je n'arrive pas à afficher les listes d'infos dans les 3 lst_box qui proviennent des 3 autres feuilles.

L'erreur doit être évidente, je suppose, mais je ne la vois pas

2-Lors de l'action sur le bouton Valider/modifer de la l usf Perf, un bug survient avec un msg "erreur compilation-membre de données introuvable"

Private Sub Cmd_ValidPerf_Click()
' Valider/Modifier
Dim Recherche As String
Dim Cel As Range
Dim Ligne As Long
Dim Msgchrono As String
Dim MsgTitre As String
Dim MsgCatEpreuve As String
Dim MsgCatAth As String
Dim CtrlChrono As Control
Dim CtrlTitre As Control
Dim CtrlCatEpreuve As Control
Dim CtrlCatAth As Control

  ' Contrôle les données saisies
  'les infos nominatives
  If Me.Txt_NivEpreuve = "" Or[b] Me.Txt_Perf[/b] = "" Or Me.Txt_Rang = "" Then
    MsgBox " Le niveau, la Performance et le Rang sont obligatoires", vbExclamation, strAppName
    Me.Txt_SaisonCompet.SetFocus
    Exit Sub

Quelqu'un pourrait-il m'aider?

merci

Cordialement

Etoile

Bonjour

Ton code devient imbuvable

Il y a des mélanges un peut partout

J'en ai corrigés quelques un

Il y a une option intéressante dans l'éditeur VB

Menu Débogage --> Compiler VBA Project

L'interpréteur te signalera les incohérences (contrôle inexistant, erreur de syntaxe, variable inconnue etc ....)

La multiplication des variables alourdit inutilement la compréhension du code

Dim CtrlCategAth As Control
Dim CtrlcategEpreuve As Control
Dim CtrlTitre As Control
Dim CtrlChrono As Control

Fais des essais complets

Bonjour

merci pour ces nouvelles modifications.Je m'empresse de le lire

Ton code devient imbuvable

Est ce le fait d'avoir beaucoup d'infos ? ou c'est le code en lui même?

Que faire alors pour qu'il soit buvable?

Désolé, je suis novice et j'ai fait nuit blanche alors je me suis mélangé certainement les pinceaux.

Je dois essayer de comprendre le code avant de le transposer

Merci pour l'apprentissage.

"La multiplication des variables alourdit inutilement la compréhension du code"

Y a t il plus simple?

Je pensais justement (à mal donc) que plus on définissait de variables, plus on savait ce qu'elle faisait.

Merci encore

Etoile

Bonjour

Il y a tellement de contrôles, et on ne sait plus à quelle partie de l'userform cela correspond

Pour une personne qui n'a pas fait le code c'est assez compliqué de suivre

Mais à force de lire et relire on arrive à comprendre

Même toi tu arrives à te mélanger

Des contrôles inexistants

Me.Txt_CodeCompet
Me.Txt_Rang
Me.Txt_NomPerf
Me.Txt_Datenaiss

Surement d'autres

Et le fait d'utiliser plusieurs variables de même type n'amène pas une meilleure lisibilité (mon avis)

Généralement on utilises plusieurs variables dans le cas où il y besoin d'avoir ces variables en même temps, ou qu'on a besoin de garder des valeurs

Déclarer une seule variable pour le tyoe Control aurait suffit

Ne te formalises pas trop ce n'est que mon avis

Bonjour

Merci pour ces éclaircissements.

Crois tu que je dois changer les Ctrl ou vaut mieux laisser maintenenat que c'est fait. Je en suis plus à ça près, mais au moins j'y comprends un peu mieux.

Effectivement j'avais rechangé les noms en ajoutant "Ath" et je mettais "Licencie", !!! sic

et en faisant remplacer par, une lettre en trop s'était glissée (re-sic)

je m'attaque à la suite et je renvoie le fichier

Encore 1000 fois mercis.

Cordialement

Etoile

Bonjour

Pour te dire que si j'avais fait le programme, je pense (mais pas trop étudié la question) que je l'aurai fait autrement

Le principal c'est que TOI, tu t'y retrouves

Regardes le code tu trouveras des ???????, à toi de corriger

Il me semble que des messages ne sont peut-être pas ce que tu attends, mais si rien ne te parait bizarre alors c'est que je me suis fait des idées

Bonjour Banzai64, le Forum

J'ai vu le projet dans ce sens, mais sans avoir l'esprit "code", donc tu aurais forcément mieux fait avec tes connaissances. Certains amis me disent d'aller sur access ou windev, mais je reste persuadé de la facilité d'utilisation d'excel...

Ce projet sert à archiver des performances athlétiques, tu t'en doutais certainement pour après créer des états statistiques, lister l'évolution de records etc....

Je finis avec les lst.

Voici mes questions suivantes :

"Feuille Perfs"

1-LstEpreuve :

Comment afficher les infos dans le cadre déroulant lst_Epreuve ?

Les infos (Txt_NomEpreuve) sont stockées dans la colonne L de la feuille paramètres

2- Infos recherches :

Quand on click sur une info de la lst-Epreuve, 2 données s'alimentent dans l'USf perf (elles sont sur fond rouge)

le Txt_GrEpreuve et le Txt_NomEpreuve. Je pensais à une recherche avec fonction index/equiv??

3-USF Compétition de la Feuille compétitions

Il y a une cellule le N° de Compétition en colonne J qui est dans l'Usf sur fond Rouge.

Ce N° est en fait une concatenation de la date de Compétition (txt_dateCompet) mis en format US "yyyy-mm-dd" puis le signe"/" puis en fait un n° 001, 002, 003, 004 qui se mettrait automatiquement.

C'est à dire si le n° n'existe pas alors c'est 001, s'il existe c'est alors le dernier+1

4-

Regardes le code tu trouveras des ???????, à toi de corriger

"J'ai bien vu les "???" dans le "Private Sub Cmd_ValidPerf_Click()" , je vais y répondre.

Voici donc les explications

Quand on crée un Nouvelle Perf ou on modifie

5- Usf Perf et Perf Formatée : txt_Performate

selon les épreuves (Courses Chronométrées, Courses Mesurées, Sauts mesurés) la performatée sera différente

Courses Chronométrées, = - perf => ex 1'50"00 au 800m => -1.5000

Courses Mesurées, =perf => Heure 20km450 => 20.450

Sauts mesurés, =perf ==> Hauteur =1m95 => 1.95

Officiel = perf ==> juge = 1 pt ==> 1.0

6-Usf Perf et Age en année : Txt_AgeanAth

C'est la différence entre Txt_anneeDateCompet et txt_anneeDatenaiss

Je pense à une formule Cint(Txt_anneeDateCompet-txt_anneeDatenaiss)

MAis comment la "valider" dans txtbox?

et le plus compliqué selon moi mais certainement pas pour les experts

7-Usf Perf et Age en année&Jour :Txt_AgejourAth

J'ai pensé utiliser DAteDIf (d1;d2;"y") et DAteDif(d1;d2;"yd") afin que le format soit

ex: 12ans125jours (12,125)

Même problème pour créer dans le Txt_box

8-Bouton newSource+ / NewLicencié+/NewCompet+

Ces boutons sont dans l'USF perf et demandent aux autres USf de s'afficher en cas de click au dessus de l'USF Perf pour création ou modification.

Quelle est la méthode pour les appeler?

Merci encore de tout ton altruisme pour aider les novices comme moi

Très cordialement

Etoile

Bonjour Banzai64, le forum

le projet avance (cf pj) bien

Il reste cependent quelques problèmes

1- Sur la page MENU les procédures ne fonctionnent pas

a. Les Useforme ne veulent pas s’afficher qd on click sauf pour Licenciés !!!!!!

b. Ce problème existe aussi quand on clic sur les boutons jaunes de la feuille perfs qui appellent les mêmes useforme

c. Est-ce un problème de mémoire d’appel load/unload?

2- Sur la feuille Compéts

Je souhaiterais qu’automatiquement la création du le n° Compét/Saison

Il se crée en concatenant la date (au format aaaa-mm-dd) et un n° 0001 à X en vérifiant dans la colonne (colonne J de la feuille perf) quil n’existe pas déjà (doublon)

3- LA feuille performance

Quand je click sur « nom niveau epreuve » (= serie, finale etc…) et que je mets un n° dans (+N°) ; le tout devrait s’afficher dans nom+n

Mais cela s’affiche que si je reclick sur Nom niveau !!!!

4- Feuille perf: Je n’arrive pas à faire une recherche index/equiv pour trouver la catégorie actuelle (age dans la feuille paramètre), c’est expliqué dans la procédure Sub

5- Et je galère toujours pour trouver l’age en année,jours (j’avais trouvé datedif sur excel mais cela ne fonctionne pas sur vba, le format "yd" n'existe aps)

MERCI pour vos éclaircissements

Cordialement

Etoile

Bonsoir

J'ai essayé d'apporter quelques réponses

Pour la question 4 et 5 et manque des explications

etoile a écrit :

c’est expliqué dans la procédure Sub

Laquelle ?

etoile a écrit :

Et je galère toujours pour trouver l’age en année,jours

Où ça ?

Bonjour Banzai64 (de retour sur le forum, super ) et le forum

merci pour le v21, je vais regarder de suite après mes réponses à tes questions

4- Feuille perf: Je n’arrive pas à faire une recherche index/equiv pour trouver la catégorie actuelle (age dans la feuille paramètre), c’est expliqué dans la procédure Sub Calcul_Categ_Actuelle_Ath() mais mon code est faux

Private Sub Calcul_Categ_Actuelle_Ath()
Dim vaR As String
   'Calcul de la catégorie actuelle du licencié lors de la perf/mise à jour de la catég
      ' sous excel = recherchev(cnum(Txt_AgeanAth); parametres!a2:b25;1)
    'Me.Txt_CategActu.Value = Application.VLookup(CInt(Me.Txt_AgeanAth.Value), Sheets("parametres").Range("$A$2:$B$25"), 2, False)

     If Me.Txt_AgeanAth.Value = "NC" Or Me.Txt_AgeanAth.Value = "" Or Not IsDate(Me.Txt_DateCompet.Value) Then
     vaR = ""
      Else
      vaR = Application.VLookup(CDbl(Me.Txt_AgeanAth.Value), Sheets("Parametres").Range("A2:B25"), 2, False)
     End If

'     MsgBox (vaR)
     Me.Txt_CategActu.Value = vaR

5- Et je galère toujours pour trouver l’age en année,jours (j’avais trouvé datedif sur excel mais cela ne fonctionne pas sur vba, le format "yd" n'existe pas)

Private Sub Calcul_ages_Ath()
Dim VarAgean As Integer
Dim VarAgejour As Single

  '1er calcul -------- Age en année = Annee(Datecompet)-AnneenaissAth
    If Not IsDate(Me.Txt_DateCompet.Value) Then Me.Txt_AgeanAth = "NC"

    If IsDate(Me.Txt_DateCompet.Value) Then
    VarAgean = Year(Me.Txt_DateCompet.Value) - Me.Txt_AnneenaissAth.Value

    Me.Txt_AgeanAth = VarAgean

    End If

  '2e calcul ------ Age en annee,jour = varAgean + (datedif(Me.txt_DatenaissAth, Me.txt_DateCompet,"yd")*0.001)
   'VarAgejour = VarAgean + (DateDiff("y", Me.Txt_DatenaissAth.Value, Me.Txt_DateCompet.Value) * 0.001)
    'Me.Txt_AgejourAth = VarAgean

End Sub

il reste bien le calcul approximatif pour trouve AgeAnjour, c'est un peu alambiqué

vartotjour= Datediff("d",datenaissance,datecompet)

varAgeAn=ent(var1)

varNbjour = ( (var1-var2)/365 ) -1

AgeAnjour=varAgeAn+(var3*0,001)"jour"

Merci

cordialement

Etoile

Rebonsoir Banzai64, Le forum

dans la version v021,

tu as répondu

à la question1.

==> j'aurais aimé connaitre comment tu as réparé ce bug.

==> un petit autre bug existe cependant : Lors du click sur n'importe quel bouton usf; Puis sur les boutons jaunes permettant la création, le N° d'enregistrement automatique revient à 1 au lieu de prendre application.max+1.

à la question 2 : Sur la feuille Compéts

[quote]Je souhaiterais qu’automatiquement la création du le n° Compét/Saison

Il se crée en concatenant la date (au format aaaa-mm-dd) et un n° 0001 à X en vérifiant dans la colonne (colonne J de la feuille perf) quil n’existe pas déjà (doublon)[/quote

==>Super ça marche bien

à la question 3:- LA feuille performance

[quote]Quand je click sur « nom niveau epreuve » (= serie, finale etc…) et que je mets un n° dans (+N°) ; le tout devrait s’afficher dans nom+n

Mais cela s’affiche que si je reclick sur Nom niveau !!!! [\quote]

Impeccable merci

j'ai hâte de voir q4 et q5.

solution de Jean-Eric

Option Explicit
Public Function nb_Années(d1 As Date, d2 As Date) As Long
' DateDiff arrondit le résultat.
' Si on cherche le nombre d'années entre deux dates et que ces dates ne
' sont séparées que de 11 mois, il renverra 1 an.
' Pour éviter cela, après avoir récupéré le nombre,
' on teste si la (Date1 + Nombre) > Date2, c'est qu'il y a eu un arrondi.
' Dans ce cas, on enlève 1.
   nb_Années = DateDiff("yyyy", d1, d2)
    If DateAdd("yyyy", nb_Années, d1) > d2 Then nb_Années = nb_Années - 1
End Function
Public Function nb_Jours(d1 As Date, d2 As Date) As Long
' 365.25 jours en moyenne avec années bissextiles.
   nb_Jours = DateDiff("d", d1, d2)
    nb_Jours = nb_Jours - 365.25 * Int(nb_Jours / 365.25)
End Function

Cordialement

Etoile

Bonjour

Pas tout compris pour le calcul de l'age : Pourquoi la date du concours ?

A tester et à dire ce qui ne va pas

etoile a écrit :

==> j'aurais aimé connaitre comment tu as réparé ce bug.

Je pense que cela venait de tes tris

Rappel : On ne tri pas la base APRÈS avoir initialisé la ListBox

etoile a écrit :

==> un petit autre bug existe cependant .......

Lors du calcul de la variable LeMax il faut préciser la feuille

LeMax = Application.WorksheetFunction.max(WsBase.Range("A:A"))

Tu verras que dans le code je n'ai pas fait comme Jean-Eric

Je m'étais aperçu de l'erreur sur le nombre d'année

J'utilise DateDiff (yyyy) pour les ans

Ensuite je rajoute les années trouvées à la date de départ et si cette date dépasse la date de fin j'enlève 1 année

Pour le nombre de jour

J'utilise DateDiff (d) entre la date de départ + nombre année et la date de fin

Voila

Bonsoir Banzai64, Le forum

je m'y colle merci

Pas tout compris pour le calcul de l'age : Pourquoi la date du concours ?

=> Le but de l'age au jour de la compét permet de trouver "le plus jeune", "le plus vieux"

c'est pour cela que le nombre de jours est important à connaitre.

On va en parler en juin prochain au Brésil,

on saura qui est le plus jeune sur le terrain, il a 16ans et... jours.

Merci

etoile

Bonjour Banzai64, le forum

merci pour cette avancée.

1-usf perf: Age:

  • > il ne peut pas avoir d'age négatif (msgbox doit le rappeler si cela arrive et remettre à 0)
  • >Pbleme avec le cas Denis albert/1996: mauvais affichage des ages NC (il y en a d autres dans ce cas
  • > l'age dans l'année : veut dire si je suis né en 31/12/1980 et la compét 1/1/1990 = j ai 10 ans par 9 par contre en ageAnjour =9,xxx.
  • > dans la feuille le format de age = 00,000 mais dans la textbox "00 Ans et 000 jours"

2- Problème de validation usf compet

"ca ne doit pas arriver" => mais quoi exactement?

3-usf perf - categ actuelle

la categactu ne s'affiche pas dans al txt_box

Private Sub Calcul_Categ_Actuelle_Ath()
Dim vaR As Variant
   'Calcul de la catégorie actuelle du licencié lors de la perf/mise à jour de la catég
      'recherchev(cnum(Txt_AgeanAth); parametres!a2:b25;1)
    'Me.Txt_CategActu.Value = Application.VLookup(CInt(Me.Txt_AgeanAth.Value), Sheets("parametres").Range("$A$2:$B$25"), 2, False)

     If Me.Txt_AgeanAth.Value <> "NC" Then
      vaR = Application.VLookup(CInt(Me.Txt_AgeanAth.Value), Sheets("Parametres").Range("A2:B25"), 2, True)
     End If
    'MsgBox (vaR)
     Me.Txt_CategActu.Value = vaR

encore merci

(bonne nuit)

cordialement

Etoile

Bonjour

C'est bien d'énumérer les défauts, mais il faut que tu détailles les actions à faire pour constater ces défauts

etoile a écrit :

Pbleme avec le cas Denis albert/1996: mauvais affichage des ages NC (il y en a d autres dans ce cas

Celui-ci j'ai trouvé

C'est normal pas de date de naissance

A suivre

Bonjour BAnzai64, le forum

Banzai64 a écrit :

Bonjour

C'est bien d'énumérer les défauts, mais il faut que tu détailles les actions à faire pour constater ces défauts

Je devrais me coucher plus tôt ça irait mieux

Je pense avoir trouver une solution pour les conflits de dates et les ages

MAis les ages sont la concatenation de numeriques & textes sous forme 0,000 et 00

Je souhaiterais que dans la feuille, les ages apparaissent en numérique sauf

"Trop jeune ou pas né", "Date Compet invalide"

et que lorsque ils sont dans les text-box du usf, il y ait

& "ème année" et & "an" & " jours"

Comment procéder?

2- De ces formats numeriques 0.000 ou 00 pourra en découdre la recherchev de la categactuelle en txt_box

Private Sub Calcul_Categ_Actuelle_Ath()
Dim vaR As Variant
   'Calcul de la catégorie actuelle du licencié lors de la perf/mise à jour de la catég
      'recherchev(cnum(Txt_AgeanAth); parametres!a2:b25;1)

     If Me.Txt_AgeanAth.Value <> "NC" Then
      'vaR = Application.VLookup(CInt(Me.Txt_AgeanAth.Value), Sheets("Parametres").Range("A2:B25"), 2, True)
     End If

     'Me.Txt_CategActu.Value = vaR

3-Code

Est ce possible que dans les toutes les feuilles , quand on rentre les infos au clavier,

le code-enregistrement de la feuille s'affiche au fur et à mesure dans la box_txt?

merci

cdl

Etoile

Bonsoir

Je ne sais pas si j'ai bien compris

J'espère avoir répondu à tes questions (seulement aux 2 premières)

Pour la 3ème question tu en est capable de le faire, il faut travailler avec les événements Change des contrôles qui entrent dans la composition de ce code

A tester

Bonjour BAnzai64, Le forum

Merci pour la version v026 et pour les futures

1- private_Change

j'ai mis les procédure private _change avec les concatenations

Mais comment les activer?

2- Feuille PErf:

Si je choisi un licencié ou équipe avec ???? comme Annee naissance,

puis une compét

un bug type 13 surgi au niveau , pourtant je crois que le blocage existait

    If Abs(Year(CDate(Me.Txt_DateCompet.Value)) - Me.Txt_AnneenaissAth.Value) < 6 Then 'Si (Année de Naissance  Annee de compet

3- Catégorie actuelle (avec Str et Replace)

J'ai changé les textes possibles dans Me.txt_AgeAnAth et Me.txt_AgeJourAth

voici les solutions texte

'Date Compet invalide

'Trop jeune ou pas né(e)

'Pas de Date de naissance

'Année Civile des " & VarAgean & " ans"

'NbAn & " ans et " & DateDiff("d", DateAdd("yyyy", NbAn, CDate(Me.Txt_DatenaissAth)), CDate(Me.Txt_DateCompet)) & " jours"

La procédure Calcul_Categ_Actuelle_Ath() ne donne plus le résultat attendu (0.000 ou 00)

peux tu y remédier?

Private Sub Calcul_Categ_Actuelle_Ath()
Dim vaR As Variant
   'Calcul de la catégorie actuelle du licencié lors de la perf/mise à jour de la catég
      'recherchev(cnum(Txt_AgeanAth); parametres!a2:b25;1)
    'Solutions possibles
      'Date Compet invalide
      'Trop jeune ou pas né(e)
      'Pas de Date de naissance
      'Année Civile des " & VarAgean & " ans"
      'NbAn & " ans et " & DateDiff("d", DateAdd("yyyy", NbAn, CDate(Me.Txt_DatenaissAth)), CDate(Me.Txt_DateCompet)) & " jours"

    If InStr(1, Me.Txt_AgeanAth, "année civile des ") > 0 Then
    vaR = Replace(Me.Txt_AgeanAth, "année civile des ", "")
    MsgBox (vaR)
     ' vaR = Application.VLookup(CInt(Replace(Me.Txt_AgeanAth, "ème année", "")), Sheets("Parametres").Range("A2:B25"), 2, True)  

     End If

    Me.Txt_CategActu.Value = vaR

End Sub

4- A la fin de la procédure Private Sub lst_Perf_Click(),

je souhaiterais que le département et la ligue du club soit validés dans la feuille perf lors du click sur bouton validation

    'les infos clubs
    Me.Txt_NomClubAth = .Range("AE" & Ligne)

    'Recherche du département?????????????????????????????
      'VArDepart = recherchev(Me.Txt_ClubAth,paramètres!A4:g3000;2)
      'VArDepart = .Range("AF" & Ligne)

    'Recherche de la ligue?????????????????????????????
      'VArLigue = index(f4:f3000;equiv(Me.Txt_ClubAth,b4:b3000,1),1)
       'VArLigue = .Range("AG" & Ligne)

    '.Recherche Date approximative (v/"")
     'Me.Cb_DateCompetApprox= Range("AH" & Ligne)

     Me.Txt_PerFormatElec = Range("AI" & Ligne)       'Perf format chrono electrique

  End With
End Sub

5- Ecriture de Me.Txt_Perf

On rentre une performance sans "virgule"

ex 60m (chrono electrique) = 795 (au clavier) et ce pour toute les perfs "chronométrées"

=> 7"95 dans me.txt_perf et 7"95 dans la colonne O de la feuille Perfs

=> -7.95 me.txt_performat et "-7.95" Me.Txt_PerFormatElec

ex 60m (chrono manuel)= 78 (au clavier) =

=> 7"94 dans me.txt_perf et 7"94 dans la colonne O de la feuille Perfs

=> -7.94 me.txt_performat et -7.94 Me.Txt_PerFormatElec

ex Longueur (chrono vide) = 795 (au clavier) et pour toutes les perfs "métriques"

=> 7m95 dans me.txt_perf et 7m94 dans la colonne O de la feuille Perfs

=> +794 me.txt_performat et +794 Me.Txt_PerFormatElec

Le détail des formats des Groupes-épreuve se trouve dans la feuille paramètre, colonne N

Peux tu coder la variable? et inversement quand elle arrive dans le txtbox

6-Perf Format Electrique = Me.Txt_PerFormatElec = .Range("AI" & Ligne)

La création de cette perf format electrique ne peut se faire que si la performance est chronométrée

type chrono= "M" ou "E"

Frame : Fr_Chrono

Me.Opt_Ma

Me.Opt_El

Me.Opt_Vide

si la course est < 400m alors Me.Txt_PerFormatElec = Me.Txt_Perf + 0.24

Sinon Me.Txt_PerFormatElec = Me.Txt_Perf + 0.14

=>Peux tu coder la variable?

je suis à ton écoute pour tout autre renseignement

Merci d'avance

Etoile

Bonjour

Stop

Devant l'ampleur de tes réponses, cela ne m'engage pas à répondre

Trop de problème à la fois

Tu modifies le code et ensuite tu t'aperçois qu'il ne fonctionne plus et tu viens taper à la porte

On repart d'un programme qui fonctionne ( la version 26 -peut-être) et on traite problème après problème

Tu m'indique ce que tu as modifié (ou ce que tu voulais faire) et si cela ne fonctionne pas tu poses la question, on traite ce problème (pas sur que je puisse trouver une solution)

A un certain moment je t'ai dit que ton code devenait imbuvable, et c'est le cas, je m'y perd à essayer te suivre ton raisonnement

Toi tu connais ton code surement plus que moi, alors quand tu vois le nom d'un contrôle tu sais à qui il correspond, moi il faut que je cherche et ce n'est pas évident

etoile a écrit :

1- private_Change

j'ai mis les procédure private _change avec les concatenations

Mais comment les activer?

On traite ce problème

Pas besoin de les activer, ce sont des procédures événementielles, elles se déclenchent automatique lorsque le contrôle correspondant est modifié

Exemple pour Usf_Clubs, il faut travailler avec les contrôles Txt_ClubLigue, Txt_ClubDep et Txt_ClubNom

Quand ce problème sera réglé on passe au suivant

Mais comme tout tes problèmes sont différents tu peux ouvrir d'autres sujets avec eux

Bonjour Banzai64..

je comprends vu la longueur du code que je pose 1 question à la fois.

Commençons par la 1/

Pas besoin de les activer, ce sont des procédures événementielles, elles se déclenchent automatique lorsque le contrôle correspondant est modifié

Exemple pour Usf_Clubs, il faut travailler avec les contrôles Txt_ClubLigue, Txt_ClubDep et Txt_ClubNom

Dans l'USf Clubs, j'ai placé cette procédure dans le code

Private Sub Txt_ClubCode_Change()
  Me.Txt_ClubCode = Me.Txt_ClubLigue & "/" & Me.Txt_ClubDep & "/" & Me.Txt_ClubNom
End Sub

Cependant le code ne se met pas automatiquement quand je rentre l'info

Qu'ai je oublié de mettre ?

Quand j'aurais compris pour celui-là, je pourrais le faire pour les autres.

merci

Etoile

Rechercher des sujets similaires à "userform comment modifier supprimer enregistrement"