VBA selection plage de cellule

Résolu
informatifien Messages postés 781 Statut Membre -  
informatifien Messages postés 781 Statut Membre -
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

gbinforme Messages postés 15478 Statut Contributeur 4 727
 
bonjour

D'après ce que je comprend tu devrais essayer :
Cells(a, 4).Resize(3, b).Select 'je selectionne une plage
0
informatifien Messages postés 781 Statut Membre 92
 
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à
0
gbinforme Messages postés 15478 Statut Contributeur 4 727
 
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.
0
informatifien Messages postés 781 Statut Membre 92
 
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
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
informatifien Messages postés 781 Statut Membre 92
 
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
0