Selection d'une plage avec vba

ahmediie Messages postés 4 Date d'inscription lundi 15 juin 2009 Statut Membre Dernière intervention 1 juillet 2010 - 22 juin 2010 à 14:50
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 - 23 juin 2010 à 12:51
Bonjour,

Voilà j'essaye de mettre dans maplage toutes les cellules actives de ma feuille en enlevant la première ligne qui sert de titre pour mon tableau. J'utilise le code suivant (j'aimerais comprendre pourquoi ça ne marche pas):

Dim j As Integer, l As Integer
Dim maplage As Range

l = Worksheets("Donnees").UsedRange.Columns.Count
j = Worksheets("Donnees").UsedRange.Rows.Count

With ThisWorkbook.Worksheets("Donnees")
Set maplage = .Range(.Cells(1, 1), .Cells(j, l).End(xlUp))
End With

Set zonetri = zonetri.Offset(1).Resize(zonetri.Rows.Count - 1)  


Merci beaucoup pour votre aide.

3 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
22 juin 2010 à 17:19
Salut

"Ca ne marche pas" ne veut rien dire.
Si tu as une erreur, dis-nous laquelle.
Si tu n'obtiens pas le résultat escompté, dis-nous ce que tu vois ET ce que tu voudrais voir.

"zonetri" n'est pas dimensionné : On ne sait pas de quoi il s'agit.
Set zonetri = zonetri.Offset...
Un objet qui fait référence à lui même : est-ce bien normal ?

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
ahmediie Messages postés 4 Date d'inscription lundi 15 juin 2009 Statut Membre Dernière intervention 1 juillet 2010
22 juin 2010 à 17:30
Salut,

Désolé pour la faute de frappe (zonetri = maplage) et pour le .End(xlUp) qui n'a pas lieu d'être.

Pour ce que ca me sélectionne comme plage ... ben rien
Quand j'ajoute à la fin du code maplage.interior.color = vbRed ca ne fait absolument rien.

Vala, je n'arrive pas à comprendre pourquoi ça ne marche, pourtant tout à l'air d'être correct ...

Merci
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
23 juin 2010 à 12:51
Si ta syntaxe ne renvoie pas d'erreur, c'est qu'elle est correcte.
C'est à toi de déboguer pour trouver le problème :
Que valent l et j après tes deux premières instructions ?
Chez moi, quelque soit la sélection, ils renvoient tous les deux le chiffre 1 puisqu'il n'y a aucun Range actuellement défini.

Selection.Columns.Count et Selection.Rows.Count renvoient les données correspondant à la sélection actuelle.
Est-ce que c'est ce que tu recherches ?
0
Rejoignez-nous