appliquer macro à plusieurs lignes

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

L

lsteen

Guest
Bonjour à tous,

Je souhaiterais appliquer la macro de la première ligne (ligne 4) sur toutes les lignes du dessous.

Est ce que vous avez une idée pour m'aider.

Merci d'avance.
 

Pièces jointes

Re : appliquer macro à plusieurs lignes

Bonsoir Isteen le forum
voilà ton fichier en retour
j'ai supposé que c'était pas pour toutes les lignes mais toutes les trois lignes,(comme tu ne le disais pas naturellement )
a+
Papou😱

Code:
Sub TEST_1()
    Dim i&
    With Sheet5
        For i = 4 To .Range("B" & Rows.Count).End(xlUp).Row Step 3
            If Not IsEmpty(.Cells(i, 5)) Then .Cells(i, 3) = .Range("E2") Else .Cells(i, 3) = ""
            If Not IsEmpty(.Cells(i, "I")) Then .Cells(i, 3) = Range("I2")
            If Not IsEmpty(.Cells(i, "M")) Then .Cells(i, 3) = Range("M2")
            If Not IsEmpty(.Cells(i, "Q")) Then .Cells(i, 3) = Range("Q2")
            If Not IsEmpty(.Cells(i, "V")) Then .Cells(i, 3) = Range("V2")
            If Not IsEmpty(.Cells(i, "Y")) Then .Cells(i, 3) = Range("Y2")
            If Not IsEmpty(.Cells(i, "AC")) Then .Cells(i, 3) = Range("AC2")
            If Not IsEmpty(.Cells(i, "AG")) Then .Cells(i, 3) = Range("AG2")
        Next i
    End With
End Sub
 

Pièces jointes

Dernière édition:
Re : appliquer macro à plusieurs lignes

Re bonjour Isteen le forum
bon pas de réponse alors j'ai modifié la macro pour la rendre plus belle
ton fichier ci-dessous avec la modification
a+
Papou😱

Code:
Sub TEST_1()
    Dim i&, a
    Application.ScreenUpdating = 0
    With Sheet5
        For i = 4 To .Range("B" & Rows.Count).End(xlUp).Row Step 3
            If Not IsEmpty(.Cells(i, 5)) Then .Cells(i, 3) = .Range("E2") Else .Cells(i, 3) = ""
            For Each a In Array("I", "M", "Q", "Y", "AC", "AG")
                If Not IsEmpty(.Cells(i, a)) Then .Cells(i, 3) = .Cells(2, a)
            Next a
        Next i
    End With
End Sub
 

Pièces jointes

- 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
5
Affichages
283
Réponses
5
Affichages
186
Réponses
2
Affichages
379
Retour