Code VBA sur Listview

Le_Troll_Du_27

XLDnaute Occasionnel
Bonjour le forum

Après de nombreuses tentatives pour finir cette partie du code, il m'est impossible de finir le projet.:mad:
Je vais vous expliquer la démarche de ce projet.:)
Appuyer sur "PAIEMENT" afin de valider une facture à régulariser.
Choisir une facture non validée, et par la comboBox choisir le Mode de Paiement
Remplir les informations demandées et faire un "Contrôle" pour vérifier si case non vide.
Le bouton "Valider" apparait, et j'en suis là.
Normalement il devrait enregistrer le paiement, dans l'onglet "SUIVI FACTURES" et la listview est rafraichie,
afin de recommencer une OP ou de Quitter.

Code:
'**** Correspond au programme du bouton "VALIDER" *****
Private Sub CmdB_Valider_Click()
End Sub
et la feuille blanche.

Merci pour votre aide par avance, message constructif SVP

Cordialement

Laurent
 

Pièces jointes

  • Mode de paiement Immédiat.xlsm
    214.3 KB · Affichages: 66
  • Mode de paiement Immédiat.xlsm
    214.3 KB · Affichages: 69

Le_Troll_Du_27

XLDnaute Occasionnel
Re : Code VBA sur Listview

Bonjour le forum, le fil
bonjour Jean Marie

quote_icon.png
Envoyé par ChTi160
Donc si j'ai bien compris , pour la première remarque TxtB_TTC_ESPECES devrait être remplacé par TxtB_RECU_ESPECES et IDEM dans les différentes Procédures VIREMENT , PAYPAL etc etc

Je viens d'analyser TxtB_TTC_ESPECES devrait etre TxtB_RECU_ESPECES à la validation afin de pour vérifier si la facture à eu une majoration pour la déclaration de la TVA et du perçu.

Car la majoration devra être déclarer ultérieurement
Mais est-ce que en ajoutant une txtbox Majoration Payé pourrait aider
Exemple pour ESPECES
Code:
Case Is = 1
  With .Controls("Frm_REGLEMENT_" & Idx_Frm)
      .TxtB_TTC_ESPECES = Format(Tab_General(Idx_Lgn, 5), "# ##0.00 €")
      .TxtB_MAJORATION_ESPECES = Format(Tab_General(Idx_Lgn, 7), "# ##0.00 €")
      .TxtB_DU_ESPECES = Format(Tab_General(Idx_Lgn, 8), "# ##0.00 €")
      .TxtB_RECU_ESPECES = Format(Tab_General(Idx_Lgn, 11), "# ##0.00 €")
      .TxtB_MAJORATION_PAYE_ESPECES = Format(Tab_General(Idx_Lgn, 12), "# ##0.00 €")
    With .TxtB_DATE_ESPECES
    .Text = IIf(Tab_General(Idx_Lgn, 10) = "", Format(Date, "dd/mm/yyyy"), Tab_General(Idx_Lgn, 10))
    .BackColor = IIf(Tab_General(Idx_Lgn, 10) = "", &H8080FF, &HFF00&)
    End With
  End With

Le fichier joint avec la modification pour toutes les frames et Userform
Amicalement
Laurent
 

Pièces jointes

  • Mode de paiement différé.zip
    283.9 KB · Affichages: 59
  • Mode de paiement différé.zip
    283.9 KB · Affichages: 69
Dernière édition:

ChTi160

XLDnaute Barbatruc
Re : Code VBA sur Listview

Bonjour Laurent
Bonjour Le Fil,Le Forum
j'espère que tu vas bien
bon j'ai vu que tu as rajouté un Control "MAJORATION Payée" il dois s'alimenter comment Seul en fonction de la Mensualité
Soit : Si montant Du 250 Euros , dont 50 Euros de Majoration , choix de deux mensualités de 125 Euros , Majoration payée = 25 Euros
Donc TextBox "MAJORATION Payée" = 25 Euros , c'est ca ?
Question après avoir fait le choix du paiement en plusieurs fois ,
le Client reste "En Attente" jusqu'au paiement Total du "Montant Du" ?
Faut il afficher d'office ce mode de paiement lors du paiement de la deuxième échéance par exemple pour 250 Euros , le choix fait lors du Premier paiement et le Paiement en deux fois par espèces Soit 125 Euros , reste 125 Euros, donc la fois suivante on affiche directement le Frame "R_REGLEMENT_1" ? ou faut il passer par "FACILITE_PAIEMENT" ?
Il faut aussi que tu m'expliques comment et ou se fait l'addition des mensualités réglées .
Ou se place et s'additionnent les montants de Ce Control "MAJORATION Payée" ?
je regarde et tente de comprendre le mécanisme de ton fichier (Car beaucoup de Formules Lol)
Merci Par avance
J'espère avoir été clair Lol
Dans l'attente
Amicalement
Jean Marie
 
