VBA selection plage de cellule [Résolu/Fermé]

Signaler
Messages postés
741
Date d'inscription
lundi 18 mai 2009
Statut
Membre
Dernière intervention
10 janvier 2016
-
Messages postés
741
Date d'inscription
lundi 18 mai 2009
Statut
Membre
Dernière intervention
10 janvier 2016
-
Bonjour,


voici un code pour selectionner une plage de cellule avec 2 variables Long:

Private Sub Validation_Click()

Dim a As Long, b As Long

Do 'je cherche mon OF saisi dans la colone "A"
a = a + 1
Loop Until Application.Cells(a, 1) = SaisiOf

Do 'je cherche la derniere cellule vide sur la ligne 'a'
b = b + 1
Loop Until Application.Cells(a, b) = Empty

Range Cells(a, 4): Cells(a + 3, b).Select 'je selectionne une plage


End Sub



Je voudrai donc cherché ma valeur 'OF' puis la dernière cellule vide sur la ligne de cette valeur, ensuite selectionner la plage à partir de la 5° cellule de cette meme ligne (a,4) jusqu'à la derniere cellule vide + 3 ligne . . .
Exemple: si ma valeur est en A1, et que la derniere cellule est J1 je voudrai selectionner de E1 à J3

voilà j'espere que vous me comprendrez mon code bloque sur la ligne Range Cells(a, 4): Cells(a + 3, b).Select avec une erreur : "utilisation incorrecte de la propriété". ..


à l'aide S'il vous plait

5 réponses

Messages postés
14934
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 357
bonjour

D'après ce que je comprend tu devrais essayer :
Cells(a, 4).Resize(3, b).Select 'je selectionne une plage
Messages postés
741
Date d'inscription
lundi 18 mai 2009
Statut
Membre
Dernière intervention
10 janvier 2016
88
re merci pour ta réponse il y a du mieux je n'ai plus le message d'erreur par contre ça ne s'arrete pas à la derniere cellule. . .mais 4 apres la derniere
je te donne des precision sur mon exemple:

mon OF ( valeur de SaisiOf ) est en A1, à partir de E1j'ai une serie de date qui peut etre variable mais pour l'exemple on dit qu'elle s'arrete en J1 , les 2 lignes en dessous j'ai une action sous chaque date, je souhaite donc selectionner les cellules à partir de la premiere date soit celle en E1 jusqu'à J3

Avec ton code ça me selectionen jusqu'à N3

voilà
Messages postés
14934
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 357
bonjour

Il suffit de mettre 1 au lieu de 4 mais il faudrait que tu clarifies tes explications car il est très difficile de te comprendre.
Messages postés
741
Date d'inscription
lundi 18 mai 2009
Statut
Membre
Dernière intervention
10 janvier 2016
88
c'est bon j'ai trouvé en faite la valeur b c'est de A1 jusqu'à derniere cellule vide donc il selectionne bien à partir de A5 mais à ca il y rajoute b soit de A1 à J1 j'ai solutionné comme ceci:


Cells(a, 4).Resize(3, b - 4).Select 'j'enleve mon decallage de 4
Messages postés
741
Date d'inscription
lundi 18 mai 2009
Statut
Membre
Dernière intervention
10 janvier 2016
88
désolé je sais que c'est pas facile j'essaye bien d'etre le plus clair possible mais bon pas toujours evident, mais bon le principal c'est qu'on ai réussi encore merci

et merci d'avoir mis le topic résolu ;) j'allai le faire