Base pour association danse à partir de Gestion BD

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

bobylecoyote

XLDnaute Junior
Bonsoir à tous.

Je passe à autre chose car mon planning pour le boulot me prend la t^te avec ses derniers problèmes.

Ma femme m'a demandé de lui faire une base pour saisir les membres de son association de danse qu'elle vient de reprendre.

J'ai utilisé la base gestion BD qui est libre et facile à modifier.

Cependant, me voilà face à divers problème.

1- Paeiment : Si espèce est selectionné, je dois remplir les cases chèques 1 à 4 + nombre de chèque . Comment faire pour mettre ces cases inactives si espèces est sélectionné?
2 - Suivant le cours choisi, j'aimerais que la case cotisation soit incrémentée automatiquement par rapport au cours suivi ( somme dans colonne A et cours respective dans colonnne B de la feuille liste)
3 j'ai créer une case à cocher. SI cette case est cochée, il faudrait qu'elle rajoute 10€ à la somme normalement prévue au cours choisi.........🙄

4 rendre la case complément non obligatoire en saisie

5 - peut-être le plus dur?, créer un bouton modifier pour reprendre les infos de la ligne choisi ( nom dans listbox) et les modifier à "volonté"



C'est déjà pas mal....


😀

Merci pour votre aide

fichier dispo sur : http://cjoint.com/?mrsSXwv0Ip
 
Re : Base pour association danse à partir de Gestion BD

Bonjour Boby,

C'est vrai que c'est assez facile à modifier, surtout quand on en a écrit une bonne partie du code!😀

points 1 à 4 corrigés.

Point 5, pas compris ce que tu veux..😕

nota: tu pourrais corriger les tab index pour faciliter la saisie ( le curseur saute des cases, probablement celles que tu as ajoutées).

A te lire
 

Pièces jointes

Re : Base pour association danse à partir de Gestion BD

Merci luki🙂

J'ai une erreur execution 13 🙁 imcompatibilité de type

au debogage, ça s'arrête ici

Private Sub UpDateCotisation()
Dim Table_Tarif As Worksheet
Dim i As Long
Set Table_Tarif = Worksheets("Listes")
i = Application.Match(Cbx_Cours.Value, Table_Tarif.Columns(2), 0) Debug.Print CellInDB("Cotisation", i, Table_Tarif).Value
Tbx_cotisation = IIf(CheckBox1 = True, CellInDB("Cotisation", i, Table_Tarif).Value + 10, CellInDB("Cotisation", i, Table_Tarif).Value)

J'ai oublié les cases chèques ne sont pas aussi obligatoire à la saisie..... ou du moins le nombre inscrit dans la case nombre de chèque....

Pour le point 5, en fin de compte c'est le même Userform mais avec la possibilité de modifier les données rentrée à la 1ère saisie ( c'est clair ou pas? je pourrais peut-être mieux expliquer!!)

nota: tu pourrais corriger les tab index pour faciliter la saisie ( le curseur saute des cases, probablement celles que tu as ajoutées).

Comment fait-on? effectivement, c'est pas agréable de sauter les cases.
 
Re : Base pour association danse à partir de Gestion BD

Bonjour Boby,

pour le bug: As-tu bien une feuille nommée "Listes" comme dans le fichier exemple?
edition : d'autre part les données "tarif" et "cours"sont elles structurées comme dans l'exemple?

Tu peux aussi supprimer la ligne "Debug.Print CellInDB("Cotisation", i, Table_Tarif).Value" juste là pour le debuggage, j'ai oublié de l'enlever.

Pour les tabinex, tu peux les changer dans la fenêtre propriété des objets vba:
tu cliques sur une textbox et tu cahnage la propriété tabindex dans la fenêtre.

Pour le reste, pas le temps ce matin.

Dis moi pour le bug.
 
Dernière édition:
Re : Base pour association danse à partir de Gestion BD

Mon fichier est identique à 100% pour cet USF

La colonne ne s'appelle pas tarif mais cotisation.

J'ai modifé tarif par cotisation mais fonctionne pas


Private Sub UpDateCotisation()
Dim Table_Cotisation As Worksheet
Dim i As Long
Set Table_Cotisation = Worksheets("Listes")
i = Application.Match(Cbx_Cours.Value, Table_Cotisation.Columns(2), 0)
Tbx_cotisation = IIf(CheckBox1 = True, CellInDB("Cotisation", i, Table_Cotisation).Value + 10, CellInDB("Cotisation", i, Table_Cotisation).Value)
End Sub
 
Re : Base pour association danse à partir de Gestion BD

re coyote,

