IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

FOR EACH VBA


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Femme Profil pro
    Responsable de compte
    Inscrit en
    Septembre 2011
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Responsable de compte
    Secteur : Bâtiment

    Informations forums :
    Inscription : Septembre 2011
    Messages : 1
    Par défaut FOR EACH VBA
    Bonjour à tous,
    Nvelle sur le forum et sur VBA. Je cherche à faire une fonction avec 2 plages discontinues et avec FOR EACH et je veux avoir le résultat des 2 plages dans une cellule. Pouvez vous m'aider ? ci joint mon programme. Merci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    Function Additionnejaune(plage As Range, plage1 As Range) As Single
     
        Dim cellule1 As Range
        Dim cellule2 As Range
        Dim total2 As Single
        Dim total3 As Single
     
        For Each cellule1 In plage
     
             If cellule1.Interior.ColorIndex = 6 = True Then
                total2 = 0        
             Else
                total3 = total3 + cellule1.Value + cellule2.Value         
             End If
     
        Next
     
     Additionnejaune = total3
     
    End Function

  2. #2
    Expert confirmé Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Par défaut
    Bonjour,

    sur cette ligne le "= true" est de trop
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If cellule1.Interior.ColorIndex = 6 = True Then
    Je ne comprend pas bien l'utilité de total 2


    Une solution pour faire l'addition de toutes les cellules jaune
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Function AdditionJaune(Plage1 As Range, Plage2 As Range) As Double
     
    Dim rg As Range
    Dim Total As Double
     
    For Each rg In Plage1
        If rg.Interior.ColorIndex = 6 Then Total = Total + rg.Value
    Next
     
    For Each rg In Plage2
        If rg.Interior.ColorIndex = 6 Then Total = Total + rg.Value
    Next
     
    AdditionJaune = Total
     
    End Function
    appel de la fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =AdditionJaune(A1:A12;C1:C12)
    A noter que l'on pourrait avoir qu'une seule plage dans le code si on appelait comme suit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =AdditionJaune((A1:A12;C1:C12))
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Function AdditionJaune(Plage1 As Range) As Double
     
    Dim rg As Range
    Dim Total As Double
     
    For Each rg In Plage1
        If rg.Interior.ColorIndex = 6 Then Total = Total + rg.Value
    Next
     
     
    AdditionJaune = Total
     
    End Function

Discussions similaires

  1. [VBA-E]PB sur une boucle for each next
    Par rond24 dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 31/07/2006, 15h47
  2. aide vba boucle for each paramétrée en range
    Par gotlieb dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 27/07/2006, 08h55
  3. [VBA-A] Pb avec for each et listbox
    Par OtObOx dans le forum VBA Access
    Réponses: 3
    Dernier message: 29/05/2006, 19h40
  4. [VBA-E] Pb sur un For Each récalcitrant
    Par Squelet dans le forum Macros et VBA Excel
    Réponses: 27
    Dernier message: 20/03/2006, 13h53
  5. [VBA-E] erreur boucle for each
    Par Mut dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 15/02/2006, 16h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo