XL 2019 Problème avec 2 Formulaires avec listview pour arbre généalogique

hemardjean

XLDnaute Occasionnel
Bonjour le forum

J’ai fait deux formulaires identiques un pour la création de la fiche et le deuxième pour le père.

Ma question:

Peut-on récupérer les infos du deuxième formulaire pour l’intégrer dans le premier formulaire.

Je vous remercie pour votre aide
 

Pièces jointes

  • Pour arbres genealogique - Copie.xls
    190 KB · Affichages: 31
E

eugene92

Guest
Bonjour,
Pourquoi n'utiliseriez-vous pas un logiciel de généalogie ? Il y en a de nombreux, bien faits et souvent gratuits. Sur Excel, dès que vous aurez quelques dizaines de personnes, ce sera ingérable...
 
Dernière modification par un modérateur:

hemardjean

XLDnaute Occasionnel
Bonjour Bebere et eugene92

Pour les colonnes ,elles me servent avec un autre programme avec des shapes qui me font, dans deux onglets différents, les arbres ascendants et les descendants ,à voir peut-être pour les supprimer il faudra que je re-travaille les affichages .
Pour les dates si on peut les mettre entière avec un calendrier très bien !
Et oui la base va grandir car je ne suis qu'au début.

eugene92 oui des sites existent mais je préfère avoir mon système et j'ai déja 60 lignes et pour créer les arbres cela est plus facile.
 
E

eugene92

Guest

Bebere

XLDnaute Barbatruc
bonsoir
excuses pour l'attente mais c'est difficile pour le moment,en espérant que l'on va nous laisser un peu plus libre
pour nom,prénom,lieu,métier,sexe tu fais ton entrée normalement ,ensuite ce qui est entré est formaté
pour les dates double clic dans la textbox
tu me diras si tout baigne dans l'huile,on ne sait jamais
l"espoir fait vivre
 

Pièces jointes

  • PourArbresGenealogique2V2.xls
    231 KB · Affichages: 13

hemardjean

XLDnaute Occasionnel
Bonsoir
Je te remercie pour ta réponse même tardive , mais elle ne correspond pas car il faut que le père et la mère soint en colonne B et C . Je le garde car il pourra me servir.
J'ai continué à travailler sur un formulaire et j'ai réussi avec de multiples combobox (34 exactement). Merci Boigontier.
Mon seul soucis et je pense que tu pourrais peut-être me répondre, lorsque je valide un formulaire que je complète avec les éléments ,le formulaire là rajoute en nouvelle ligne. Je te mets le code:

