Bonjour à tous,

Je butte sur un problème de taille. J'aimerai définir un range de la manière suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
PlageX=Feuil1.Range(Feuil1.Cells(1,2),Feuil1.Cells(1,5),...,Feuil1.Cells(1,x))
Le choix des cellules est conditionnel. Voici le bout de code réalisé :

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
 
Dim PlageX as range, PlageY as range
 
For Each obj In Feuil1.OLEObjects'pour chaque objet de la feuille 1
        If obj.Object.Value = False Then 'si l'objet n'est pas validé
            Nom = Mid(obj.Name, 5)'récupération du nom d'objet
 
            For Lig = 8 To Feuil1.Range("B8").End(xlDown).Row Step 1 'de la ligne 8 jusqu'à la dernière cellule non vide de la colonne B
                If Feuil1.Range("B" & Lig).Value Like Nom Then'si C8 contient le nom du bouton
                    If PlageX Is Nothing Then'si la plage X est vide
                        PlageX = Feuil1.Range(Feuil1.Cells(Lig, 18))'Là est mon problème comment mettre la première valeur de la plage X rt Y
                        PlageY = Feuil1.Range("E" & Lig).adress
                    Else'si PlageX n'est pas vide la compléter
                        PlageX = Application.Union(PlageX, Feuil1.Range("R" & Lig).Value)'
                        PlageY = Application.Union(PlageY, Feuil1.Range("E" & Lig).Value)
                    End If'fin des conditions et des boucles
                End If
            Next Lig
        End If
    Next obj
Mon problème comment affecter la première cellule à mon range ?

Merci d'avance de votre aide