VBA: remplir un userForm à partir d'Excel
kdison13
Messages postés
14
Date d'inscription
Statut
Membre
Dernière intervention
-
kdison13 Messages postés 14 Date d'inscription Statut Membre Dernière intervention -
kdison13 Messages postés 14 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'ai un soucis de programmation! J'ai un fichier contenant 17 UserForm qui permettent de remplir des feuilles Excel (1 numéro de dossier = 1 ligne Excel). A l'inverse, j'aimerais que l'utilisateur puisse modifier ses données et donc pouvoir naviguer dans les différents userForm, qui seraient remplis par les infos souhaitées(sachant qu'une ligne Excel correspond à 1 numéro de dossier), et les modifier.
Je pensais avoir programmé correctement, mais les userForm ne se remplissent pas! Pourtant j'ai bien l'impression que les éléments du UserForm arrive à récupérer la valeur voulue, mais ne l'affiche pas! Voici la fonction (la première sur les 17) à laquelle mon code fait appel pour récupérer ces valeurs:
Si une âme charitable peut m'aider, ça serait vraiment super!!
Merci d'avance
j'ai un soucis de programmation! J'ai un fichier contenant 17 UserForm qui permettent de remplir des feuilles Excel (1 numéro de dossier = 1 ligne Excel). A l'inverse, j'aimerais que l'utilisateur puisse modifier ses données et donc pouvoir naviguer dans les différents userForm, qui seraient remplis par les infos souhaitées(sachant qu'une ligne Excel correspond à 1 numéro de dossier), et les modifier.
Je pensais avoir programmé correctement, mais les userForm ne se remplissent pas! Pourtant j'ai bien l'impression que les éléments du UserForm arrive à récupérer la valeur voulue, mais ne l'affiche pas! Voici la fonction (la première sur les 17) à laquelle mon code fait appel pour récupérer ces valeurs:
Public Function recupDossier(numDossier As String) Dim ligne As Integer Dim i As Integer i = 1 ligne = -1 With Sheets("patient") Do While (.Range("A" & i) <> numDossier And .Range("A" & i) <> Empty) i = i + 1 Loop If (.Range("A" & i).Value = numDossier) Then ligne = i End If End With 'MsgBox "Numéro de ligne du dossier : " & ligne If (ligne > 0) Then With Sheets("patient") Me.TextInitial.Value = Range("B" & ligne).Value Me.TextDate.Value = Range("C" & ligne).Value Me.TextExam.Value = Range("D" & ligne).Value Me.TextNaissance.Value = Range("E" & ligne).Value Me.TextResid.Value = Range("F" & ligne).Value If Range("G" & ligne).Value = Me.OptionCelib.Caption Then Me.OptionCelib.Value = True If Range("G" & ligne).Value = Me.OptionMarie.Caption Then Me.OptionMarie.Value = True If Range("G" & ligne).Value = Me.OptionDivorce.Caption Then Me.OptionDivorce.Value = True If Range("G" & ligne).Value = Me.OptionVeuf.Caption Then Me.OptionVeuf.Value = True If Range("G" & ligne).Value = Me.OptionCouple.Caption Then Me.OptionCouple.Value = True If Range("H" & ligne).Value = Me.Optionnb_0.Caption Then Me.Optionnb_0.Value = True If Range("H" & ligne).Value = Me.Optionnb_1.Caption Then Me.Optionnb_1.Value = True If Range("H" & ligne).Value = Me.Optionnb_2.Caption Then Me.Optionnb_2.Value = True If Range("H" & ligne).Value = Me.Optionnb_3.Caption Then Me.Optionnb_3.Value = True If Range("H" & ligne).Value = Me.Optionnb_4.Caption Then Me.Optionnb_4.Value = True If Range("H" & ligne).Value = Me.Optionnb_5.Caption Then Me.Optionnb_5.Value = True If Range("H" & ligne).Value = Me.Optionnb_sup5.Caption Then Me.Optionnb_sup5.Value = True Me.TextAge_enfants.Value = Range("I" & ligne).Value Me.TextProf.Value = Range("J" & ligne).Value Me.Textrev_foy.Value = Range("K" & ligne).Value If Range("L" & ligne).Value = Me.OptionNormal.Caption Then Me.OptionNormal.Value = True If Range("L" & ligne).Value = Me.OptionConfort.Caption Then Me.OptionConfort.Value = True If Range("L" & ligne).Value = Me.OptionConfort.Caption Then Me.OptionConfort.Value = True If Range("M" & ligne).Value = Me.OptionTUT_OUI.Caption Then Me.OptionTUT_OUI.Value = True If Range("M" & ligne).Value = Me.OptionTUT_NON.Caption Then Me.OptionTUT_NON.Value = True Me.TextTUT_ANNEE.Value = Range("N" & ligne).Value End With End If End Function
Si une âme charitable peut m'aider, ça serait vraiment super!!
Merci d'avance
A voir également:
- VBA: remplir un userForm à partir d'Excel
- Excel compter cellule couleur sans vba - Guide
- Incompatibilité de type vba ✓ - Forum VB / VBA
- Erreur 13 incompatibilité de type VBA excel ✓ - Forum Excel
- Mkdir vba ✓ - Forum VB / VBA
- Dépassement de capacité vba ✓ - Forum Excel
12 réponses
Bonjour,
Ce n'est peut-être pas çà mais tu a oublié les points devant les range (ca, je sais bien faire!!!) donc si la feuille active n'est pas "patient"==>moment de solitude
Ce n'est peut-être pas çà mais tu a oublié les points devant les range (ca, je sais bien faire!!!) donc si la feuille active n'est pas "patient"==>moment de solitude
With Sheets("patient") Me.TextInitial.Value = .Range("B" & ligne).Value
Merci les gars!! effectivement ça m'a l'air de mieux fonctionner comme ça, mais il me reste un soucis: ça ne fonctionne que pour le 1er UserForm!
Je ne peux vous mettre tout mon fichier en pièce jointe, donc je vous explique rapidement:
lorsque j'appuie sur un bouton 'SUIVANT' ou 'PRECEDENT' (sur les UserForm)je fais appel à cette fonction:
qui fait elle appel aux fonctions 'recupDossier' dont je vous ai montré le code dans mon premier post!
Si vous voyez ce qui peut clocher, je suis preneuse !!!!
Merci d'avance!
Je ne peux vous mettre tout mon fichier en pièce jointe, donc je vous explique rapidement:
lorsque j'appuie sur un bouton 'SUIVANT' ou 'PRECEDENT' (sur les UserForm)je fais appel à cette fonction:
Public Function showUserForm(numDossier As String, index As Integer, recup As Boolean) Dim Form Select Case index Case 1: form1.clearContent If numDossier <> " " Then form1.TextSUBJID.Value = numDossier If (recup = True) Then ret = form1.recupDossier(numDossier:=numDossier) End If form1.Show Else form1.Show End If Case 2: form2.clearContent If numDossier <> " " Then form2.TextSUBJID.Value = numDossier If (recup = True) Then ret = form2.recupDossier(numDossier:=numDossier) End If form2.Show Else form2.TextSUBJID.Value = numDossier form2.Show End If etc ...
qui fait elle appel aux fonctions 'recupDossier' dont je vous ai montré le code dans mon premier post!
Si vous voyez ce qui peut clocher, je suis preneuse !!!!
Merci d'avance!
Lorsque tu mets plusieurs communautés à ton service, préviens les différents forums et indique tout de suite qu'une solution a été trouvée et laquelle;
Actuellement sur DVP, il y ya certainement des forumeurs qui cherchent une solution sur le coup du .range
cette attitude est très mal vue des forumeurs ; bénévoles= domestiques ?
Donc, prend des dispositions si tu ne tiens pas à être grillé sur l'ensemble des forums
Actuellement sur DVP, il y ya certainement des forumeurs qui cherchent une solution sur le coup du .range
cette attitude est très mal vue des forumeurs ; bénévoles= domestiques ?
Donc, prend des dispositions si tu ne tiens pas à être grillé sur l'ensemble des forums
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
tu pourrais remplacer..
par en plus cour,
Et 17 Userform ?? y sont tous les même ?
A+
tu pourrais remplacer..
If Range("G" & ligne).Value = Me.OptionCelib.Caption Then Me.OptionCelib.Value = True
par en plus cour,
Me.OptionCelib.Value = Range("G" & ligne).Value = OptionCelib.CaptionLe "Me" n'est pas nécessaire.
Et 17 Userform ?? y sont tous les même ?
A+
Bonjour tout le monde!!
ça y est j'arrive aux bout de mes problèmes! Youpi ! :-D
MAIS il m'en reste un que je ne comprends pas du tout! Toutes mes données se récupèrent bien, i.e. les userForm sont bien remplis avec les bonnes données récupérées dans Excel, SAUF pour les cases à cocher (CheckBox) et zones de texte (TextBox) des UserForm 8, 9, 11, 12 et 13 uniquement!
J'ai comparé la programmation avec celle que j'ai fait pour les UserForm qui fonctionnent et je ne vois pas ce qui peut poser problème!!
fonction 'recupDossier' qui fonctionne pour le userform 5:
fonction 'recupDossier' qui ne fonctionne pas pour le userform 8:
Merci d'avance pour toutes les réponses que je pourrais avoir! ;-)
ça y est j'arrive aux bout de mes problèmes! Youpi ! :-D
MAIS il m'en reste un que je ne comprends pas du tout! Toutes mes données se récupèrent bien, i.e. les userForm sont bien remplis avec les bonnes données récupérées dans Excel, SAUF pour les cases à cocher (CheckBox) et zones de texte (TextBox) des UserForm 8, 9, 11, 12 et 13 uniquement!
J'ai comparé la programmation avec celle que j'ai fait pour les UserForm qui fonctionnent et je ne vois pas ce qui peut poser problème!!
fonction 'recupDossier' qui fonctionne pour le userform 5:
Public Function recupDossier(numDossier As String) Dim ligne As Integer Dim i As Integer i = 1 ligne = -1 With Sheets("maladie patient") Do While (Sheets("patient").Range("A" & i) <> numDossier And Sheets("patient").Range("A" & i) <> Empty) i = i + 1 Loop If (Sheets("patient").Range("A" & i).Value = numDossier) Then ligne = i End If End With 'MsgBox "Numéro de ligne du dossier : " & ligne If (ligne > 0) Then With Sheets("maladie patient") 'a quelle date le cancer de votre proche a-t-il été diagnostiqué ? If Sheets("maladie patient").Range("B" & ligne).Value = Me.Optioncancer1.Caption Then Me.Optioncancer1.Value = True If Sheets("maladie patient").Range("B" & ligne).Value = Me.Optioncancer2.Caption Then Me.Optioncancer2.Value = True 'est-ce que le cancer de votre proche a été un choc pour vous ? If Sheets("maladie patient").Range("C" & ligne).Value = Me.OptionCHOC1.Caption Then Me.OptionCHOC1.Value = True If Sheets("maladie patient").Range("C" & ligne).Value = Me.OptionCHOC2.Caption Then Me.OptionCHOC2.Value = True 'si oui à quel moment ? If Sheets("maladie patient").Range("D" & ligne).Value = Me.OptionMOM1.Caption Then Me.OptionMOM1.Value = True If Sheets("maladie patient").Range("D" & ligne).Value = Me.OptionMOM2.Caption Then Me.OptionMOM2.Value = True If Sheets("maladie patient").Range("D" & ligne).Value = Me.OptionMOM3.Caption Then Me.OptionMOM3.Value = True 'précisez If Sheets("maladie patient").Range("E" & ligne).Value = Me.OptionEF_TT1.Caption Then Me.OptionEF_TT1.Value = True If Sheets("maladie patient").Range("E" & ligne).Value = Me.OptionEF_TT2.Caption Then Me.OptionEF_TT2.Value = True If Sheets("maladie patient").Range("E" & ligne).Value = Me.OptionEF_TT3.Caption Then Me.OptionEF_TT3.Value = True If Sheets("maladie patient").Range("E" & ligne).Value = Me.OptionEF_TT4.Caption Then Me.OptionEF_TT4.Value = True If Sheets("maladie patient").Range("E" & ligne).Value = Me.OptionEF_TT5.Caption Then Me.OptionEF_TT5.Value = True If Sheets("maladie patient").Range("E" & ligne).Value = Me.OptionEF_TT6.Caption Then Me.OptionEF_TT6.Value = True 'si autre, précisez Me.TextPREC1.Value = Sheets("maladie patient").Range("F" & ligne).Value 'depuis la maladie de votre proche, ressentez-vous un état de fatigue ? If Sheets("maladie patient").Range("G" & ligne).Value = Me.OptionFAT1.Caption Then Me.OptionFAT1.Value = True If Sheets("maladie patient").Range("G" & ligne).Value = Me.OptionFAT2.Caption Then Me.OptionFAT2.Value = True 'si oui, situez votre niveau de fatigue: If Sheets("maladie patient").Range("H" & ligne).Value = Me.OptionNIVF1.Caption Then Me.OptionNIVF1.Value = True If Sheets("maladie patient").Range("H" & ligne).Value = Me.OptionNIVF2.Caption Then Me.OptionNIVF2.Value = True If Sheets("maladie patient").Range("H" & ligne).Value = Me.OptionNIVF3.Caption Then Me.OptionNIVF3.Value = True If Sheets("maladie patient").Range("H" & ligne).Value = Me.OptionNIVF4.Caption Then Me.OptionNIVF4.Value = True If Sheets("maladie patient").Range("H" & ligne).Value = Me.OptionNIVF5.Caption Then Me.OptionNIVF5.Value = True If Sheets("maladie patient").Range("H" & ligne).Value = Me.OptionNIVF6.Caption Then Me.OptionNIVF6.Value = True If Sheets("maladie patient").Range("H" & ligne).Value = Me.OptionNIVF7.Caption Then Me.OptionNIVF7.Value = True If Sheets("maladie patient").Range("H" & ligne).Value = Me.OptionNIVF8.Caption Then Me.OptionNIVF8.Value = True If Sheets("maladie patient").Range("H" & ligne).Value = Me.OptionNIVF9.Caption Then Me.OptionNIVF9.Value = True If Sheets("maladie patient").Range("H" & ligne).Value = Me.OptionNIVF10.Caption Then Me.OptionNIVF10.Value = True 'commentaire: Me.TextComFAT.Value = Sheets("maladie patient").Range("I" & ligne).Value 'accompagnez-vous votre proche lors des rendez-vous médicaux ? If Sheets("maladie patient").Range("J" & ligne).Value = Me.OptionRDV1.Caption Then Me.OptionRDV1.Value = True If Sheets("maladie patient").Range("J" & ligne).Value = Me.OptionRDV2.Caption Then Me.OptionRDV2.Value = True 'si oui précisez: If Sheets("maladie patient").Range("K" & ligne).Value = Me.OptionRDVOU1.Caption Then Me.OptionRDVOU1.Value = True If Sheets("maladie patient").Range("K" & ligne).Value = Me.OptionRDVOU2.Caption Then Me.OptionRDVOU2.Value = True If Sheets("maladie patient").Range("K" & ligne).Value = Me.OptionRDVOU3.Caption Then Me.OptionRDVOU3.Value = True 'lesquels 'consultations If Sheets("maladie patient").Range("L" & ligne).Value = "OUI" Then Me.CheckBox1.Value = True 'examens If Sheets("maladie patient").Range("M" & ligne).Value = "OUI" Then Me.CheckBox2.Value = True 'hospitalisations If Sheets("maladie patient").Range("N" & ligne).Value = "OUI" Then Me.CheckBox3.Value = True 'en cas d'hospitalisation, êtes-vous If Sheets("maladie patient").Range("O" & ligne).Value = Me.OptionETHOS1.Caption Then Me.OptionETHOS1.Value = True If Sheets("maladie patient").Range("O" & ligne).Value = Me.OptionETHOS2.Caption Then Me.OptionETHOS2.Value = True If Sheets("maladie patient").Range("O" & ligne).Value = Me.OptionETHOS3.Caption Then Me.OptionETHOS3.Value = True 'autre précisez Me.TextHOSCOM.Value = Sheets("maladie patient").Range("P" & ligne).Value 'commentaires Me.TextHOSPCOM.Value = Sheets("maladie patient").Range("Q" & ligne).Value End With End If End Function
fonction 'recupDossier' qui ne fonctionne pas pour le userform 8:
Public Function recupDossier(numDossier As String) Dim ligne As Integer Dim i As Integer i = 1 ligne = -1 With Sheets("organisation au domicile") Do While (Sheets("patient").Range("A" & i) <> numDossier And Sheets("patient").Range("A" & i) <> Empty) i = i + 1 Loop If (Sheets("patient").Range("A" & i).Value = numDossier) Then ligne = i End If End With 'MsgBox "Numéro de ligne du dossier : " & ligne If (ligne > 0) Then With Sheets("organisation au domicile") 'aidez-vous votre proche depuis la maladie ? If Sheets("organisation au domicile").Range("B" & ligne).Value = Me.OptionAID1.Caption Then Me.OptionAID1.Value = True If Sheets("organisation au domicile").Range("B" & ligne).Value = Me.OptionAID2.Caption Then Me.OptionAID2.Value = True 'si oui participez-vous : 'aux soins médicaux If Sheets("organisation au domicile").Range("C" & ligne).Value = "OUI" Then Me.CheckBox1.Value = True 'aux soins corporels If Sheets("organisation au domicile").Range("D" & ligne).Value = "OUI" Then Me.CheckBox2.Value = True 'au soutien affectif et moral If Sheets("organisation au domicile").Range("E" & ligne).Value = "OUI" Then Me.CheckBox3.Value = True 'à l'organisation du quotidien If Sheets("organisation au domicile").Range("F" & ligne).Value = "OUI" Then Me.CheckBox4.Value = True 'aux tâches domestiques If Sheets("organisation au domicile").Range("G" & ligne).Value = "OUI" Then Me.CheckBox5.Value = True 'à quelle fréquence ? If Sheets("organisation au domicile").Range("H" & ligne).Value = Me.Optionfreq1.Caption Then Me.Optionfreq1.Value = True If Sheets("organisation au domicile").Range("H" & ligne).Value = Me.Optionfreq2.Caption Then Me.Optionfreq2.Value = True If Sheets("organisation au domicile").Range("H" & ligne).Value = Me.Optionfreq3.Caption Then Me.Optionfreq3.Value = True 'quelles activités prenez-vous en charge ? 'travaux ménagers If Sheets("organisation au domicile").Range("I" & ligne).Value = "OUI" Then Me.CheckBox6.Value = True 'courses If Sheets("organisation au domicile").Range("J" & ligne).Value = "OUI" Then Me.CheckBox7.Value = True 'repas If Sheets("organisation au domicile").Range("K" & ligne).Value = "OUI" Then Me.CheckBox8.Value = True 'entretien du linge If Sheets("organisation au domicile").Range("L" & ligne).Value = "OUI" Then Me.CheckBox9.Value = True 'gestion du budget If Sheets("organisation au domicile").Range("M" & ligne).Value = "OUI" Then Me.CheckBox10.Value = True 'démarches administratives If Sheets("organisation au domicile").Range("N" & ligne).Value = "OUI" Then Me.CheckBox11.Value = True 'autres If Sheets("organisation au domicile").Range("O" & ligne).Value = "OUI" Then Me.CheckBox12.Value = True 'si autres, précisez : Me.TextBox1.Value = Sheets("organisation au domicile").Range("P" & ligne).Value 'certaines activités sont-elles inhabituelles pour vous ? If Sheets("organisation au domicile").Range("Q" & ligne).Value = Me.OptionACTIN1.Caption Then Me.OptionACTIN1.Value = True If Sheets("organisation au domicile").Range("Q" & ligne).Value = Me.OptionACTIN2.Caption Then Me.OptionACTIN2.Value = True 'si oui, lesquelles: Me.TextBox2.Value = Sheets("organisation au domicile").Range("R" & ligne).Value 'partagez-vous cette aide avec d'autres personnes de votre entourage ? If Sheets("organisation au domicile").Range("S" & ligne).Value = Me.OptionAIDAT1.Caption Then Me.OptionAIDAT1.Value = True If Sheets("organisation au domicile").Range("S" & ligne).Value = Me.OptionAIDAT2.Caption Then Me.OptionAIDAT2.Value = True 'si oui, à quelle fréquence ? If Sheets("organisation au domicile").Range("T" & ligne).Value = Me.OptionFREQAT1.Caption Then Me.OptionFREQAT1.Value = True If Sheets("organisation au domicile").Range("T" & ligne).Value = Me.OptionFREQAT2.Caption Then Me.OptionFREQAT2.Value = True If Sheets("organisation au domicile").Range("T" & ligne).Value = Me.OptionFREQAT3.Caption Then Me.OptionFREQAT3.Value = True 'si non, auriez-vous souhaité partager cette aide ? If Sheets("organisation au domicile").Range("U" & ligne).Value = Me.OptionPARTAID1.Caption Then Me.OptionPARTAID1.Value = True If Sheets("organisation au domicile").Range("U" & ligne).Value = Me.OptionPARTAID2.Caption Then Me.OptionPARTAID2.Value = True 'commentaires: Me.TextBox3.Value = Sheets("organisation au domicile").Range("V" & ligne).Value 'avez-vous envisagé un relais en cas d'empêchement de votre part ? If Sheets("organisation au domicile").Range("W" & ligne).Value = Me.OptionRELAIS1.Caption Then Me.OptionRELAIS1.Value = True If Sheets("organisation au domicile").Range("W" & ligne).Value = Me.OptionRELAIS2.Caption Then Me.OptionRELAIS2.Value = True 'si oui, à qui feriez-vous appel ? If Sheets("organisation au domicile").Range("X" & ligne).Value = Me.OptionAPPEL1.Caption Then Me.OptionAPPEL1.Value = True If Sheets("organisation au domicile").Range("X" & ligne).Value = Me.OptionAPPEL2.Caption Then Me.OptionAPPEL2.Value = True If Sheets("organisation au domicile").Range("X" & ligne).Value = Me.OptionAPPEL3.Caption Then Me.OptionAPPEL3.Value = True If Sheets("organisation au domicile").Range("X" & ligne).Value = Me.OptionAPPEL4.Caption Then Me.OptionAPPEL4.Value = True If Sheets("organisation au domicile").Range("X" & ligne).Value = Me.OptionAPPEL5.Caption Then Me.OptionAPPEL5.Value = True If Sheets("organisation au domicile").Range("X" & ligne).Value = Me.OptionAPPEL6.Caption Then Me.OptionAPPEL6.Value = True 'si 'autre', précisez: Me.TextBox4.Value = Sheets("organisation au domicile").Range("Y" & ligne).Value End With End If End Function
Merci d'avance pour toutes les réponses que je pourrais avoir! ;-)
En relisant tes postes, je pense que ton approche est pas la bonne, si j'ai bien compris, quand tu clic sur suivant/Précédant c'est le dossier suivant/précédant que tu veux afficher et ce jusque.. 17 dossier suivant.
C'est bien ça ?
Et tu peu aussi remplacer...
par en plus simple...
A+
C'est bien ça ?
Et tu peu aussi remplacer...
If Range("H" & ligne).Value = Me.Optionnb_0.Caption Then Me.Optionnb_0.Value = True If Range("H" & ligne).Value = Me.Optionnb_1.Caption Then Me.Optionnb_1.Value = True If Range("H" & ligne).Value = Me.Optionnb_2.Caption Then Me.Optionnb_2.Value = True If Range("H" & ligne).Value = Me.Optionnb_3.Caption Then Me.Optionnb_3.Value = True If Range("H" & ligne).Value = Me.Optionnb_4.Caption Then Me.Optionnb_4.Value = True If Range("H" & ligne).Value = Me.Optionnb_5.Caption Then Me.Optionnb_5.Value = True
par en plus simple...
For i = 1 To 5 If Me.Controls("Optionnb_" & i).Caption = Range("H" & ligne).Value Then Me.Controls("Optionnb_" & i) = True: Exit For End If Next i
A+
Non en fait pour un dossier j'ai 17 UserForm qui me permettent de saisir l'ensemble des données qui sont elles stockées dans des feuilles Excel. Sur toutes ces feuilles Excel, une ligne correspond à un numéro de dossier!
Le problème que j'ai quand on veut revenir sur un dossier existant. Dans ce cas je veux que les userForm s'affichent avec les données saisies ultérieurement! D'où les fonctions 'recupDossier' (une pour chaque userForm).
Et donc elles fonctionnent bien pour tous les userForm, SAUF pour les TextBox et CheckBox des UF 8, 9, 11, 12, et 13 !
Le problème que j'ai quand on veut revenir sur un dossier existant. Dans ce cas je veux que les userForm s'affichent avec les données saisies ultérieurement! D'où les fonctions 'recupDossier' (une pour chaque userForm).
Et donc elles fonctionnent bien pour tous les userForm, SAUF pour les TextBox et CheckBox des UF 8, 9, 11, 12, et 13 !
Je pense qu'ont est pas sur les même rails.
Quand je dis les même je parle du design et pas des données .
Et, toujours si je comprend bien ce qui change c'est..
Tu pourrais mettre un exemple de ton classeur (sans données confidentielles, des nom fictifs) sur CiJoint.fr ou Cjoint.com
et mettre le lien sur un poste suivant.
Quand je dis les même je parle du design et pas des données .
Et, toujours si je comprend bien ce qui change c'est..
With Sheets("organisation au domicile")..
Tu pourrais mettre un exemple de ton classeur (sans données confidentielles, des nom fictifs) sur CiJoint.fr ou Cjoint.com
et mettre le lien sur un poste suivant.
non les userForms n'ont pas le même design! Chaque userForm permet de saisir des infos différentes sur un même numéro de dossier (= patient). Toutes ces infos sont stockées sur différentes feuilles Excel (patient, aidant, maladie patient, conditions de vie, relations familliales, organisation au domicile, vie sociale et économique, vie professionnelle, besoins et attentes, zarit, SF-12).
Il y a effectivement le nom des feuilles (With Sheets("organisation au domicile")..) qui change mais aussi : ce ne sont pas les mêmes infos que je vais chercher ni les mêmes 'contrôles' que je remplis(car différents userForm).
Je sais pas si j'ai été claire? J'ai essayé en tous cas :-p !!
Il y a effectivement le nom des feuilles (With Sheets("organisation au domicile")..) qui change mais aussi : ce ne sont pas les mêmes infos que je vais chercher ni les mêmes 'contrôles' que je remplis(car différents userForm).
Je sais pas si j'ai été claire? J'ai essayé en tous cas :-p !!
Oui, cette fois cela me parais plus limpide.
Mais pour trouver les erreurs ce ne sera pas possible sans ton classeur.
Mais pour trouver les erreurs ce ne sera pas possible sans ton classeur.
cordialement