Private Sub B_valid_Click()
If Me.TextBox1 <> "" Then
LigneEnreg = Me.Enreg
f.Cells(LigneEnreg, 1) = Me.TextBox1
f.Cells(LigneEnreg, 4) = Me.TextBox4
f.Cells(LigneEnreg, 5) = Me.TextBox5
f.Cells(LigneEnreg, 6) = Me.TextBox6
f.Cells(LigneEnreg, 7) = Me.TextBox7
f.Cells(LigneEnreg, 8) = Me.TextBox8
f.Cells(LigneEnreg, 9) = Me.TextBox9
f.Cells(LigneEnreg, 10) = Me.TextBox10
f.Cells(LigneEnreg, 11) = Me.TextBox11
f.Cells(LigneEnreg, 12) = Me.TextBox12
f.Cells(LigneEnreg, 13) = Me.TextBox13
f.Cells(LigneEnreg, 14) = Me.TextBox14
f.Cells(LigneEnreg, 15) = Me.TextBox15
f.Cells(LigneEnreg, 16) = Me.TextBox16
f.Cells(LigneEnreg, 17) = Me.TextBox17
f.Cells(LigneEnreg, 18) = Me.TextBox18
f.Cells(LigneEnreg, 21) = Me.ComboBox2
f.Cells(LigneEnreg, 22) = Me.TextBox22
f.Cells(LigneEnreg, 2) = Me.ComboBox3
f.Cells(LigneEnreg, 19) = Me.TextBox20
f.Cells(LigneEnreg, 3) = Me.ComboBox4
f.Cells(LigneEnreg, 20) = Me.TextBox21
f.Cells(LigneEnreg, 23) = Me.ComboBox5
f.Cells(LigneEnreg, 24) = Me.TextBox26
f.Cells(LigneEnreg, 25) = Me.ComboBox6
f.Cells(LigneEnreg, 26) = Me.TextBox29
f.Cells(LigneEnreg, 27) = Me.ComboBox7
f.Cells(LigneEnreg, 28) = Me.TextBox32
f.Cells(LigneEnreg, 29) = Me.ComboBox8
f.Cells(LigneEnreg, 30) = Me.TextBox35
f.Cells(LigneEnreg, 31) = Me.ComboBox9
f.Cells(LigneEnreg, 32) = Me.TextBox38
f.Cells(LigneEnreg, 33) = Me.ComboBox10
f.Cells(LigneEnreg, 34) = Me.TextBox41
f.Cells(LigneEnreg, 35) = Me.ComboBox11
f.Cells(LigneEnreg, 36) = Me.TextBox44
f.Cells(LigneEnreg, 37) = Me.ComboBox12
f.Cells(LigneEnreg, 38) = Me.TextBox47
f.Cells(LigneEnreg, 39) = Me.ComboBox13
f.Cells(LigneEnreg, 40) = Me.TextBox50
f.Cells(LigneEnreg, 41) = Me.ComboBox14
f.Cells(LigneEnreg, 42) = Me.TextBox53
f.Cells(LigneEnreg, 43) = Me.ComboBox15
f.Cells(LigneEnreg, 44) = Me.TextBox57
f.Cells(LigneEnreg, 45) = Me.ComboBox16
f.Cells(LigneEnreg, 46) = Me.TextBox60
f.Cells(LigneEnreg, 47) = Me.ComboBox17
f.Cells(LigneEnreg, 48) = Me.TextBox63
f.Cells(LigneEnreg, 49) = Me.ComboBox18
f.Cells(LigneEnreg, 50) = Me.TextBox66
f.Cells(LigneEnreg, 51) = Me.ComboBox19
f.Cells(LigneEnreg, 52) = Me.TextBox69
f.Cells(LigneEnreg, 53) = Me.ComboBox20
f.Cells(LigneEnreg, 54) = Me.TextBox56
f.Cells(LigneEnreg, 55) = Me.ComboBox21
f.Cells(LigneEnreg, 56) = Me.TextBox74
f.Cells(LigneEnreg, 57) = Me.ComboBox22
f.Cells(LigneEnreg, 58) = Me.TextBox77
f.Cells(LigneEnreg, 59) = Me.ComboBox23
f.Cells(LigneEnreg, 60) = Me.TextBox80
f.Cells(LigneEnreg, 61) = Me.ComboBox24
f.Cells(LigneEnreg, 62) = Me.TextBox83
f.Cells(LigneEnreg, 63) = Me.ComboBox25
f.Cells(LigneEnreg, 64) = Me.TextBox87
f.Cells(LigneEnreg, 65) = Me.ComboBox26
f.Cells(LigneEnreg, 66) = Me.TextBox90
f.Cells(LigneEnreg, 67) = Me.ComboBox27
f.Cells(LigneEnreg, 68) = Me.TextBox93
f.Cells(LigneEnreg, 69) = Me.ComboBox28
f.Cells(LigneEnreg, 70) = Me.TextBox96
f.Cells(LigneEnreg, 71) = Me.ComboBox29
f.Cells(LigneEnreg, 72) = Me.TextBox99
f.Cells(LigneEnreg, 73) = Me.ComboBox30
f.Cells(LigneEnreg, 74) = Me.TextBox86
f.Cells(LigneEnreg, 75) = Me.ComboBox31
f.Cells(LigneEnreg, 76) = Me.TextBox104
f.Cells(LigneEnreg, 77) = Me.ComboBox32
f.Cells(LigneEnreg, 78) = Me.TextBox107
f.Cells(LigneEnreg, 79) = Me.ComboBox33
f.Cells(LigneEnreg, 80) = Me.TextBox110
f.Cells(LigneEnreg, 81) = Me.ComboBox34
f.Cells(LigneEnreg, 82) = Me.TextBox113
f.Cells(LigneEnreg, 115) = Me.ComboBox34
UserForm_Initialize

