Consultation d'un Formulaire sous VBA

xena12

XLDnaute Nouveau
Bonjour tout le monde,

Je suis à la recherche d'un peu d'aide pour un projet que je suis entrain de créer.
J'ai créer un formulaire sous VBA en prenons des ex par ci, par là. Il me convient maintenant, il me manque juste le fait de pouvoir consulter mes fiches, je n'arrive pas à crée mon code malgré les nombreux ex sur internet.

Ce que je voudrais maintenant c'est que dans mon formulaire actuel, je puisse en appuyant sur modifier, modifier des données entrées et en appuyant sur consulter, que toutes les données s'affichent en fonction du numéros de la fiche personnel.
Je vous joint le fichier pour que vous puissiez faire des tests directement et me dire quel code je pourrais mettre et si quelqu'un à une idée!!

Je voudrais aussi pouvoir ajouter une nouvelle ligne dans mon tableau en appuyant sur nouvelle fiche

Dernier point: Quand je clique sur Validation j'aimerais que mon formulaire revienne à zéro, aujourd'hui les données restent à l'intérieur.
Merci d'avance
CC
 

Pièces jointes

  • formulaire RENS SRMF1(2).xls
    63.5 KB · Affichages: 56
  • formulaire RENS SRMF1(2).xls
    63.5 KB · Affichages: 65
  • formulaire RENS SRMF1(2).xls
    63.5 KB · Affichages: 66

bbb38

XLDnaute Accro
Re : Consultation d'un Formulaire sous VBA

Bonjour xena12, le forum,
Une idée : Lancer le formulaire en mode création d’une fiche, et permettre de la modifier, visualiser, imprimer à l’aide des boutons de commande. La sélection des personnes pouvant s’effectuer par une ListBox (figurant sur le formulaire).
Cordialement,
Bernard
 

xena12

XLDnaute Nouveau
Re : Consultation d'un Formulaire sous VBA

Merci pour vos réponses.
Bernard, je vois ce que tu veux dire mais aurait tu un exemple concret, il y a des choses qui sont trop avancées pour que je le fasse sans aide.
laetitia, merci, je vais partir sur ton idée, simplement j'aimerais un léger modificatif dans ta liste de matricule qd je clique sur nouveau je voudrais qu'il donne automatiquement le numéro suivant si il y a 60 en dernier (comme dans ton ex) je voudrais qu'il m'écrive automatiquement 61 pour l'enregistrement prochain!
C'est possible d''incrémenter un code pour ça dans ton petit logiciel?

Et peux tu m'expliquer ce code VBA dans le visual basic
"Dim y As Byte, i As Long"

Encore merci pour vos réponses
C
 

xena12

XLDnaute Nouveau
Re : Consultation d'un Formulaire sous VBA

Bonsoir,
Laetitia90
J'ai bien pris ex sur ton petit tuto. Cependant un problème se pose. Mes données s'affichent en décaler et surtout pas dans les bonnes case lorsque que je veux afficher mes fiches, peux tu m'aider?
Je présume que c'est dans cette ligne qu'il y a un problème puisque je dois aussi afficher des données dans une textbox.
Je te mets une image:
formulaire.jpg

Private Sub ComboBox1_Click()
For y = 2 To 6: Me("TextBox" & y) = ComboBox1.List(ComboBox1.ListIndex, y - 1): Next y
End Sub

Merci
CC
 

Pièces jointes

  • formulaire.jpg
    formulaire.jpg
    35.2 KB · Affichages: 120
  • formulaire.jpg
    formulaire.jpg
    35.2 KB · Affichages: 113
  • formulaire RENS SRMF1(2).xls
    63.5 KB · Affichages: 58
  • formulaire RENS SRMF1(2).xls
    63.5 KB · Affichages: 55
  • formulaire RENS SRMF1(2).xls
    63.5 KB · Affichages: 49

laetitia90

XLDnaute Barbatruc
Re : Consultation d'un Formulaire sous VBA

re :)

dans ton cas le plus simple c'est de passer par des comboboxs idem que textboxs

si tu cree une new fiche apres il faut la valider pour la rentrer j'ai mis quelques conditions... nom prenom a adapter

ps modif fichier pb.. validation changement fiche
 

Pièces jointes

  • formulaire RENS SRMF1(2) (2).xls
    81.5 KB · Affichages: 56
Dernière édition:

xena12

XLDnaute Nouveau
Re : Consultation d'un Formulaire sous VBA

Merci pour tout laétitia,
J'ai adopté ta méthode. c'est maintenant parfait! J'ai à 99% le fichier que je voulais!Un dernier point
J'ai 5 textbox!
Ex qd je clique sur VL, PL...etc il faut qu'il me mette obtenu ou non obtenu pour chaque fiche!
Impossible de trouver le code et de le faire marcher ligne par ligne surtout! Pourrais tu m'aider encore une dernière fois. Je remets mon fichier modifier si tu peux faire des tests sur le mien ou sur le dernier que tu m'as envoyé.
Merci d'avance
C
 

Pièces jointes

  • formulaire RENS SRMF1(2).xls
    103 KB · Affichages: 48
  • formulaire RENS SRMF1(2).xls
    103 KB · Affichages: 57
  • formulaire RENS SRMF1(2).xls
    103 KB · Affichages: 55

laetitia90

XLDnaute Barbatruc
Re : Consultation d'un Formulaire sous VBA

