Addition facture à partir des fichier fermé

  • Initiateur de la discussion Initiateur de la discussion RONIBO
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

RONIBO

XLDnaute Impliqué
Bonsoir le forum,

J'ai encore besoin de vos aides,

Je viens de créer un USF "Addition" accessible depuis "Attestation TVA"

Dans ce USF j'ai mis une listbox qui me permet de lister tous mes factures qui se trouve dans : C:\Ronibo\Facture

J'aimerais intégrer un code qui va me permettre d'additionner mes factures sélectionnées sans les ouvrir.

Avoir le résultat sous forme de msgbox (Le montant s'élève à 14 154.38) par exemple.

J'ai donné des noms (depuis le gestionnaire des nom) à mes cellules car il peut m'arriver d'insérer des lignes vide (Etablir des factures sur plusieurs pages)

Voici un fichier exemple (à extraire dans c: svp)

Merci d'avance
 

Pièces jointes

Re : Addition facture à partir des fichier fermé

bonjour,

Un essai avec 3 fichiers factures
Pour tester :

Tu recopies le fichier principal dans un répertoire
tu crées un sous répertoire Factures et tu y loge les trois factures

Tu refermes les 3 fichiers Factures
Tu lances le pgm

Si c'est bon, tu peux le généraliser

a+
 

Pièces jointes

Re : Addition facture à partir des fichier fermé

Bonsoir,

Merci beaucoup pour le temps que tu m'as accordé 🙂

En faite je voulais sélectionner les factures depuis une listbox (USF Addition)

Tu aurais une solution à ce problème Chalet53 ?

A+
 
Re : Addition facture à partir des fichier fermé

Bonjour CHALET53,

Merci pour le fichier 🙂

Lorsque je clic sur le bouton, je me retrouve avec cette erreur
Code:
 Addition.Liste.Column(1, Addition.Liste.ListCount - 1) = Wb.Sheets(1).[MontantTTC].Value

Tu as une idée?

PS: Des que je lance manuellement usf depuis Microsoft Visual Basic, ca fonctionne.

A+
 

Pièces jointes

  • Capture.PNG
    Capture.PNG
    3.6 KB · Affichages: 53
  • Capture.PNG
    Capture.PNG
    3.6 KB · Affichages: 46
  • Capture.PNG
    Capture.PNG
    3.6 KB · Affichages: 48
Re : Addition facture à partir des fichier fermé

Bonjour Ronibo,

je te propose ce code:

Code:
Public addition_facture As Double ' mettre tout en haut du code
Public chemin As String ' mettre tout en haut du code
Private Sub CBAddition_Click()
Dim oFSO
Set oFSO = CreateObject("Scripting.FileSystemObject")

For I = Liste.ListCount - 1 To 0 Step -1
If Addition.Liste.Selected(I) = True Then
WK = chemin & Addition.Liste.List(I)
NomFeuille = "Akisti Bat"
Set MonObject = GetObject(WK)
With MonObject
If addition_facture = 0 Then
addition_facture = .Sheets(NomFeuille).Range("MontantTTC").Value
Else:
addition_facture = addition_facture + .Sheets(NomFeuille).Range("MontantTTC").Value
End If
End With
MonObject.Close (True)
Set MonObject = Nothing
End If
Next
MsgBox addition_facture, vbInformation, "Somme des factures sélectionnées"
End Sub

A+
 
Re : Addition facture à partir des fichier fermé

Bonjour,

Et encore un autre, sans ouvrir les fichiers. Déclarer la variable Chemin en tête de module, pour qu'elle soit atteignable par toutes les procédures du module UserForm, Ou en public dans un module général.

Code:
Const Chemin As String ="c:\Ronibo\"
Private Sub CBAddition_Click()
Dim cnx As Object
Dim i As Integer, rs, cnt
Const sql As String = "SELECT * FROM MontantTTC;"
Const cnxString As String = "Provider=Microsoft.ACE.OLEDB.12.0;DataSource= ?;Extended Properties=""Excel 12.0 Macro;HDR=YES"";"
    
    For i = 0 To Liste.ListCount - 1
        If Me.Liste.Selected(i) Then
            Set cnx = CreateObject("ADODB.Connection")
            cnx.ConnectionString = Replace(cnxString, "?", Chemin & Liste.List(i))
            cnx.Open
            Set rs = cnx.Execute(sql)
            cnt = cnt + CDbl(rs.Fields(0).Name)
            rs.Close: Set rs = Nothing
            cnx.Close: Set cnx = Nothing
            Me.Liste.Selected(i) = False
        End If
    Next
    MsgBox Format(cnt, "currency")
End Sub

A+ à tous
 
Dernière modification par un modérateur:
Re : Addition facture à partir des fichier fermé

Bonjour le forum,

Encore merci pour vos codes 🙂

Celui de chalet53 et de fhoest j'ai réussi à le faire fonctionner,

Je bloque sur le code de Hasco :

J'ai essayé de l'intégrer dans mon fichier original mais je bloque sur cette ligne :

Voici le code intégrale :
Public SommeFacture As Double
Public Chemin As String
Private Sub UserForm_Initialize()
Chemin = "C:\Ronibo\Facture\"
LeFichier = Dir(Chemin & "*.xlsm")
Do While LeFichier <> ""
Me.LBListeFacture.AddItem LeFichier
LeFichier = Dir
Loop
End Sub
Private Sub CBQuitter_Click()
Unload Me
End Sub
Private Sub CBDécocher_Click()
Dim i As Integer, MaListe As String
For i = 0 To LBListeFacture.ListCount - 1
If LBListeFacture.Selected(i) Then
LBListeFacture.Selected(i) = False
End If
Next i
End Sub
Const Chemin2 As String = "c:\Ronibo\Facture\"
Private Sub CBAddition_Click()
Dim cnx As Object
Dim i As Integer, rs, cnt
Const sql As String = "SELECT * FROM MontantTTC;"
Const cnxString As String = "Provider=Microsoft.ACE.OLEDB.12.0;DataSource= ?;Extended Properties=""Excel 12.0 Macro;HDR=YES"";"

For i = 0 To LBListeFacture.ListCount - 1
If Me.LBListeFacture.Selected(i) Then
Set cnx = CreateObject("ADODB.Connection")
cnx.ConnectionString = Replace(cnxString, "?", Chemin2 & LBListeFacture.List(i))
cnx.Open
Set rs = cnx.Execute(sql)
cnt = cnt + CDbl(rs.Fields(0).Name)
rs.Close: Set rs = Nothing
cnx.Close: Set cnx = Nothing
Me.LBListeFacture.Selected(i) = False
End If
Next
MsgBox Format(cnt, "currency")
End Sub
 
Re : Addition facture à partir des fichier fermé

Bonjour,

Se méfier des copier/coller de code, une espace a disparu dans Data Source= de la chaine de connexion.

Dans le fichier joint la macro qui fonctionne sur ton arborescence telle que dans ton post#1.
La Constant Chemin a été déplacée vers un module général et déclarée en Public pour être atteignable de partout.

A+
 
Dernière modification par un modérateur:
Re : Addition facture à partir des fichier fermé

Bonjour le fil,

Hasco : Bonjour 🙂
J'ai repris le fichier exemple de mon premier post et essayé ton code dessus, malheureusement j'ai le même problème 🙁
Oui l'espace a disparu, je l'ai remit, mais ca n'a pas corrigé mon problème.

A+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour