Faire des Sommes en Vba dans une BDD avec données saisie avec Usf

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 !

MuscatMimi

XLDnaute Accro
Bonsoir a tous

J'aimerais savoir , si en Vba il est possible de faire des calcul de somme
de colonnes dans des cellules.
de solde partiels ........entre deux colonnes
Les données sont saisie via un Usf
et chaque mois elle ce valide auto ,dans une autre feuille
donc la feuille de donnée ce retrouve vide

Les explications plus précise sont dans le fichier

merci a tous a l'avance
cordialement
 

Pièces jointes

Re : Faire des Sommes en Vba dans une BDD avec données saisie avec Usf

Bonjour Bébére

Merci,pour tout ce que tu fais pour mon fichier

je viens de consulter tes modifs, j'avoue encore pas trop comprendre
mais je vais décortiquer tes Modifs
mais ça fonctionne en partie
Sauf le Calcul en L2,L3 dans Feuil "INTERVENTIONS"
ne ce fait pas aprés avoir cliquer sur le Btn Modif de Usf Consultations Ecritures
et ça me valide les montants en Col G et H en format texte,je comprends pas

Par la suite ,il me reste quelques Modifs que seul un pro peux solutionner
si tu veux bien finir de m'aider ce serait sympa de ta part
Pour plus de facilités , et si tu est OK , on passe par mon adresse mail ,,
a toi de me dire !!!!


A bientôt Bébére

Cordialement
 
Dernière édition:
Re : Faire des Sommes en Vba dans une BDD avec données saisie avec Usf

Salut bébére

Un trés grand merci pour ton aide précieuse

Pas mal le code que tu a fait pour le calcul des colonnes

Regarde ci dessous, ce que j'ai trouvé aussi comme code, en attendant
le tiens

mise à jour de la feuille
'''' Sheets("INTERVENTIONS").Cells(Numlign, 1) = UCase(.ListItems(ItemSelect).Text)
''''Sheets("INTERVENTIONS").Cells(Numlign, 2) = .ListItems(ItemSelect).ListSubItems(1).Text
''''Sheets("INTERVENTIONS").Cells(Numlign, 3) = CDate(.ListItems(ItemSelect).ListSubItems(2).Text)
'''' For k = 3 To 5
'''' Sheets("INTERVENTIONS").Cells(Numlign, k + 1) = .ListItems(ItemSelect).ListSubItems(k).Text
''''Next
''''If .ListItems(ItemSelect).ListSubItems(6).Text <> "" Then _
''''Sheets("INTERVENTIONS").Cells(Numlign, 7) = CDbl(.ListItems(ItemSelect).ListSubItems(6)) '.Text)
'''' Sheets("INTERVENTIONS").Cells(Numlign, 8) = .ListItems(ItemSelect).ListSubItems(7) '.Text)

'''' Sheets("INTERVENTIONS").Cells(Numlign, 10) = .ListItems(ItemSelect).ListSubItems(9).Text '9

Dim LigModif As Integer
With Worksheets("INTERVENTIONS")
LigModif = .Range("B65536").End(xlUp).Row ' + 1
.Cells(LigModif, 1) = TextBox1.Value
.Cells(LigModif, 2) = TextBox2.Value '
.Cells(LigModif, 3) = TextBox3.Value 'La_Date.Value
.Cells(LigModif, 4) = TextBox4.Value 'ComboBox '
.Cells(LigModif, 5) = TextBox5.Value
.Cells(LigModif, 6) = TextBox6.Value
If TextBox7 <> "" Then .Cells(LigModif, 7) = CDbl(TextBox7) '.Value
If TextBox8 <> "" Then .Cells(LigModif, 8) = CDbl(TextBox8) '.Value
Calcul LigModif
.Cells(LigModif, 10) = TextBox10.Value
End With
'---MsgBox compte bancaire aprés Mise a Jour
MsgBox TextBox2 & " à bien été mis à jour " _
& vbCrLf & vbCrLf & vbTab & "Nom = " & vbTab & TextBox2 _
& vbCrLf & vbCrLf & vbTab & "Nom Banque = " & vbTab & TextBox4, _
vbInformation, "Modifications => Mode Mise à Jour Accomplie <="


