Excel
Résolu
sid3show79
Messages postés
19
Date d'inscription
Statut
Membre
Dernière intervention
-
sid3show79 Messages postés 19 Date d'inscription Statut Membre Dernière intervention -
sid3show79 Messages postés 19 Date d'inscription Statut Membre Dernière intervention -
bonjour,
j'aimerais de part le biais d'inputbox demander une semaine de référence(1-52), avec cette référence aller a la feuille département me servir de la fonction .find et sélectionner la cellule (de la colonne a) de la semaine(ref inputbox) par la suite additionner les valeurs de la colonne B) de 6 cellule vers le haut à condition que la colonne c ne contienne pas string "oui".
le tout serait additionner dans la premiere feuille peu importe la cellule
j'aimerais avoir de quoi pour partir mais je suis un peu dans le neant. au pire comment je fais pour selectionner 6 cellules et ne pas prendre celle offset(0,1).value= "oui"
https://www.cjoint.com/c/FGxuIamrtSU
merci
j'aimerais de part le biais d'inputbox demander une semaine de référence(1-52), avec cette référence aller a la feuille département me servir de la fonction .find et sélectionner la cellule (de la colonne a) de la semaine(ref inputbox) par la suite additionner les valeurs de la colonne B) de 6 cellule vers le haut à condition que la colonne c ne contienne pas string "oui".
le tout serait additionner dans la premiere feuille peu importe la cellule
j'aimerais avoir de quoi pour partir mais je suis un peu dans le neant. au pire comment je fais pour selectionner 6 cellules et ne pas prendre celle offset(0,1).value= "oui"
https://www.cjoint.com/c/FGxuIamrtSU
merci
A voir également:
- Excel
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
- Si ou excel - Guide
- Excel moyenne - Guide
2 réponses
Bonjour,
ci-joint code à essayer
ci-joint code à essayer
Sub essaie()
Dim semaine As Range, vente As Range, férié As Range, ligne As Range
Dim cumul_vente As Long
Dim strnb_semaine As Integer
Dim A, B, C, D, E, F, G
strnb_semaine = 6
Dim strsem_ref As Integer
With Feuil2.UsedRange 'plage utilisée
'définition rubriques
Set semaine = .Cells.Find("semaine", LookIn:=xlValues)
Set vente = .Cells.Find("vente", LookIn:=xlValues)
Set férié = .Cells.Find("férié", LookIn:=xlValues)
'assignation numéro de semaine
strsem_ref = InputBox("quelle est votre semaine de reférence?")
Set ligne_semaine = semaine.Resize(.Rows.Count).Find(strsem_ref, LookIn:=xlValues)
If ligne_semaine.Row - semaine.Row - strnb_semaine >= 0 Then Set début_semaine = ligne_semaine.Offset(-strnb_semaine) _
Else Set début_semaine = semaine
'cumul vente juqu'au numéro de semaine choisi
cumul_vente = 0
For Each ligne In .Offset(début_semaine.Row).Resize(.Rows.Count - début_semaine.Row).Rows
If ligne.Columns(férié.Column) <> "oui" Then cumul_vente = cumul_vente + ligne.Columns(vente.Column)
If ligne.Columns(semaine.Column) = strsem_ref Then Exit For 'sortie boucle lorsque le numéro de semaine choisi est atteint
Next
End With
'Stockage dans Feuil1
Feuil1.Range("B3") = cumul_vente
End Sub
ci-joint code modifié
--
Sub essaie()
Dim semaine As Range, vente As Range, férié As Range, ligne As Range
Dim cumul_vente As Long
Dim strnb_semaine As Integer
Dim A, B, C, D, E, F, G
Dim strsem_ref As Integer
With Feuil2.UsedRange 'plage utilisée
'définition rubriques
Set semaine = .Cells.Find("semaine", LookIn:=xlValues)
Set vente = .Cells.Find("vente", LookIn:=xlValues)
Set férié = .Cells.Find("férié", LookIn:=xlValues)
'assignation numéro de semaine
strsem_ref = InputBox("quelle est votre semaine de reférence?")
Set ligne_semaine = semaine.Resize(.Rows.Count).Find(strsem_ref, LookIn:=xlValues)
End With
'cumul vente depuis le numéro de semaine choisi
cumul_vente = 0
strnb_semaine = 6
For i = ligne_semaine.Row To semaine.Row + 1 Step -1
If férié.Rows(i + 1 - férié.Row) <> "oui" Then
cumul_vente = cumul_vente + vente.Rows(i + 1 - vente.Row)
strnb_semaine = strnb_semaine - 1
End If
If strnb_semaine = 0 Then Exit For 'sortie boucle lorsque les 6 semaines sont ateintes
Next
'Stockage dans Feuil1
Feuil1.Range("B3") = cumul_vente
End Sub
faudrais qu'il skip les feriés et qui passe a la suivante pour avoir les 6 semaines
le problème c'est d'assigner les variables sinon juste de changer la méthode utilisé. au départ c'est ce que je voulais faire mais ca me semble un plus complexe.
merci de ton aide