XL 2019 boucles combinées

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 !

nadem0068

XLDnaute Junior
Bonjour à tous,
une fois de plus je me tourne vers vous afin de sollicité vos lumières.
je souhaite combiner plusieurs boucle ensemble mais je ne trouve pas la bonne méthode pour arriver à mes fin.
j'ai une boucle " for" dans la quelle ce trouve une boucle "for each" jusque la tout va bien.
elle me permet de trouvé le nombre de valeur "x" dans une plage donnée (une ligne).
je voudrais reproduire le calcule sur chaque ligne grâce à une autre boucle mais je coince.
je joint un petit fichier pour être plus explicite.

Merci d'avance à tout ceux qui prendrons le temps de ce pencher sur mon problème.😉

Bonne fête de pâques
 

Pièces jointes

Re bonjour,
Sinon avec du VBA
Code:
Sub Test()
    Application.ScreenUpdating = False
    Range("L2:U6").ClearContents                                'On efface le dernier contenu
    For F = 9 To 18                                             'On boucle sur les valeurs de A9 à A18 (Val1, Val2, Val3 .....)
        xVal = Cells(F, "A")                                    'On recupère dans une variable le contenu
        For Lig = 2 To 6                                        'On boucle sur les lignes 2 à 6
            xCpt = 0                                            'On met le compteur à zéro
            For Each xCell In Range("B" & Lig & ":K" & Lig)     'On parcours toutes les colonnes de B à K de la ligne (Lig)
                If xCell.Value = xVal Then                      'Si la cellule testée = varaible Val
                    xCpt = xCpt + 1                             'On incrémente le compteur
                End If                                          'Fin Si
            Next xCell                                          'Fin boucle colonne
            Cells(Lig, 3 + F) = xCpt                            'On ecrit dans la cellule (Lig, 3+F) la valeur du compteur
        Next Lig                                                'Fin boucle Lig
    Next F                                                      'Fin boucle F
    Application.ScreenUpdating = True
End Sub

Explication du 3+F
F va de 9 à 18 et vu que l'on souhaite écrire les réponses à partir de la colonne 12 (Colonne L),
- Quand F vaut 9 alors F+3 = 12 donc colonne L
- Quand F vaut 4 alors F+3 = 13 donc colonne M
- Quand F vaut 5 alors F+3 = 14 donc colonne N ........

@+ Lolote83
 
Dernière édition:
Re bonjour,
Sinon avec du VBA
Code:
Sub Test()
    Application.ScreenUpdating = False
    Range("L2:U6").ClearContents                                'On efface le dernier contenu
    For F = 9 To 18                                             'On boucle sur les valeurs de A9 à A18 (Val1, Val2, Val3 .....)
        xVal = Cells(F, "A")                                    'On recupère dans une variable le contenu
        For Lig = 2 To 6                                        'On boucle sur les lignes 2 à 6
            xCpt = 0                                            'On met le compteur à zéro
            For Each xCell In Range("B" & Lig & ":K" & Lig)     'On parcours toutes les colonnes de B à K de la ligne (Lig)
                If xCell.Value = xVal Then                      'Si la cellule testée = varaible Val
                    xCpt = xCpt + 1                             'On incrémente le compteur
                End If                                          'Fin Si
            Next xCell                                          'Fin boucle colonne
            Cells(Lig, 3 + F) = xCpt                            'On ecrit dans la cellule (Lig, 3+F) la valeur du compteur
        Next Lig                                                'Fin boucle Lig
    Next F                                                      'Fin boucle F
    Application.ScreenUpdating = True
End Sub

Explication du 3+F
F va de 9 à 18 et vu que l'on souhaite écrire les réponses à partir de la colonne 12 (Colonne L),
- Quand F vaut 9 alors F+3 = 12 donc colonne L
- Quand F vaut 4 alors F+3 = 13 donc colonne M
- Quand F vaut 5 alors F+3 = 14 donc colonne N ........

@+ Lolote83
Super merci beaucoup.
en plus les explication ligne par ligne me permette de bien comprendre le code.

belle journée à toi.😉
 
- 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
2
Affichages
468
Réponses
2
Affichages
404
Réponses
3
Affichages
535
Réponses
2
Affichages
707
Retour