End If
End Sub

Encore un grand merci
 

ChTi160

XLDnaute Barbatruc
Bonsoir hemardjean
Bonsoir le Fil ,le Forum

si Me.Enreg et un TextBox qui contient la dernière ligne remplie
il suffit de faire :
LigneEnreg = Val(Me.Enreg)+1'On ajoute une Ligne
ou alors récupérer la dernière ligne vide de la Colonne A de la Feuille Cible
VB:
LigneEnreg=FeuilleCible.Cells(FeuilleCible.Rows.count,1).End(xlUp).Row+1
y'a d'autres possibilités
Jean marie
 

hemardjean

XLDnaute Occasionnel
Bonjour Bebere et ChTi160
Mon explication était mal formulée.
Pour Bebere oui il s'agit d'une modification sur la même ligne avec me.enreg pour textbox et combobox
Pour ChTi160 Non je ne veux pas ajouter une ligne lorsque je rajoute des éléments mais écraser pour la remplacer avec les nouveaux textes.
 

Pièces jointes

  • Form_Creation.xls
    165 KB · Affichages: 3

hemardjean

XLDnaute Occasionnel
Bonsoir Bebere
Dans le formulaire que tu as fait peut-on remplacer une textbox par une combo pour une recherche rapide dans la colonne A pour ne pas avoir à ressaisir du texte.
Un exemple la texbox7 pourrait être remplacée par une combo ainsi on récupère le nom de l'épouse et la textox8 sa date de naissance "si la ligne existe bien entendu".
Si cela est possible peux-tu m’expliquer où il faut changer les codes?
 

Bebere

XLDnaute Barbatruc
Bonsoir
exemple tu ajoutes une combobox avec choix recherche frère,soeur,épouse,etc et une autre pour le résultat.ensuite le choix de la combobox résultat est mis dans les textbox.les textbox nom&prénom et date font partie d' un module de classe
 

hemardjean

XLDnaute Occasionnel
Bonjour Bebere
Cela dépasse mes compétences de ‘plagia transformation’ mais je veux essayer de comprendre.
Je te joins les codes que j’ai ajouté, il y a un message d’erreur au niveau ‘Sub IniTbxComb()’
Voici les codes
  • En premier je crée un module de class comme le TabTbx et je l’ai changé comme ceci :
Option Explicit
Public WithEvents TbxCom As MSForms.ComboBox
Private Sub TbxCom_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal x As Single, ByVal y As Single)
Colore
End Sub

Private Sub Combobox2_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Select Case KeyAscii
Case Is < 48, Is > 57
KeyAscii = 0
End Select
End Sub
  • Puis en haut de l’userform j’ai ajouté :
Dim TabTbxComb(1 To 34) As New ClassTbxNP

  • Dans : Private Sub UserForm_Initialize()j’ai ajouté
IniTbxComb en dessous de tes codes

  • Puis j’ai créé (et là message d’erreur)
Sub IniTbxComb()
Dim i As Long, j As Long
Set TabTbxComb(1).TbxComb = Me.ComboBox2
j = 1 '4
For i = 23 To 81 Step 2
j = j + 1
Set TabTbxComb(j).TbxComb = Me("ComboBox" & i)
Next
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 092
Messages
2 085 227
Membres
102 826
dernier inscrit
ag amestan