Dernière édition:

Le_Troll_Du_27

XLDnaute Occasionnel
Re : Code VBA sur Listview

Bonjour le forum, bonjour le fil
Bonjour Jean Marie

As ta première question je te répond oui mais sous condition qu'il soit en 3ème relance "R3".

le Client reste "En Attente" jusqu'au paiement Total du "Montant Du" ?
La je dirai que tu peux validé le paiement mais il reste en surveillance jusqu’à la date Soldée (Date Butée)

Paiement en deux fois par espèces Soit 125 Euros , reste 125 Euros, donc la fois suivante on affiche directement le Frame "R_REGLEMENT_1" ? ou faut il passer par "FACILITE_PAIEMENT" ?
Il vaut mieux passer par Facilité de paiement puisque qu'il ne paye pas au comptant


Il faut aussi que tu m'expliques comment et ou se fait l'addition des mensualités réglées .
Ou se place et s'additionnent les montants de Ce Control "MAJORATION Payée" ?


"MAJORATION Payée": Je pense que l'on a besoin quand les paiement sont validées et quand les paiements sont en Attente on pourrait le False


Après c'était juste une idée

Quant au système de paiement

Code:
'***** Correspond au programme de la TxtB_ECHEANCE_ESPECES  *****
Private Sub TxtB_ECHEANCE_ESPECES_Change()
    J = 30
    If TxtB_ECHEANCE_ESPECES = "" Then TxtB_TT_MENSUEL_ESPECES = "": GoTo 1
    If TxtB_ECHEANCE_ESPECES = "" Then TxtB_BUTEE_ESPECES = "": GoTo 1
    TxtB_TT_MENSUEL_ESPECES = TxtB_DU_ESPECES / TxtB_ECHEANCE_ESPECES
    TxtB_Nbr_ECHEANCE_ESPECES = CDbl(J)
    TxtB_BUTEE_ESPECES = DateAdd("m", Me.TxtB_ECHEANCE_ESPECES, Me.TxtB_DATE_ESPECES)
1   tot = 0

    If IsNumeric(TxtB_TT_MENSUEL_ESPECES) Then tot = tot + CDbl(TxtB_TT_MENSUEL_ESPECES)

    TxtB_TT_MENSUEL_ESPECES = Format(tot, "0.00€")
    TxtB_ECHEANCE_ESPECES = Format(TxtB_ECHEANCE_ESPECES, "0")
    TxtB_Nbr_ECHEANCE_ESPECES = Format(TxtB_Nbr_ECHEANCE_ESPECES, "# Jours")

End Sub

Cordialement

Laurent
 

Le_Troll_Du_27

XLDnaute Occasionnel
Re : Code VBA sur Listview

Bonjour le forum, Bonjour le fil
Bonjour ChTi160

J'ai essayé tous les modes de paiement Immédiat. Tout fonctionne . Je voudrais peut être plus tard voir si on peut rendre invisible les textboxs
Code:
TxtB_MAJORATION_PAYE_ESPECES
TxtB_MAJORATION_PAYE_CHEQUES
TxtB_MAJORATION_PAYE_VIREMENT
TxtB_MAJORATION_PAYE_PAYPAL
TxtB_MAJORATION_PAYE_CARTE_BANCAIRE

quand
Code:
Tab_General(Idx_Lgn - 3, 9) = "Validée"
est Validée et les rendre visible quand le paiement est en attente.

Par contre pour:
Faut il afficher d'office ce mode de paiement lors du paiement de la deuxième échéance par exemple pour 250 Euros , le choix fait lors du Premier paiement et le Paiement en deux fois par espèces Soit 125 Euros , reste 125 Euros, donc la fois suivante on affiche directement le Frame "R_REGLEMENT_1" ? ou faut il passer par "FACILITE_PAIEMENT" ?