Par contre j'ai pas compris dans ce que tu dis a propos de ,

je te cite "changement d'année pour la prochaine fois"

Je ferais encore appel a toi , pour pouvoir éffacer dans les Feuil Echéancier et INTERVENTIONS (que dans le nouveau classeur)
les lignes concernant l'année 2008 quand je crée ce nouveau classeur
car l'ancien ce sauvegarde dans mon dossier Comptes Bancaire

Bonne journée Bébére,

et merci encore de ta gentillesse , de tes compétences; et surtout du temps que tu m'a consacré
 
Dernière édition:
Re : Faire des Sommes en Vba dans une BDD avec données saisie avec Usf

bonjour Vaucluse
ta demande ce que veut dire "changement d'année pour la prochaine fois",voir la suite

exemple d'appel de "EffaceAnneeEcoulee"

Private Sub CommandButton1_Click
Dim VarReponse As String

VarReponse = MsgBox("Effacer échéance et échéancier?", vbYesNo, "Alerte")
If VarReponse = vbNo Then Exit Sub

EffaceAnneeEcoulee

end sub

à mettre dans un module
explication dans code

Private Sub EffaceAnneeEcoulee() 'bebere
Dim Cel As Range, L As Long, Li As Long, C As Byte

With Worksheets("Echéancier")
L = .Cells(65536, "C").End(xlUp).Row
'commence par la dernière ligne pour delete,pour les autres tu fais 2 to Li
For Li = L To 2 Step -1
'tu remplaces select par clearcontents(efface contenu)ou delete(supprime la ligne)
.Range("A" & Li & ":I" & Li).Select
Next Li
End With
'moyen de faire plus simple si la ligne ne contient qu'une année
'exemple
'With Worksheets("echeance")
''commence par la dernière ligne
'For Li = L To 3 Step -1
''tu remplaces select par clearcontents(efface contenu)ou delete(supprime la ligne)
'.Range("A" & Li & ":AB" & Li).Select
'Next Li
'*** tu supprimes ou met en commentaire si tu choisis exemple
With Worksheets("echeance")
L = .Cells(65536, "E").End(xlUp).Row

'commence par la dernière ligne
For Li = L To 3 Step -1
C = 0
For Each Cel In .Range("E" & Li & ":AB" & Li)
If Cel.Column Mod 2 <> 0 Then 'les colonnes impaires
If Year(Cel) = 2008 Or Cel = "" Then C = C + 1 'tu remplaces 2008 par Year(Date - 1)
End If
Next Cel
'tu remplaces select par clearcontents(efface contenu)ou delete(supprime la ligne)
If C = 12 Then .Range("A" & Li & ":AB" & Li).Select
Next Li

End With
'***
End Sub

si jai oublié queque chose tu me le rappelles
à bientôt
 
Re : Faire des Sommes en Vba dans une BDD avec données saisie avec Usf

Salut Bébére

Merci pour ce que tu fais pour mon Fichier

Dans le Fichier déposé sur Ci-Joint .fr

Je ne sais pas si tu a déja lu ce post envoyé hier a 11h
mais je viens de trouver l'erreur pour ValiderModifcation
N°Chéques dans Usf ConsultationEcritures, (c'est une col "I"que j'ai ajouté aprés ta derniére interventions sur mon fichier)

