Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

somme feuil1 vers feuil2

  • Initiateur de la discussion Initiateur de la discussion dianbobo
  • 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 !

D

dianbobo

Guest
bonjour tout le monde
🙂
je suis sur un code que je croix avoir presque terminé mais je bute sur un point

voici mon code:


Code:
Sub spreadDeCredit()
Dim k As Long
Dim spot_1 As Double
Dim spot_2 As Double
Dim somme As Single
Dim diff As Double
k = Worksheets("Feuil1").Cells(Rows.Count, 1).End(xlUp).Row
 
For i = 0 To k
    If Worksheets("Feuil1").Cells(i, 16).Value Like "*AAA*" Then
       spot_1 = Worksheets("Feuil1").Cells(i, 10).Value
       spot_2 = Worksheets("Feuil1").Cells(i, 11).Value
       diff = Abs(spot_1 - spot_2)
       somme = 0
       somme = somme + diff
    End If
    Cells(6, 8).Value = somme
End Sub
dans ce code je cherche a parcourir "Feuil1" avec la condition que j'ai imposé et mettre le resultat dans feuil2
ma boucle parcours la feuille ("feuil1") daja a ce nivo j'aimerai savoir ci c'est correct mon ecriture ?
ensuite je voudrais faire la somme de toutes les differences Abs(spot_1 - spot_2) ...
est ce correct la aussi

Code:
somme = somme + diff
enfin mon soucis majeur est que ma cellule H6 DOIT CONTENIR : H6=somme/(nombre de fois qu'on a rencontré le caractere AAA dans feuil1) en d'autres termes c'est le nombre de fois qu'on a fait la difference entre spot_1 et spot_2

sof que j'ignore comment le definir dans mon code

merci de votre aide 🙂
 
Re : somme feuil1 vers feuil2

Bonjour,
je pense que c'est bon mais je n'est pas tester,juste une chose si tu veux faire la somme des diffs dans la boucle k il ne faut pas remettre la valeur somme a zéro
donc supprime cette ligne.
somme=0 ou et la au dessus du for i
A+
 
Re : somme feuil1 vers feuil2

voila j'ai pu faire ceci
mais j'ai une erreur de depassement de capacité a cette ligne :
Code:
Cells(6, 8).Value = somme/Occurence
voici le code:

Code:
Sub spreadDeCredit()
Dim k As Long
Dim spot_1 As Double
Dim spot_2 As Double
Dim somme As Single
Dim diff As Double
Dim Occurence as integer
k = Worksheets("Feuil1").Cells(Rows.Count, 1).End(xlUp).Row

For i = 0 To k
    If Worksheets("Feuil1").Cells(i, 16).Value Like "*AAA*" Then
       Occurence = Occurence + 1
       spot_1 = Worksheets("Feuil1").Cells(i, 10).Value
       spot_2 = Worksheets("Feuil1").Cells(i, 11).Value
       diff = Abs(spot_1 - spot_2)
       somme = somme + diff
    End If
    Cells(6, 8).Value = somme/Occurence
End Sub

si quelqu'un veut bien m'aider🙂
merci
 
Re : somme feuil1 vers feuil2

Re,
essaie ceci
Code:
Sub spreadDeCredit()

Dim k,[COLOR="Red"]i,j[/COLOR] As Long
Dim spot_1 As Double
Dim spot_2 As Double
Dim somme As Single
Dim diff As Double

k = Worksheets("Feuil1").Cells(Rows.Count, 1).End(xlUp).Row
[COLOR="Red"]somme = 0[/COLOR]
For i = 0 To k
    If Worksheets("Feuil1").Cells(i, 16).Value Like "*AAA*" Then
       spot_1 = Worksheets("Feuil1").Cells(i, 10).Value
       spot_2 = Worksheets("Feuil1").Cells(i, 11).Value
       diff = Abs(spot_1 - spot_2)
       [COLOR="Red"]somme = somme + diff
       j=j+1 [/COLOR]   
    End If
  [COLOR="Red"]Next i
Cells(6, 8).Value = somme/j[/COLOR]
End Sub
A+
 
Re : somme feuil1 vers feuil2

dans celui ci:
Code:
Sub spreaDeCredit()

Dim k As Long
Dim spot_1 As Double
Dim spot_2 As Double
Dim somme As Single
Dim diff As Double
Dim Occurence As Integer
k = Worksheets("Feuil1").Cells(Rows.Count, 1).End(xlUp).Row

For i = 0 To k - 6
    If Worksheets("Feuil1").Cells(i + 6, 16).Value Like "*AAA*" Then
       Occurence = Occurence + 1
       spot_1 = Worksheets("Feuil1").Cells(i + 6, 10).Value
       spot_2 = Worksheets("Feuil1").Cells(i + 6, 11).Value
       diff = Abs(spot_1 - spot_2)
       somme = somme + diff
    End If
    Cells(6, 8).Value = Val(somme) / Val(Occurence)
    Next
    
End Sub

j'ai toujours un depassement de capacité

par contre dans celui là:


Code:
Sub spreadDeCredit22()

Dim k, i, j As Long
Dim spot_1 As Double
Dim spot_2 As Double
Dim somme As Single
Dim diff As Double

k = Worksheets("Feuil1").Cells(Rows.Count, 1).End(xlUp).Row
somme = 0
For i = 0 To k
    If Worksheets("Feuil1").Cells(i + 6, 16).Value Like "*AAA*" Then
       spot_1 = Worksheets("Feuil1").Cells(i + 6, 10).Value
       spot_2 = Worksheets("Feuil1").Cells(i + 6, 11).Value
       diff = Abs(spot_1 - spot_2)
       somme = somme + diff
       j = j + 1
    End If
  Next i
Cells(6, 8).Value = somme / j
End Sub

j'ai une incompatibilité de type dans la boucle for i=0 ...😕
 
Re : somme feuil1 vers feuil2

VOILA JE N'arrive pas a joindre un fichier on dirai que c'est pas autorisé la ou je suis mais j'ai mi un petit exemple pour mieux comprendre ce que j'essai de faire:

voici un exemple de resultat:

supossons que AAA se trouve a la ligne 6,9,15 et 56 on suppose que k >56
je fait les differences suivantes:


Code:
diff1= Abs(Worksheets("Feuil1").Cells(6, 10).Value- Worksheets("Feuil1").Cells(6, 11).Value
)

 diif2=Abs(Worksheets("Feuil1").Cells(9, 10).Value- Worksheets("Feuil1").Cells(9, 11).Value
)

 diff3=Abs(Worksheets("Feuil1").Cells(15, 10).Value- Worksheets("Feuil1").Cells(15, 11).Value
)

 diff4=Abs(Worksheets("Feuil1").Cells(56, 10).Value- Worksheets("Feuil1").Cells(56, 11).Value
)
et finalement ma somme est :



Code:
somme=(diff1+diff2+diff3+diff4)/4
on divise par 4 car on a rencontrer le caractere AAA quatre fois quand i parcours les cellules jusqu'a k..
merci d'avance
 
Re : somme feuil1 vers feuil2

et oui c'est bien ce que j'avais compris et ce que le code que je t'ai proposer (le tiens améliorer)
connais tu le mode debuggage du vba
il faut apprendre a l'utiliser
en fait un point d'arret devant la ligne for i par exemple (clique a gauche de la ligne de code
ensuite la touche F8 pour le mode de pas a pas et F5 pour continuer le code jusqu'au prochain point d'arret
tu peux egalement utiliser l'espion (selection de la variable clique droit + ajouter un espion tu sera lire la valeur de la variable au temps T du code
tu peux Zipper ton fichier et le faire parvenir par ci joint.fr
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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
1
Affichages
323
Réponses
3
Affichages
922
Réponses
9
Affichages
882
Réponses
4
Affichages
528
Réponses
16
Affichages
2 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…