Il faut afficher R_REGLEMENT_1(2.3.4.5)
Les valeurs a enregistrer dans l'onglet creances sont les celulles: 12,13 / 18,19 / 24,25 / 30,31 / 36,37
soit : L-M /R-S / X-Y / AD-AE / AJ-AK
Le multiplicateur et le nombre de jours
Pour les autres textboxs tel que

Code:
        .TxtB_TITULAIRE_CHEQUE = ""   
        .TxtB_Num_CHEQUE = "" 
        .TxtB_TITULAIRE_COMPTE_VIREMENT = ""  
        .TxtB_DATE_VIREMENT = Frm.TxtB_DATE_Info 
        .TxtB_DOMICILIATION_VIREMENT = ""
        .TxtB_LIBELLE_BANQUE_VIREMENT = ""
        .TxtB_CODE_BANQUE_VIREMENT = "" 
        .TxtB_GUICHET_BANQUE_VIREMENT = "" Guichet
        .TxtB_Num_COMPTE_VIREMENT = "" 
        .TxtB_CLE_RIB_VIREMENT = ""
        .TxtB_CODE_BIC_SWIFT_VIREMENT = ""
        .TxtB_CODE_IBAN_VIREMENT = ""
        .TxtB_TITULAIRE_COMPTE_PAYPAL = ""
        .TxtB_Num_TRANSACTION_PAYPAL = ""
        .TxtB_Li_eM_PAYPAL = ""
        .TxtB_TITULAIRE_COMPTE_CARTE_BANCAIRE = ""
        .TxtB_Li_eM_CARTE_BANCAIRE = "" 
        .TxtB_Num_TR_CARTE_BANCAIRE = ""

seront enregistrer normalement dans l'onglet Suivi facture.
Faut il afficher d'office ce mode de paiement lors du paiement de la deuxième échéance par exemple pour 250 Euros , le choix fait lors du Premier paiement et le Paiement en deux fois par espèces Soit 125 Euros , reste 125 Euros, donc la fois suivante on affiche directement le Frame "R_REGLEMENT_1" ? ou faut il passer par "FACILITE_PAIEMENT" ?

Pour les calcul tout se fera automatiquement, Soit 250 restant du 2 échéance tous les 30 jours
125€ s'affichera dans la TxtB_TT_MENSUEL_ESPECES mais nous prendrons le restant dû comme point de départ.

Donc Facilité de paiement ==> R_REGLEMENT_1
Majoration Payé devra être invisible (voir si on peut s'en passer)
On remplie les vides
Nombre d’Échéance et nombre de jours
(Contrôle les vides si besoin) à voir
Valider la transaction
Rendre la facture Validée
Rafraichir Listview
On devra retrouver toutes les infos dans Frame_Info

Amicalement

Laurent
 

Pièces jointes

  • Mode de paiement différé.zip
    290.5 KB · Affichages: 65
  • Mode de paiement différé.zip
    290.5 KB · Affichages: 49

Le_Troll_Du_27

XLDnaute Occasionnel
Re : Code VBA sur Listview

Bonjour le forum, Bonjour le fil

Comment finir ce code

exemple R_REGLEMENT_3

Code:
'**** Correspond au programme du bouton "VALIDER" *****
Private Sub CmdB_Valider_VIREMENT_Click()
    
    Dim Str_Mode As String

    ' ================================================ VIREMENT
    Sheets("SUIVI FACTURES").Range("J" & Idx_Lgn).Value = CDate(.TxtB_DATE_VIREMENT.Value)
    Sheets("SUIVI FACTURES").Range("Y" & Idx_Lgn).Value = Str_Mode    '("VIREMENT")
    Sheets("SUIVI FACTURES").Range("Z" & Idx_Lgn).Value = CStr(TxtB_TITULAIRE_COMPTE_VIREMENT.Value) 
    Sheets("SUIVI FACTURES").Range("AA" & Idx_Lgn).Value = CStr(TxtB_DOMICILIATION_VIREMENT.Value)  
    Sheets("SUIVI FACTURES").Range("AC" & Idx_Lgn).Value = CStr(TxtB_LIBELLE_BANQUE_VIREMENT.Value)  
    Sheets("SUIVI FACTURES").Range("AD" & Idx_Lgn).Value = CStr(TxtB_CODE_BANQUE_VIREMENT.Value) 
    Sheets("SUIVI FACTURES").Range("AE" & Idx_Lgn).Value = CStr(TxtB_GUICHET_BANQUE_VIREMENT.Value) 
    Sheets("SUIVI FACTURES").Range("AF" & Idx_Lgn).Value = CStr(TxtB_Num_COMPTE_VIREMENT.Value) 
    Sheets("SUIVI FACTURES").Range("AG" & Idx_Lgn).Value = CStr(TxtB_CLE_RIB_VIREMENT.Value) 
    Sheets("SUIVI FACTURES").Range("AH" & Idx_Lgn).Value = CStr(TxtB_CODE_BIC_SWIFT_VIREMENT.Value) 
    Sheets("SUIVI FACTURES").Range("AI" & Idx_Lgn).Value = CStr(TxtB_CODE_IBAN_VIREMENT.Value)  
    Sheets("SUIVI FACTURES").Range("AL" & Idx_Lgn).Value = CDbl(Trim(.TxtB_RECU_VIREMENT) * 1)
    Sheets("SUIVI DES CREANCES").Range("L" & Idx_Lgn).Value = CDbl(Trim(.TxtB_ECHEANCE_VIREMENT) * 1)
    Sheets("SUIVI DES CREANCES").Range("M" & Idx_Lgn).Value = CDbl(Trim(.TxtB_Nbr_ECHEANCE_VIREMENT) * 1) 


End Sub

cordialement

Laurent
 

Pièces jointes

  • Mode de paiement différé Forum.xlsm
    286.5 KB · Affichages: 42

grisan29

XLDnaute Accro
Re : Code VBA sur Listview

bonjour le troll du 27,chti60 et le forum
voici déjà un allègement visuel du code
Code:
'**** Correspond au programme du bouton "VALIDER" *****
Private Sub CmdB_Valider_VIREMENT_Click()
    
      
    Dim Str_Mode As String

    ' ================================================ VIREMENT
    With Sheets("SUIVI FACTURES")
        .Range("J" & Idx_Lgn).Value = CDate(.TxtB_DATE_VIREMENT.Value)
        .Range("Y" & Idx_Lgn).Value = Str_Mode    '("VIREMENT")
        .Range("Z" & Idx_Lgn).Value = CStr(TxtB_TITULAIRE_COMPTE_VIREMENT.Value)
        .Range("AA" & Idx_Lgn).Value = CStr(TxtB_DOMICILIATION_VIREMENT.Value)
        .Range("AC" & Idx_Lgn).Value = CStr(TxtB_LIBELLE_BANQUE_VIREMENT.Value)
        .Range("AD" & Idx_Lgn).Value = CStr(TxtB_CODE_BANQUE_VIREMENT.Value)
        .Range("AE" & Idx_Lgn).Value = CStr(TxtB_GUICHET_BANQUE_VIREMENT.Value)
        .Range("AF" & Idx_Lgn).Value = CStr(TxtB_Num_COMPTE_VIREMENT.Value)
        .Range("AG" & Idx_Lgn).Value = CStr(TxtB_CLE_RIB_VIREMENT.Value)
        .Range("AH" & Idx_Lgn).Value = CStr(TxtB_CODE_BIC_SWIFT_VIREMENT.Value)
        .Range("AI" & Idx_Lgn).Value = CStr(TxtB_CODE_IBAN_VIREMENT.Value)
        .Range("AL" & Idx_Lgn).Value = CDbl(Trim(.TxtB_RECU_VIREMENT) * 1)
    End With
    With Sheets("SUIVI DES CREANCES")
        .Range("L" & Idx_Lgn).Value = CDbl(Trim(.TxtB_ECHEANCE_VIREMENT) * 1)
        .Range("M" & Idx_Lgn).Value = CDbl(Trim(.TxtB_Nbr_ECHEANCE_VIREMENT) * 1)
    End With
    

End Sub

Pascal
 

Le_Troll_Du_27

XLDnaute Occasionnel
Re : Code VBA sur Listview

Bonjour le forum, Bonjour le fil

Merci Pascal c'est vrai que visuellement c'est beaucoup plus clair.
Je n'ai toujours pas trouver la solution pour valider les paiements avec la facilité de paiement.
J'ai mis à jour le fichier.
Dans l'attente d'une solution
Cordialement

Laurent
 

Pièces jointes

  • Mode de paiement différé.zip
    285.8 KB · Affichages: 37
  • Mode de paiement différé.zip
    285.8 KB · Affichages: 38

Le_Troll_Du_27

XLDnaute Occasionnel
Re : Code VBA sur Listview

Bonjour le forum,

Un p'tit Up avec l'animation
Je n'ai toujours pas trouver la solution pour valider les paiements avec la facilité de paiement.
Donc Facilité de paiement ==> R_REGLEMENT_4 (Paypal par exemple)
Majoration Payé devra être invisible (voir si on peut s'en passer)
On remplie les vides
Nombre d’Échéance et nombre de jours
(Contrôle les vides si besoin) à voir
Valider la transaction
Rendre la facture Validée
Rafraichir Listview
On devra retrouver toutes les infos dans Frame_Info


[video=youtube;tv-ZDAk1EZw]http://www.youtube.com/watch?v=tv-ZDAk1EZw
[/video]

Dernière ligne droite avant finalisation


Cordialement

Laurent
 

ChTi160

XLDnaute Barbatruc
Re : Code VBA sur Listview

Bonjour Laurent
Bonjour le fil,Le Forum

je vois que tu cherches mais ne trouve point Lol

ce qui me gêne , c'est comment fait on la différence entre un Validée : "Paiement comptant" et Un Validé : "Paiement différé" ?
ne pourrait il pas y avoir Trois solutions "Validée" ,"En Cours" et "En Attente"
"Validée" : pour un paiement comptant
"En Cours" : pour un paiement différé
"En Attente" : pour un paiement non encore Traité
Ou alors peux tu m'expliquer comment tu vois la démarche .
Merci par avance
Pour l'instant , je ne bidouille pas trop , car Une seule Main Lol
Bonne journée
Amicalement
Jean Marie
 
Dernière édition:

Le_Troll_Du_27

XLDnaute Occasionnel
Re : Code VBA sur Listview

Bonjour Jean Marie
Bonjour le fil,Le Forum

Exactement car plus ça avance plus c'est compliqué.
Je te remercie de te pencher encore une fois sur mon cas.

Pour cette question je peux la résoudre par une formule dans la colonne "▼ Réglée ▼" en modifiant la formule par :

Code:
=SI([@[Raison sociale]]="";"";SI([@[Montant TTC]]<=[@[Paiement Comptant]];"Validée";SI(ET([@[Date du Règlement]]<=$B$1;[@[Date du Règlement]]>0);"Validée";SI([@[Montant TTC]]<=[@[Paiement Différé]];"En cours";"En attente"))))
et le tours est joué.

Encore un point de vue que je n'es pas vu

Avec une main on ne peut pas déplacer des montagnes lol (Bon rétablissement)

Amicalement

Laurent
 
Dernière édition:

ChTi160

XLDnaute Barbatruc
Re : Code VBA sur Listview

Bonsoir Laurent
Bonsoir le Fil, Le Forum
j'ai modifié ta formule ainsi,pour obtenir les trois Cas.
peux tu vérifier quelle est correcte ?
=SI([@[Raison sociale]]="";"";SI([@[Montant TTC]]=[@[Paiement Comptant]];"Validée";SI(ET([@[Date du Règlement]]<=$B$1;[@[Date du Règlement]]<>"");"Validée";SI(ET([@[Montant TTC]]>=[@[Paiement Différé]];[@[Date du Règlement]]<>"");"En cours";"En attente"))
dans l'attente
Bonne fin de Soirée
Amicalement
Jean Marie
 

Le_Troll_Du_27

XLDnaute Occasionnel
Re : Code VBA sur Listview

Bonjour le forum

Je suis toujours à la traine sur ce sujet.

Je n'ai toujours pas trouver la solution pour valider les paiements avec la facilité de paiement.
Donc Facilité de paiement ==> R_REGLEMENT_4 (Paypal par exemple)
Majoration Payé devra être invisible (voir si on peut s'en passer)
On remplie les vides
Nombre d’Échéance et nombre de jours
(Contrôle les vides si besoin) à voir
Valider la transaction
Rendre la facture Validée
Rafraichir Listview
On devra retrouver toutes les infos dans Frame_Info


Fichier Lien supprimé

Merci
Cordialement
Laurent
 

Discussions similaires

Réponses
26
Affichages
2 K
Réponses
3
Affichages
2 K

Statistiques des forums

Discussions
312 429
Messages
2 088 357
Membres
103 826
dernier inscrit
Normand.guillaume@orange.