re pas tout compris!!!! a quel moment tu fais cela??? quand tu rajoute une personne modifie..... deplus tu 5 check..& une seule colonne de reception si plusieurs permis ???? ect..
ton code CommandButton4 trop long dans mon fichier exemple 4 lignes suffisant tu manipule des dates dans certains cas
il faut utiliser Cdate (controls autrement inversion jour mois dans la feuille ect....
 

xena12

XLDnaute Nouveau
Re : Consultation d'un Formulaire sous VBA

Salut je m'explique,
je voudrais cliquer sur les checkbox qd je crée un nouveau fiche et je voudrais pouvoir y accéder qd je modifie aussi!
j'ai 5 checkbox dc évidemment qd j'appuie sur VL je veux que ça marque obtenue dans la colonne Vl, pl aura sa propre colonne et ainsi de suite pour chaque permis!!
Je toucherais à mes codes une fois que mon formulaire sera finalisé pour l'instant il me manque les checkboxs!
est ce plus clair maintenant?
merci
 

laetitia90

XLDnaute Barbatruc
Re : Consultation d'un Formulaire sous VBA

re ,
j'ai renommé les checkbox c28 a c33 bien plus simple a manipuler avec true & false enfin!!!

j'ai modifier seulement ces 3 codes..... f qui reference a ta feuil dans initialise la variable f en debut de module
il est preferable utiliser le code_name de la feuille plus simple bon!!

Code:
Dim y As Byte, i As Long, f As Worksheet
Sub UserForm_Initialize()
    C1.List = Sheets("Personnel section").Range("A2:BB" & Feuil1.Cells(Rows.Count, 1).End(3).Row).Value
    C2.List = Array("LTN", "ADJ", "MCH", "SCH", "MDL", "SGT", "BC1", "BCH", "CCH", "BRI", "CPL", "1CL", "SDT")
    Set f = Sheets("Personnel section")
    End Sub
Private Sub CommandButton3_Click() 'modifier les données
   If C1.ListIndex > -1 Then
   With f
   For y = 2 To 27: .Cells(C1.ListIndex + 2, y) = Me("c" & y).Value: Next y
   For y = 28 To 33: .Cells(C1.ListIndex + 2, y) = IIf(Me("c" & y) = True, "Obtenu", "Non Obtenu"): Next y
   End With
  End If
End Sub
Private Sub C1_Click() 'visualiser une fiche
   With f
   For y = 2 To 28: Me("C" & y) = C1.List(C1.ListIndex, y - 1): Next y
   For y = 28 To 33: Me("c" & y).Value = C1.List(C1.ListIndex, y - 1) = "Obtenu": Next y
   End With
End Sub

il reste a coder le bouton validation inspire toi du commandbutton4
mais la "dodo" demain me leve tôt.... regarderais demain si tu y arrive pas :)
 

Pièces jointes

  • formulaire RENS.xls
    85 KB · Affichages: 55
  • formulaire RENS.xls
    85 KB · Affichages: 60
  • formulaire RENS.xls
    85 KB · Affichages: 48

xena12

XLDnaute Nouveau
Re : Consultation d'un Formulaire sous VBA

Salut laetitia,
C'est parfait c'est ce que je cherchais à faire. Cependant encore un petit soucis. Qd on coche les cases, elles inscrivent bien obtenu et non obtenu seulement dans le mode consulter qd je crée une nouvelle fiche ça marque VRAI, FAUX et j'arrive pas à le modifier , ça fait la même chose dans ton fichier d'ailleurs!

Et dernier point et mon fichier sera finalisé enfin grâce à toi, je voudrais lorsque je clique sur le bouton imprimer il m'ouvre les propriétés imprimante afin que je puisse choisir mon imprimante, ma mise en page... comme qd on veut imprimer un doc office quoi.
J'espère que tu t pas couché trop tard hier en tout cas encore merci, je n'aurais pas pu avancer sans toi et ça m'a appris plein de choses!!

merci
 

laetitia90

XLDnaute Barbatruc
Re : Consultation d'un Formulaire sous VBA

re ,

le souci controls en minuscule & maj sensible a la case donc j'ai tous mis en maj ........ c1 & <> C1

Code:
Private Sub CommandButton5_Click() 'valider les données
      f.Cells(C1.ListCount + 2, 1) = C1.ListCount + 1
  For y = 2 To 27:  f.Cells(C1.ListCount + 2, y) = Me("C" & y).Value: Next y
  For y = 28 To 33: f.Cells(C1.ListCount + 2, y) = IIf(Me("C" & y) = True, "Obtenu", "Non Obtenu"): Next y
 End Sub

la j'ai pas mis With montrer les possibilitées si tu call ton user de ta feuille active pas besoin de tout cela

je suis un peu surprise que tu as pas de pb... avec les dates inversion jj mm

pour vider ... un simple unload me: userform1.show peut être suffisant

ps: connais pas trop imprimante

dans ton bouton

Application.Dialogs(Excel.xlBuiltInDialog.xlDialogPrinterSetup).Show

a voir???


ps avec le fichier c'est mieux
 

Pièces jointes

  • formulaire RENS.xls
    99.5 KB · Affichages: 46
  • formulaire RENS.xls
    99.5 KB · Affichages: 69
  • formulaire RENS.xls
    99.5 KB · Affichages: 74
Dernière édition:

Discussions similaires

Réponses
17
Affichages
642

Statistiques des forums

Discussions
312 206
Messages
2 086 222
Membres
103 158
dernier inscrit
laufin