Regarde les commentaires et vois si tu comprends tout
Code:
Private Sub UpDateCotisation()
Dim Table_Tarif As Worksheet
Dim i As Long
    'Affecte le feuille "listes" à la variable
    'c'est dans cette feuille que se trouvent les colonnes "cotisation"(col1) et  "cours"(col2)
    'Si la feuille s'appelle autrement, il faut adapter le code suivant
   Set Table_Tarif = Worksheets("Listes")
   
   ' si la colonne "cours" n'est pas la col 2, il faut adpater le code
    i = Application.Match(Cbx_Cours.Value, Table_Tarif.Columns(2), 0)
  
    Tbx_cotisation = IIf(CheckBox1 = True, CellInDB("Cotisation", i, Table_Tarif).Value + 10, CellInDB("Cotisation", i, Table_Tarif).Value)
End Sub
A+

Edit: tu peux aussi zipper la feuille qui contient les cours et cotisations, pour que je voie comment elle est structurée.
 
Dernière édition:
Re : Base pour association danse à partir de Gestion BD

Re, encore...

Dans quel cas as-tu un bug? à l'ouverture du Uform ? lors de sa consultation?
je n'ai pas de bug en exécutant directement le Uform par F5...

Une autre piste, si l'événement "change" est appelé alors qu'il est vide, ça génère un bug. Tu peux modifier le code ainsi:

Code:
Private Sub Cbx_Cours_Change()
[B][COLOR=Red]If Not Cbx_Cours = "" Then [/COLOR][/B]Call UpDateCotisation
End Sub

A te lire
 
Re : Base pour association danse à partir de Gestion BD

voici le lien avec la base complète


http://cjoint.com/?mtsNogrNJV

Donc tjs le même problème si je coche la case extérieur.

Après sur le formulaire lié à l'ouverture ( USF 4 ), j'ai pris ton code dans la page T_Table_T qui permettait de rouvrir l'USF1 pour consulter les comptes adhérents mais fonctionne pas.

je me rendu compte aussi que le compteur marchait plus
 
Re : Base pour association danse à partir de Gestion BD

re, normal, même problème que pour cbx_cours

corrige la procédure ainsi, ça évitera le bug s'il n'y arien dans la case "cours"
Code:
Private Sub UpDateCotisation()
Dim Table_Tarif As Worksheet
Dim i As Long

[B][COLOR=Blue]If Cbx_Cours.Value = "" Then Exit Sub[/COLOR][/B]

    'Affecte le feuille "listes" à la variable
    'c'est dans cette feuille que se trouvent les colonnes "cotisation"(col1) et  "cours"(col2)
    'Si la feuille s'appelle autrement, il faut adapter le code suivant
   Set Table_Tarif = Worksheets("Listes")
   
   ' si la colonne "cours" n'est pas la col 2, il faut adpater le code
    i = Application.Match(Cbx_Cours.Value, Table_Tarif.Columns(2), 0)
  
    Tbx_cotisation = IIf(CheckBox1 = True, CellInDB("Cotisation", i, Table_Tarif).Value + 10, CellInDB("Cotisation", i, Table_Tarif).Value)
End Sub

tu peux annuler la dernière modif aussi.

A+
 
Re : Base pour association danse à partir de Gestion BD

cool merci ça fonctionne.


Pour le bouton Fiche adhérent de l'USF 4 , je voudrais juste consulter les infos par rapport à la T_Table_T.
Exploitez un peu ton code pour ouvrir l'USF1 en fin de compte.

Le truc serait d'ouvrir l'USF1 comme ton double clic, et après choisi dans la listbox le nom désiré, ce choix afficherait les infos d'après le nom.

Est-ce clair ou pas. C'est vrai que vu de mon côté c'est compréhensible, du tien tout dépend comment j'explqiue (hihihi...)
 
Re : Base pour association danse à partir de Gestion BD

Super!

Pour la suite, je vois à peu près où tu veux en venir. Alors, à mon avis, le code est entrain de partir dans tous les sens! et sera vite impossible à suivre!

Je verrais les choses comme ça:
  • ton Uform d'accueil avec 2 boutons : "entrez" et "réglages"
  • "réglages" ouvre le uform de modification des cotisations
  • "entrez" ouvre ton Uform de saisie
  • tu as dans celui-ci, ta listbox avec les noms déjà saisis.
  • et aussi un bouton "nouvelle", et "quitter"
  • si clic sur nouvelle, apparait le bouton "enregistrez" et "annuler"
  • si clic dans listbox, affichage des données pour consultation ou modification et affichage bouton "modifier"
  • mais si clic dans listbox alors qu'une saisie est en cours alors il ne se passe rien.
En gros, je pense qu'il vaut mieux gérer les fiches par un seul Uform. le code sera plus clair et plus facile à maintenir. et que les choix possibles doivent apparaitre à ce niveau.

Pas sur d'avoir le temps avant noël....

A +
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour