IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

Comment maintenir le curseur sur un seul champ [AC-2013]


Sujet :

Access

  1. #21
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2009
    Messages
    1 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 114
    Points : 491
    Points
    491
    Par défaut
    Bonsoir hyperion13
    Pourriez vous apporter les
    modifications que vous me suggèrez
    à mon application ?
    Rappelez vous que je ne suis pas un expert en informatique.
    Je suis un apprenant.
    Merci merci de bien vouloir le faire.
    Cordialement.
    Je ne Suis Pas un Expert en Programmation
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

  2. #22
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 648
    Points : 14 626
    Points
    14 626
    Par défaut
    il faut quand même prendre en compte que morobaboumar n'est pas un expert en programmation ...
    la preuve:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            Case "6"
                .MontantPartHeritagePercu = F_RamenantMontantParticulierMembreFEMS_HDK_PartFille(Me.IDMontantpartager, Me.id_LienDeParente)
            Case "5"
                .MontantPartHeritagePercu = F_RamenantMontantParticulierMembreFEMS_HDK_PartFils(Me.IDMontantpartager, Me.id_LienDeParente)
    il ne faut pas utiliser Me dans la boucle car Me fait référence uniquement à l'enregistrement en cours dans le formulaire, il faut utiliser les champs du Recordset ,comme plus haut dans les cas "2" à "4":
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
            Case "2"
                .MontantPartHeritagePercu = F_RamenantMontantParticulierMembreFEMS_SML(.IDMontantpartager, .id_LienDeParente)
            Case "3"
                .MontantPartHeritagePercu = F_RamenantMontantParticulierMembreFEMS_SML_PartFrere(.IDMontantpartager, .id_LienDeParente)
            Case "4"
                .MontantPartHeritagePercu = F_RamenantMontantParticulierMembreFEMS_SML_PartSoeur(.IDMontantpartager, .id_LienDeParente)
    même si dans le code que j'ai donné je parcours le Recordset et pas un clone du Recordset, ce qui fait que le curseur se déplace, il est préférable de TOUJOURS faire référence au champs du Recordset
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  3. #23
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2009
    Messages
    1 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 114
    Points : 491
    Points
    491
    Par défaut
    Merci infiniment tee_grandbois expert senior
    longue vie à vous pleinne santé ainsi qu'à tous.
    hyperion13 m'a souligné des remarques
    au niveau des requêtes de mon
    application. Qu'en pensez vous ?
    Merci infiniment.
    Je ne Suis Pas un Expert en Programmation
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

  4. #24
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 648
    Points : 14 626
    Points
    14 626
    Par défaut
    personnellement, si cela fonctionne, je n'y toucherai pas
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  5. #25
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2009
    Messages
    1 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 114
    Points : 491
    Points
    491
    Par défaut
    Bonjour membres du forum,
    J'ai reproduis le code du boutons de commande CmdMAJ_Part_Montants
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    Private Sub CmdMAJ_Part_Montants_Click()
    'MiseAJourMontantPartagés
    'Me.IDMontant_partager.SetFocus
    'DoCmd.GoToRecord , , acLast
    With Me.Recordset
        .MoveFirst
        Do Until .EOF
            .Edit
            Select Case .[idLienParente]
            Case "6"
                .MontantPartHeritPercu = F_RamenantMontantPartChaqueFilleHDK(.idLienParente, .IDMontant_partager)
            Case "5"
                .MontantPartHeritPercu = F_RamenantMontantPartChaqueFilsHDK(.idLienParente, .IDMontant_partager)
            End Select
            .Update
            .MoveNext
        Loop
    End With
     
    End Sub
    dans une autre partie de mon application mais voici l'erreur qui survient mais rien n'a été indiqué.

    Nom : Capture9.JPG
Affichages : 150
Taille : 172,3 Ko

    Question: qu'est ce qui provoque cette erreur ?
    Cordialement.
    Je ne Suis Pas un Expert en Programmation
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

  6. #26
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2009
    Messages
    1 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 114
    Points : 491
    Points
    491
    Par défaut
    Bonjour membres du forum,
    J'ai reproduis le code du boutons de commande CmdMAJ_Part_Montants
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    .
    Private Sub CmdMAJ_Part_Montants_Click()
    'MiseAJourMontantPartagés
    'Me.IDMontant_partager.SetFocus
    'DoCmd.GoToRecord , , acLast
    With Me.Recordset
        .MoveFirst
        Do Until .EOF
            .Edit
            Select Case .[idLienParente]
            Case "6"
                .MontantPartHeritPercu = F_RamenantMontantPartChaqueFilleHDK(.idLienParente, .IDMontant_partager)
            Case "5"
                .MontantPartHeritPercu = F_RamenantMontantPartChaqueFilsHDK(.idLienParente, .IDMontant_partager)
            End Select
            .Update
            .MoveNext
        Loop
    End With
     
    End Sub
    dans une autre partie de mon application.
    Chaque fois que je clique sur la commande CmdMAJ_Part_Montants [CODE], voici l'erreur qui survient mais rien n'est indiqué pour signifier d'où provient elle.

    Nom : Capture9.JPG
Affichages : 150
Taille : 172,3 Ko

    Question: qu'est ce qui provoque cette erreur ?
    Cordialement.
    Je ne Suis Pas un Expert en Programmation
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

  7. #27
    Expert éminent
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 561
    Points
    6 561
    Par défaut
    Salut,
    Citation Envoyé par tee_grandbois Voir le message
    il faut quand même prendre en compte que morobaboumar n'est pas un expert en programmation ...
    Cela fait bien longtemps que c'est assimilé
    Citation Envoyé par tee_grandbois Voir le message
    personnellement, si cela fonctionne, je n'y toucherai pas
    Ce conseil est fort judicieux.
    Pour autant, je viens de faire un ALL IN ONE. Mais attention l'exemple donné est épuré. Ce n'est pas une usine à gaz.
    Fichiers attachés Fichiers attachés
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  8. #28
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2009
    Messages
    1 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 114
    Points : 491
    Points
    491
    Par défaut
    Bonsoir hyperion13,
    Votre travail est tellement
    pure bien fait que je redoutable
    d'effort et suivre votre méthode
    et l'adapter à mon cas.
    Il y a 3 cas de décès:

    1°) le père de famille décédé laisse: - 2 épouses qui se partagent les 1/8 et les 7/8 sont partages entre les
    7 filles et les 9 fils du montant laissé moins les charges (Frais Funérailles, Pension Alimentaire, Leg, Zakat, Dettes).
    Maintenant, sur les 7/8 restants, chaque fille prend le 1/2 de la part des fils.
    Question: quelle est la part de chaque épouse,
    celle de chaque fille et celle de chaque fils ?

    2°) les 2 derniers cas sont déjà traités dans la pièce jointe.

    - Pièce jointe.

    Merci infiniment.
    Cordialement.
    Fichiers attachés Fichiers attachés
    Je ne Suis Pas un Expert en Programmation
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

  9. #29
    Expert éminent
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 561
    Points
    6 561
    Par défaut
    Là ce n'est pas, dirais-je, un problème Access, c'est plus tôt un problème de maths.
    Voir les situations en pj.
    Images attachées Images attachées
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  10. #30
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2009
    Messages
    1 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 114
    Points : 491
    Points
    491
    Par défaut
    Bonsoir hyperion13,
    bonsoir membres du forum,
    Je viens de constater une erreur de frappe ici

    Nom : Capture10.JPG
Affichages : 83
Taille : 51,1 Ko
    Nom : Capture11.JPG
Affichages : 85
Taille : 12,4 Ko

    Rappel: chaque fille doit toucher la moitié de part de chaque fils. Voir capture suivante:

    Nom : CAS 1 A.jpg
Affichages : 83
Taille : 188,7 Ko Nom : CAS 1 B.jpg
Affichages : 85
Taille : 193,8 Ko

    Comment traduire cela en Vba Access et l'ajouter au code suivant ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    Public Function PartMontantHeritage(id_indivfk As Long, _
                                        id_heritfk As Long, _
                                        id_rangfk As Long, _
                                        MontantHeritage As Single) As Single
    On Error GoTo ErrorHandler
    Dim calcPart As Single
     
    Select Case id_rangfk
        Case 2 'mere
        calcPart = (MontantHeritage / 114) * 19
        Case 3 'frere
        calcPart = (MontantHeritage / 114) * 10
        Case 4 'soeur
        calcPart = (MontantHeritage / 114) * 5
        Case 5 'fils
        calcPart = (MontantHeritage / 19) * 2
        Case 6 'fille
        calcPart = (MontantHeritage / 19) * 1
        Case Else
        calcPart = 0
        End Select
    PartMontantHeritage = calcPart
     
    ExitHandler:
        Exit Function
    ErrorHandler:
        MsgBox "Oups ! Une erreur a été rencontrée :" & vbCrLf & "Error " & Err.Number & ": " & Err.Description
        Resume ExitHandler
    End Function
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    Private Sub btnCalcPartage_Click()
    Dim dbs As DAO.Database, rst As DAO.Recordset, strSql As String
     
    Set dbs = CurrentDb
     
    strSql = "SELECT MontantHeritage" _
    & " FROM tbIndividu" _
    & " WHERE id_indiv = " & Me.id_indivfk
     
    Set rst = dbs.OpenRecordset(strSql, dbOpenDynaset)
     
    With Me.Recordset
        .MoveFirst
        Do Until .EOF
            .Edit
            Select Case .[id_rangfk]
            Case "2"
                .montant_part = PartMontantHeritage(.id_indivfk, .id_heritfk, .id_rangfk, rst.Fields("MontantHeritage"))
            Case "3"
                .montant_part = PartMontantHeritage(.id_indivfk, .id_heritfk, .id_rangfk, rst.Fields("MontantHeritage"))
            Case "4"
                .montant_part = PartMontantHeritage(.id_indivfk, .id_heritfk, .id_rangfk, rst.Fields("MontantHeritage"))
            Case "5"
                .montant_part = PartMontantHeritage(.id_indivfk, .id_heritfk, .id_rangfk, rst.Fields("MontantHeritage"))
            Case "6"
                .montant_part = PartMontantHeritage(.id_indivfk, .id_heritfk, .id_rangfk, rst.Fields("MontantHeritage"))
            End Select
            .Update
            .MoveNext
        Loop
    End With
    End Sub
    Cordialement.
    Je ne Suis Pas un Expert en Programmation
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

  11. #31
    Expert éminent
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 561
    Points
    6 561
    Par défaut
    Désolé pour vous, mais Intelligence Artificielle, je ne suis pas.
    Mais bon, 8 x 50 = 400
    Sauf étourderie de ma part, les démonstrations mathématiques sont justes.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    Public Function PartMontantHeritage(id_indivfk As Long, _
                                        id_heritfk As Long, _
                                        id_rangfk As Long, _
                                        MontantHeritage As Single) As Single
    On Error GoTo ErrorHandler
    Dim calcPart As Single
     
    Select Case id_rangfk
        Case 2 'mere
        calcPart = (MontantHeritage / 114) * 19 'comment trouvez-vous ce rapport 19/114 ?
        Case 3 'frere
        calcPart = (MontantHeritage / 114) * 10 'comment trouvez-vous ce rapport 10/114 ?
        Case 4 'soeur
        calcPart = (MontantHeritage / 114) * 5 'comment trouvez-vous ce rapport 5/114 ?
        Case 5 'fils
        calcPart = (MontantHeritage / 19) * 2 'comment trouvez-vous ce rapport 2/19 ?
        Case 6 'fille
        calcPart = (MontantHeritage / 19) * 1 'comment trouvez-vous ce rapport 1/19 ?
        Case 7 'epouse
        calcPart = (MontantHeritage / 19) * 1 'je vous laisse le soin de trouver le bon rapport
        Case Else
        calcPart = 0
        End Select
    PartMontantHeritage = calcPart
     
    ExitHandler:
        Exit Function
    ErrorHandler:
        MsgBox "Oups ! Une erreur a été rencontrée :" & vbCrLf & "Error " & Err.Number & ": " & Err.Description
        Resume ExitHandler
    End Function
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    Private Sub btnCalcPartage_Click()
    Dim dbs As DAO.Database, rst As DAO.Recordset, strSql As String
     
    Set dbs = CurrentDb
     
    strSql = "SELECT MontantHeritage" _
    & " FROM tbIndividu" _
    & " WHERE id_indiv = " & Me.id_indivfk
     
    Set rst = dbs.OpenRecordset(strSql, dbOpenDynaset)
     
    With Me.Recordset
        .MoveFirst
        Do Until .EOF
            .Edit
            Select Case .[id_rangfk]
            Case "2"
                .montant_part = PartMontantHeritage(.id_indivfk, .id_heritfk, .id_rangfk, rst.Fields("MontantHeritage"))
            Case "3"
                .montant_part = PartMontantHeritage(.id_indivfk, .id_heritfk, .id_rangfk, rst.Fields("MontantHeritage"))
            Case "4"
                .montant_part = PartMontantHeritage(.id_indivfk, .id_heritfk, .id_rangfk, rst.Fields("MontantHeritage"))
            Case "5"
                .montant_part = PartMontantHeritage(.id_indivfk, .id_heritfk, .id_rangfk, rst.Fields("MontantHeritage"))
            Case "6"
                .montant_part = PartMontantHeritage(.id_indivfk, .id_heritfk, .id_rangfk, rst.Fields("MontantHeritage"))
            Case "7"
                .montant_part = PartMontantHeritage(.id_indivfk, .id_heritfk, .id_rangfk, rst.Fields("MontantHeritage"))
            End Select
            .Update
            .MoveNext
        Loop
    End With
    End Sub
    Images attachées Images attachées  
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  12. #32
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2009
    Messages
    1 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 114
    Points : 491
    Points
    491
    Par défaut
    Sauf votre respect,
    Il y a des erreurs de calculs dans votre code

    Nom : Capture14.JPG
Affichages : 80
Taille : 99,4 Ko

    Voici ce que j'ai réalisé avec mon usine à gaz

    Nom : Capture13.JPG
Affichages : 82
Taille : 198,4 Ko

    en faisant ce calcul

    Nom : Capture12.JPG
Affichages : 83
Taille : 75,0 Ko

    J'ai réuni tous les trois cas dans la pièce jointe que je vous poste.
    Lien de téléchargement:
    https://drop.infini.fr/r/8dWaPL0VUy#...Wi1JM9HrPhMjs=

    Cordialement.
    Images attachées Images attachées
    Fichiers attachés Fichiers attachés
    Je ne Suis Pas un Expert en Programmation
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

  13. #33
    Expert éminent
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 561
    Points
    6 561
    Par défaut
    Quelque chose m'interpelle dans les calculs de votre capture d'écran. Parce que si j'adopte la méthode utilisée au 1er cas de votre Exemple_Partage_Héritage.pdf, je ne trouve pas le même résultat (partie droite img). Le document pdf donne une base 64, avec votre méthode je trouve 80.
    Il manque à mon avis une explication de la procédure de décomposition. Enfin je pense.
    Images attachées Images attachées  
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  14. #34
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2009
    Messages
    1 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 114
    Points : 491
    Points
    491
    Par défaut
    Bonsoir hyperion13,
    Pour 2 épouses 1/8 du montant laissé,
    pour les filles 1/2 du montant laissé,
    le fils (1/2) * 2 du montant laissé.

    Exemple: 100 000 / 8 = 12 500 pour les 2 épouses,

    Reste: 100 000 - 12 500 = 87 500 à partager entre les 7 filles et 9 fils sachant que les

    filles ont les 1/2 et les fils ont les (1/2) * 2 du montant 87 500

    Quelle serait la part de chaque héritier ?

    Cordialement.
    Je ne Suis Pas un Expert en Programmation
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

  15. #35
    Rédacteur/Modérateur
    Avatar de argyronet
    Homme Profil pro
    Panseur de bobos en solutions ETL
    Inscrit en
    Mai 2004
    Messages
    5 123
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Panseur de bobos en solutions ETL
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 5 123
    Points : 12 169
    Points
    12 169
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    Eh bien tant mieux si une solution a été trouvée et adoptée.
    J’arrive un peu tard et le sujet était déjà entre de bonnes mains.

    Quoi qu'il en soit, pour donne le focus à un champ en particulier dans un formulaire en mode continu et qu'il y reste, il y a plusieurs méthodes.

    Mais il faut faire un choix entre préremplir automatiquement les valeurs et faire en sorte que le focus reste là où une valeur est ambiguë en cas de saisie manuelle.
    Il ne fait pas "infantiliser" l'application (ni l’utilisateur d'ailleurs).
    Le plus simple consiste à émettre une alerte (message ou Label.Caption et/ou verrouillage sur bouton {couplé au KeyPress Ctrl+F4} permettant de sortir de l'écran). Ainsi, l’utilisateur cherchera de lui-même.


    [HORS SUJET]
    morobaboumar , pourquoi une Huppe Fascié ?
    [/HORS SUJET]

    Argy
    Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment.

    Ils comptent sur vous...
    Web Site@Mail
    Tutoriels : Déployez vos applications Access 2010 à 2019 */* Réalisez un Assistant de présaisie...
    MDB Viewer : Visionneuse Access v4.0
    *** Je recherche des profils (2 ans min.) Java EE, Fullstack, Front, .Net, Mobile... pour CDI ***

  16. #36
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 648
    Points : 14 626
    Points
    14 626
    Par défaut
    bonjour argyronet,
    merci pour ton intervention mais ATTENTION: le titre de la discussion est trompeur, il ne s'agit pas, dans les faits, de saisir dans un champ (d'ailleurs tous les contrôles du sous-formulaire sont verrouillés) mais de mettre à jour un champ du jeu de données sur clic d'un bouton et ceci avec une fonction qui retourne le montant de part d'héritage suivant un calcul relativement complexe.
    Comme morobaboumar n'est pas, selon ses propres dires, un expert en programmation, il a tenté d'utiliser le déplacement d'un enregistrement à l'autre via les commandes SetFocus et GotoRecord directement dans le formulaire plutôt qu'utiliser MoveNext depuis RecordSet ou RecordSetClone, cela a eu pour conséquence de créer une boucle infinie et un message d'erreur intempestif.

    Maintenant, la discussion continue, si j'ai bien compris, sur un problème de calcul incorrect de parts d'héritage
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  17. #37
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2009
    Messages
    1 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 114
    Points : 491
    Points
    491
    Par défaut
    Bonjour les Experts,
    bonjour membres du forum,
    En réponse à votre question argyronet, je vous signale que tee_grandbois a résolu la discussion
    depuis le post #22 .
    Maintenant hyperion13 ayant constaté que la présente discussion est en rapport avec celle ci https://www.developpez.net/forums/d2...age-cas-2-3-a/, alors il a souhaité m'en donner une solution pure et simple dans une version ALL IN ONE.
    Ce que j'apprécie énormément et que suis entrain d'adapter à mon cas.

    En voici une pièce jointe GESTION_DecesSuccessionHeritage

    Nom : Capture15.JPG
Affichages : 63
Taille : 191,8 Ko
    Nom : Capture16.JPG
Affichages : 64
Taille : 196,5 Ko
    Nom : Capture17.JPG
Affichages : 64
Taille : 192,0 Ko

    La discussion continue depuis le post #34.
    Maintenant, la discussion continue, si j'ai bien compris, sur un problème de calcul incorrect de parts d'héritage
    Cordialement.
    Fichiers attachés Fichiers attachés
    Je ne Suis Pas un Expert en Programmation
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

  18. #38
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2009
    Messages
    1 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 114
    Points : 491
    Points
    491
    Par défaut
    Bonsoir membres du forum,
    J'ai des messages d'erreurs de mon essai d'adaptation:

    Nom : Capture18.JPG
Affichages : 66
Taille : 166,4 Ko
    Nom : Capture19.JPG
Affichages : 66
Taille : 99,7 Ko

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    Private Sub btnCalcPartage_Click()
    Dim dbs As DAO.Database, rst As DAO.Recordset, strSql As String
     
    Set dbs = CurrentDb
     
    strSql = "SELECT Montant_Net" _
    & " FROM Tbl_MontantHeritage_A_Partager" _
    & " WHERE ID_LIenFam = " & Me.id_LienParente
     
    Set rst = dbs.OpenRecordset(strSql, dbOpenDynaset)
     
    With Me.Recordset
        .MoveFirst
        Do Until .EOF
            .Edit
            Select Case .id_LienParente
            Case "2"
                .Montant_Net = PartMontantHeritage(.id_GestionSucHerit, .id_heritierSuc, .id_LienParente, rst.Fields("Montant_Net"))
            Case "3"
                .Montant_Net = PartMontantHeritage(.id_GestionSucHerit, .id_heritierSuc, .id_LienParente, rst.Fields("Montant_Net"))
            Case "4"
                .Montant_Net = PartMontantHeritage(.id_GestionSucHerit, .id_heritierSuc, .id_LienParente, rst.Fields("Montant_Net"))
            Case "5"
                .Montant_Net = PartMontantHeritage(.id_GestionSucHerit, .id_heritierSuc, .id_LienParente, rst.Fields("Montant_Net"))
            Case "6"
                .Montant_Net = PartMontantHeritage(.id_GestionSucHerit, .id_heritierSuc, .id_LienParente, rst.Fields("Montant_Net"))
            End Select
            .Update
            .MoveNext
        Loop
    End With
    End Sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    Public Function PartMontantHeritage(id_GestionSucHerit As Long, _
                                        id_heritierSuc As Long, _
                                        id_LienParente As Long, _
                                        Montant_Net As Single) As Single
    On Error GoTo ErrorHandler
    Dim calcPart As Single
     
    Select Case id_LienParente
        Case 2 'mere
        calcPart = (Montant_Net / 114) * 19
        Case 3 'frere
        calcPart = (Montant_Net / 114) * 10
        Case 4 'soeur
        calcPart = (Montant_Net / 114) * 5
        Case 5 'fils
        calcPart = (Montant_Net / 19) * 2
        Case 6 'fille
        calcPart = (Montant_Net / 19) * 1
        Case Else
        calcPart = 0
        End Select
    PartMontantHeritage = calcPart
     
    ExitHandler:
        Exit Function
    ErrorHandler:
        MsgBox "Oups ! Une erreur a été rencontrée :" & vbCrLf & "Error " & Err.Number & ": " & Err.Description
        Resume ExitHandler
    End Function
    Cordialement.
    Je ne Suis Pas un Expert en Programmation
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

  19. #39
    Expert éminent
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 561
    Points
    6 561
    Par défaut
    Salut tout le monde, marot_r, tee_grandbois argyronet, morobaboumar
    Citation Envoyé par tee_grandbois Voir le message
    bonjour argyronet, ... Maintenant, la discussion continue, si j'ai bien compris, sur un problème de calcul incorrect de parts d'héritage
    Bien compris, tu as
    Citation Envoyé par morobaboumar Voir le message
    Bonjour les Experts, bonjour membres du forum, ...
    Maintenant hyperion13 ayant constaté que la présente discussion est en rapport avec celle ci, alors il a souhaité m'en donner une solution pure et simple dans une version ALL IN ONE.
    Ce que j'apprécie énormément et que suis entrain d'adapter à mon cas. La discussion continue depuis le post #34.
    Je doute que ce forum soit le bon pour résoudre ce problème de calcul de répartition de parts successorales selon différents scenarii.
    Si j'ai été amené à évoquer 1er fil de discussion dans lequel je n'étais pas intervenu, c'est en raison du décalage qu'il y avait entre la démonstration de marot_r et vos captures d'écran. On passait d'un dénominateur 6 à un dénominateur 114.

    Dans ce fil de discussion on se retrouve avec un dénominateur 19 dans l'une des fonctions de calculs et un dénominateur 114 pour d'autres.
    Pour réaliser ce genre de prouesse on ne peut passer que par le ppcm et pgcd. Sauf que ... Et bien non
    Ce matin, je me suis même amusé à chercher une solution avec les théorèmes de Thalès et Pythagore. Et bien non
    Problème concernant les successions en pays d'Islam, elles font parties des sciences religieuses.
    Sur Gogole est mon ennemi, faire une recherche avec ce mot Juz’as-sahm il y a 3 résultats intéressants, un en Fr, 2 en Hindi.
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  20. #40
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 648
    Points : 14 626
    Points
    14 626
    Par défaut
    bonjour,
    Citation Envoyé par morobaboumar
    La discussion continue depuis le post #34.
    il faudrait donc en finir avec celle-ci, d'autant qu'elle est marquée
    Citation Envoyé par hyperion13
    Je doute que ce forum soit le bon pour résoudre ce problème de calcul de répartition de parts successorales selon différents scenarii.
    complètement d'accord: pour mon cas, je me cantonne à résoudre des problèmes purement techniques, pas des équations ou problèmes de calcul
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 3 PremièrePremière 123 DernièreDernière

Discussions similaires

  1. Comment maintenir une application sur le bureau ?
    Par Philia dans le forum Composants VCL
    Réponses: 22
    Dernier message: 25/11/2007, 15h09
  2. [Requete] qui n'affiche pas les doublons mais sur un seul champs
    Par joseph.breham dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 19/12/2006, 14h57
  3. [9i, débutant] Clause DISTINCT sur un seul champ
    Par JYves dans le forum Oracle
    Réponses: 11
    Dernier message: 06/09/2006, 17h08
  4. [TChart] Comment utiliser le curseur sur une courbe ?
    Par marsupilami34 dans le forum Composants VCL
    Réponses: 4
    Dernier message: 29/09/2005, 16h49
  5. Distinct sur un seul champ...
    Par Noodles dans le forum Langage SQL
    Réponses: 16
    Dernier message: 04/01/2005, 09h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo