cp4
XLDnaute Barbatruc
Bonjour,
Suite à une discussion.
J'essaie d'unir les plages jaunes en une seule plage en bouclant les cellules de la colonne B,
avec condition qu'elles ne sont pas vides et que la cellule en colonne C ne contiennent pas de formule.
	
	
	
	
	
		
Au final la plage Plg devrait contenir:
C5:N11, C13:N14, C19:N20, C22:N23 ,C26:N28, C36:N53, C56:N56, C59:N64, C67:N76, C83:N84, C89:N92, C94:N94, C98:N101, C106:N106
Là, je suis un peu perdu. Merci de venir à la rescousse🥺
Bonne journée
	
		
			
		
		
	
				
			Suite à une discussion.
J'essaie d'unir les plages jaunes en une seule plage en bouclant les cellules de la colonne B,
avec condition qu'elles ne sont pas vides et que la cellule en colonne C ne contiennent pas de formule.
		VB:
	
	
	Option Explicit
Sub Combiner_Plages()
    Dim dl As Long, i As Long, n As Integer, plg As Range
    With ActiveSheet
        dl = .UsedRange.Cells(.UsedRange.Cells.Count).Row
        For i = 4 To dl
            If .Range("B" & i) <> "" And Not .Range("C" & i).HasFormula Then
                If plg Is Nothing Then
                    Set plg = .Range("C" & i).Resize(, 12)
                    Debug.Print plg.Address
                Else
                    n = n + 1
                    Set plg = Application.Union(plg, .Range("C" & i).Resize(n, 12))
                    Debug.Print plg.Address
                End If
            End If
        Next i
    End With
End Sub
	C5:N11, C13:N14, C19:N20, C22:N23 ,C26:N28, C36:N53, C56:N56, C59:N64, C67:N76, C83:N84, C89:N92, C94:N94, C98:N101, C106:N106
Là, je suis un peu perdu. Merci de venir à la rescousse🥺
Bonne journée