XL 2021 numérotation CheckBox

nano33320

XLDnaute Junior
Bonjour à toutes et tous

Le sujet qui me perturbe aujourd'hui est un soucis de numérotation de CheckBox dans un UserForm.
J'utilise 3 UserForm quasi identique dans un outil de gestion des membres d'une asso.
"Nouvel Adhérent" / "Mise à Jour Adhérent" / "Information Adhérent"
Leurs CheckBox sont numérotés de 1 à 14 (activités).
Sauf que pour l'UserForm ci-dessous 8 CheckBox sur les 14 ont leur numéro qui a été changé dans Excel (ceux marqués), pour quelle raison ? Excel a ses raisons...???
Quand je veux réattribuer les numéros conformes au programme, j'ai un refus de VBA... ???
1710489568486.png

1710489632081.png

Pour les 2 autres UserForm identiques à la finalité et couleur près R.A.S. tout est Ok.
Dans le même UserForm le même problème se produit aussi pour le TextBox13 que j'ai dû renommer TextBox013

J'ai déjà rencontré ce problème une fois avec ce même UserForm,
je l'avais résolu en supprimant l'UserForm et en le recréant (j'avais conservé le code) mais c'est plutôt lourd...
Problème déjà rencontré 2 fois, pourquoi pas 3 ???
😵‍💫
Les macros fonctionnent, puis je constate un dysfonctionnement à l'affichage => n° changé... Pas Cool...
😣
Si vous avez une idée de l'origine de ce problème, et m'aider à le corriger
vous m'enlèveriez une belle épine du pied...

Merci de votre aide
Nano
 

nano33320

XLDnaute Junior
Bon, j'ai essayé mais je bloque...
Tu peux les compter par [=NBVAL(ListAdherents[Nom]) ] Sexe etc... dans la feuille d'accueil
J'ai essayé, c'est super mais maintenant que l'on unifie les 2 bases (année en cours plus années antérieures avec une colonne année, sur la feuille de synthèse, il faudrait modifier la formule pour intégrer l'année..
Formule donnant pour résultat par exemple [Nbre Adhérents sur 2024] => comptage sur 2 colonnes liées [Année] & [Adhérents]...
' ------------
J'ai trouvé pour le Nbre d'adhérent de l'année [=NB.SI(ListAdherents[Année];"2024")]
Mais pas pour le reste Nbre d'hommes/Femmes/Activité/... sur l'année je retombe sur le pb ci-dessus
 
Dernière édition:

nano33320

XLDnaute Junior
Bonsoir TooFatBoy et JCF
Bonsoir Patrick


J'espère que vous avez tous passé un bon WE Pascal...

Patrick, le classeur résultant de tes contributions, fonctionne plutôt bien.

J'ai eu quelques sueurs froides car ça fonctionnait dans le fichier avec l'UserForm que tu as fourni mais le même UserForm ne fonctionnait pas dans mon fichier (???)
J'ai supposé que la compilation avait buguée, j'ai fait un copié collé de la ligne à problème => c'était Ok Whaaoouu...
👍👍😎
J'ai procédé à quelques ajustements de présentation et paramétrages complémentaires, c'est vraiment super !!!
Toutes les fonctionnalités que je souhaitais sont opérationnelles...
Un très grand merci à toi, à ta patience et pour le temps que tu y as passé.

Merci aussi à vous deux (TooFatBoy et JCF) car j'ai compris entre les lignes que vous aviez suivi et procédé à quelques tests en toute discrétion (😌).
Et puis, je ne peux que confirmer ce que tu as écrit
TooFatBoy, Patrick est une personne peut-être "soupe au lait" mais très généreuse...

Il me reste juste un point mineur d'ergonomie à traiter, sur les 3 TextBox des "Code Postal"(1) et "Téléphone"(2)
Pour sortir des TexBox ni la tabulation ni le retour chariot ne fonctionnent... (ce sont les seuls avec ce problème ce sont aussi les seuls, hors date, avec un "formatage" imposé). Il faut positionner obligatoirement la souris sur le suivant.
J'ai essayé avec "TextBox_Change()" sans résultat...

Bonne route à vous
au plaisir de nouveaux échange.

Cordiales salutations
Nano​
 

nano33320

XLDnaute Junior
Bonjour Patrickj, JCF et TooFatBoy

J'espérais bien en avoir fini avec ce dossier puisque le fichier fonctionne très bien sur mon PC.
Je l'ai transféré sur mon cloud il fonctionne aussi :)
Je l'ai mis sur une clef USB => il fonctionne...

MAIS, je me connecte avec un autre PC (en local/sur clef USB/sur le cloud) :
=> Pour les modifications d'adhérent fonctionnent, c'est bien ce que j'attendais :)
=> Pour l'ajout d'un nouvel adhérent ... il plante... 😰, là je ne comprends plus...​
L'autre PC (Surface Pro) est sur les mêmes versions Windows (23H2) et Excel (office) 2021 pro.

Le point de plantage est le même que celui qui m'avait créé des soucis précédemment soit : "Set R = ThisWorkbook.Sheets("Liste de Noms").Range("ListAdherents").ListObject.ListRows.Add.Range"
dans le UserForm1 => l'ajout d'une ligne au tableau pour insérer le nouvel adhérent.

Complètement dépassé, je suis à l'affût de vos lumières expertes...

Cdlt
Nano
 

nano33320

XLDnaute Junior
Un complément de taille...
J'ai fait un autre essai sur le portable de ma femme (autre Surface Pro même config) ET ÇA fonctionne !
Donc le problème semble lié à un PC. Mais pourquoi ? Et vais-je rencontrer le même dysfonctionnement avec d'autres PC ??? Grrr
Nano
 

TooFatBoy

XLDnaute Barbatruc
Le point de plantage est le même que celui qui m'avait créé des soucis précédemment soit : "Set R = ThisWorkbook.Sheets("Liste de Noms").Range("ListAdherents").ListObject.ListRows.Add.Range"
dans le UserForm1 => l'ajout d'une ligne au tableau pour insérer le nouvel adhérent.
As-tu toujours le problème si tu découpes cette action en deux étapes, genre ceci :
VB:
Range("ListAdherents").ListObject.ListRows.Add
Set R = Range("ListAdherents[#Headers]").Offset(Range("ListAdherents").ListObject.ListRows.Count)
 

TooFatBoy

XLDnaute Barbatruc
sérieux @TooFatBoy tu veux le faire travailler en range ?
Déjà, il serait infiniment reposant que tu cesses d'agresser systématiquement tout le monde !!!
Ensuite, moi je ne veux rien du tout !

Je n'ai fait que décomposer en deux étapes le code qui existait déjà dans la macro et qu'il dit planter sur un de ces PC.



Remarque : je me permets d'essayer d'aider même si, moi, je n'ai pas un melon prêt à exploser et, moi, je ne me prends pas pour le meilleur de l'univers car, moi, j'ai conscience de ne pas tout savoir...
 
Dernière édition:

patricktoulon

XLDnaute Barbatruc
j'agresse pas je te demande si c'est sérieux
moi non plus je sais pas tout mais travailler une BDD avec les outils range sur version excel 2021
au pire essayez ça alors
Set R = ThisWorkbook.Sheets("Liste de Noms").ListObjects("ListAdherents").ListRows.Add.Range
 

Discussions similaires

Réponses
3
Affichages
955

Statistiques des forums

Discussions
312 228
Messages
2 086 421
Membres
103 205
dernier inscrit
zch