Exploitation d'un formulaire de saisie VBA

BONJOUR LA FAMILLE.

Besoin d'une aide précieuse pour un projet à remettre demain.

Voici l'apperçu d'un formulaire de saisie que je monte pour le remplissage d'un tableau structuré.

capture d ecran 2024 02 24 142052

Le formulaire doit alimenter un tableau structuré situé dans une page au nom ADHESIONS dont j'ai nommé "FeuilAdh" en VBA

Chaque controlBox ( textbox et combobox) sont ,nommées respectivement Adh1; Adh2...Adh5.

Etape 1: j'ai défini cette instruction principale

'Fonction de rcupération du numéro de la ligne pour un nouvel ajout
Function Derligne(NomFeuille As String) As Double
 Derligne = 1
 Do
  Derligne = Derligne + 1
 Loop Until Sheets(NomFeuille).Range("A" & Derligne).Value = ""

 End Function

Etape 2: J'ai paramétré le bouton "VALIDER L'AJOUT DU MEMBRE" à travers ce code

Private Sub btnValider_Click()

    Dim i As Double
    Dim j As Integer

    i = Derligne(FeuilAdh.Name)
    For j = 1 To 5
        FeuilAdh.Cells(i, j).Value = frmSaisieAdh.Controls("Adh" & j).Value
    Next

    MsgBox "Données enrégistrées avec succès"

    Unload frmSaisieAdh

End Sub

Problème 1 : Cependant, le code ne marche que lorsque je suis sur la page ADHESIONS. Mais lorsque je veux exécuter le code en étant placé sur ma page "TABLEAU de bord" , une erreur m'est signalée sur la ligne

 FeuilAdh.Cells(i, j).Value = frmSaisieAdh.Controls("Adh" & j).Value

et là je galère carrément !

Problème 2 : Besoin d'aide pour une instruction permettant de paramétrer les boutons "MODIFIER LES INFORMATIONS D'UN MEMBRE" et "SUPPRIMER UN MEMBRE"

Je vous en supplie.... Fichier joint

A l'aide svpl la famille

Bonsoir,

recherche de la ligne se trouvant sous la dernière ligne non vide d'une colonne :

'Fonction de récupération du numéro de la ligne pour un nouvel ajout
Function Derligne(NomFeuille As String) As Long ' ici j'ai mis long car c'est forcément un entier
    ' le principe : on part de la cellule la plus basse (Rows.Count) de la feuille en colonne A
    ' puis on remonte (End(xlUp)) pour trouver la première cellule non vide de la colonne = dernière cellule non vide de la colonne A en partant du haut
    ' en ajoutant 1 on trouve la ligne où l'on doit inscrir les données
    Derligne = Sheets(NomFeuille).Range("A" & Sheets(NomFeuille).Rows.Count).End(xlUp) + 1
End Function

Si vous devez remplir le tableau "TabAdherent" lors utilisez les fonction VBA qui permettent de travailler sur un tableau structuré :

Private Sub CommandButton1_Click()
    ' on dimensionne une variable Tableau structuré
    Dim MonTab As ListObject
    ' on dimensionne une variable Ligne de tableau structuré
    Dim lRow As ListRow
    ' on attribue à la variable tableau le premier tableau (et le seul !) de la feuille ADHESIONS d'où le "1" comme cela on se fiche de son nom
    Set MonTab = Sheets("ADHESIONS").ListObjects(1)
    ' avec ce tableau
    With MonTab
        ' on attribue à la variable ligne, la ligne "nouvelle ligne" que l'on crée, ici elle est créée "à la suite"
        ' pour la créer juste en dessous de l'entête il faut mettre.ListRows.Add(1)
        Set lRow = .ListRows.Add()
        ' avec cette ligne
        With lRow
            ' on boucle sur les 5 contrôles afin d'inscrire les données dans les 5 colonnes du tableau
            For i = 1 To 5
                .Range.Cells(i) = Controls("Adh" & i).Value
            Next i
        ' on a fini de jouer avec la ligne
        End With
    ' on a fini de jouer avec le tableau
    End With
End Sub

C'est tout pour le moment... C'est comme même un devoir !

@ bientôt

LouReeD

Merci LouReed .

Si vous avez aussi astuces pour les deux autres boutons, n'hésitez pas jvp 🙏

Bonjour, une proposition pour la modification et la suppression.

Cordialement

Bonjour,

votre fichier avec inclus mon module USF automatique...C'est un peu complexe mais ceci fonctionne !
Le fichier :

@ bientôt

LouReeD

Bonsoir à vous.

Je vous remercie infiniment pour tout. effectivement ces instructions m'ont aidé.

Soyez bénis

Merci de votre retour et remerciement !

@ bientôt

LouReeD

Bonjour et Super la proposition de LouReeD, j'avais eu à concevoir un fichier de gestion de pour une association; il y a trois ans maintenant que j'éssaierai de moderniser avec ton approche. Merci

Rechercher des sujets similaires à "exploitation formulaire saisie vba"