==================================
Format et saisie dans textBox 8 et 7
Dans ce même Usf, dans TextBox 8 et 7 si je met le format
TextBox7.Value = Format(TextBox7, "# ##0.00€")
mais si je supprime tout les chiffres ,impossible de noter d'autres chiffres
regarde ce qu'il peut y avoir a corriger
============================
Concernant le Code Supprimer Lignes de l'Année en cours
je viens d'essayer pour la Feuil " ECHEANCE " Ok
Mais pour la feuil " Echéancier "
ça vide bien l'année en cours mais il reste une ligne pour 2008
a cet instant j'ai pas encore trouvé l'erreur
Voici le code Saisi dans un Module
'--Supprime Lignes Feuille "Echéancier" de L'Année Ecoulée dans Echéancier
With Worksheets("Echéancier")
Dim H As Byte
Dim Cels As Range
Dim D As Long
Dim Lig As Long
H = .Cells(65536, "C").End(xlUp).Row
'commence par la dernière ligne
For Lig = H To 3 Step -1
D = 0
For Each Cels In .Range("C" & Lig)
If Cels.Column Mod 2 <> 0 Then 'les colonnes impaires
If Year(Cels) = Year(Date - 1) Or Cels = "" Then D = D + 1 'tu remplaces 2008 par Year(Date - 1)
End If
Next Cels
'tu remplaces select par clearcontents(efface contenu)ou delete(supprime la ligne)
If D = 1 Then .Range("A" & Lig & ":J" & Lig).Delete '.Select
Next Lig
End With

'--Fin


Bon week-end
Bébére
Cijoint.fr - Service gratuit de dépôt de fichiers
A bientôt
 
Dernière édition:
Re : Faire des Sommes en Vba dans une BDD avec données saisie avec Usf

Bonjour Bébére

je viens de m'appercevoir que depuis que tu a modifié le code dans "Mise a Jour"
dés que je passe par Recherche via les 6 Cbx dés que je sélectionne un Nom dans ces Cbx et que je clique sur une Ligne dans la ListView, dans les Tbx Débit ,Crédit,Solde Intermédiaire ce ne sont pas les bonnes données qui s'affiche
peut -tu STP jetter un coup d'oeil

merci beaucoup
 
Re : Faire des Sommes en Vba dans une BDD avec données saisie avec Usf

salut Vaucluse
vois si cela te convient

Private Sub MiseAJourTB()
'--Calcul Col
Dim X As Long
Dim k As Byte

Credit = 0: Debit = 0: SoldeI = 0
Li = ListView1.SelectedItem.Index
'la clé donne la bonne ligne
X = Mid(ListView1.ListItems(Li).Key, 2, 1)

TextBox1 = ListView1.ListItems(Li).Text
'avec 1 to 9,j'ai parfois une erreur,comme çà non
For k = 1 To ListView1.ColumnHeaders.Count - 1
Controls("TextBox" & k + 1) = ListView1.ListItems(Li).ListSubItems(k)
Next

Li = Li + 1
Debit = Sheets("INTERVENTIONS").Cells(X, 7)
Credit = Sheets("INTERVENTIONS").Cells(X, 8)
SoldeI = Sheets("INTERVENTIONS").Cells(X, 9)
TextBox7 = Debit: TextBox7.Tag = Debit
TextBox8 = Credit: TextBox8.Tag = Credit
TextBox9 = SoldeI

If Li = 2 Then
TextBox9.Tag = Sheets("INTERVENTIONS").Cells(1, "L")
Else: TextBox9.Tag = Sheets("INTERVENTIONS").Cells(X- 1, "I")
End If

End Sub



Private Sub Alim_Listv(J As Byte, Col As Byte)

Dim i As Long, k As Byte, X

With Sheets("INTERVENTIONS")
For i = 2 To .Cells(65536, Col).End(xlUp).Row
If .Cells(i, Col).Text = Controls("Cbx" & J).Text Then
ListView1.ListItems.Add , "K" & i, .Cells(i, 1) '1ère Colonne
For k = 1 To ListView1.ColumnHeaders.Count - 1
ListView1.ListItems(ListView1.ListItems.Count).ListSubItems.Add , , .Cells(i, k + 1).Text
Next k
End If
Next
End With

For X = 1 To ListView1.ListItems.Count
If ListView1.ListItems(X) = UCase("P") Then
ListView1.ListItems(X).ForeColor = &HFF0000
For J = 1 To 8
ListView1.ListItems(X).ListSubItems(J).ForeColor = &HFF0000
Next
End If
Next

End Sub
 
- 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

Réponses
3
Affichages
302
Réponses
12
Affichages
832
Retour