| ||||||||
Petite astucienne ![]() | Bonjour à tous et à toutes,
j'ai voulu effectuer une macro pour aller vers une cellule précise. J'ai réussi mais j'aimerai apporter une amélioration.
La macro que j'ai faite donne ceci :
Sub test()
'
'
'
ActiveWindow.SmallScroll Down:=55
ActiveWindow.SmallScroll ToRight:=16
Range("R57").Select
End Sub
J'aimerai pouvoir spécifier que la cellule R57 doit se situe dans le coin en haut à gauche de la feuille.... ce que je ne peux pas prévoir avec cette macro.
En parcourant l'aide, j'ai vu object.ScrollLeft et object.ScrollTop mais il semblerait que mon Excel ne les reconnait pas.
Est-ce quelqu'un aurait compris ma question et aurait une solution à me proposer ??
Merci
| |||||||
Publicité | ||||||||
| ||||||||
Astucien ![]() | Bonjour,
Dans ta macro, il faut d'abord lui indiquer les dimensions de ta feuille de calcul pour qu'il se retrouve toujours dans la mÛme situation quand on lui fait faire des "scrolls"
Sub VersCelluleR57()
'DÚfinition de dimensions de la feuille de calcul
With ActiveWindow
.Width = 569.25
.Height = 318.75
End With
With ActiveWindow
.Top = 1.75
.Left = 13.75
End With
'Donne le point de dÚpart des dÚplacements
Range("A1").Select
'Recherche la cellule R57 et l'affiche en haut et Ó gauche
ActiveWindow.SmallScroll ToRight:=17
ActiveWindow.SmallScroll Down:=56
Range("R57").Select
End Sub
Marmotte18
[IMG]http://img97.exs.cx/img97/7449/Mimoza.jpg[/IMG]
Dite le avec des fleurs, c'est tellement plus gentil ...
| |||||||
Petite astucienne ![]() | j'essaierai þa alors, merci Marmotte !
mais comment connait-on les dimensions de la feuille ? et les dimensions changent-elles selon l'ecran d'ordinateur que l'on a ??
| |||||||
![]() | Bonjour,
Voici 2 macros qui rÚpondront sans doute Ó ton problÞme la 3Þme sert de dÚmonstration.
Sub PlaceR(Z As Range)
i = Z.Row: j = Z.Column
ActiveWindow.ScrollRow = i
ActiveWindow.ScrollColumn = j
End Sub
Sub PlaceC(i%, j%)
ActiveWindow.ScrollRow = i
ActiveWindow.ScrollColumn = j
End Sub
Sub Test()
PlaceC 51, 22
MsgBox "PlaceC active une cellule suivant la notation Row, Column" & Chr(13) & _
Space(33) & "ici 51,22 = V51"
PlaceR [R46]
MsgBox "PlaceR active une cellule suivant la notation Range [R46]"
End Sub
Ok ? Modifié par galopin01 le 24/10/2004 16:52 | |||||||
Astucien ![]() | Bonsoir,
LN, quand tu utilises ta macro automatique, c'est Ó dire
Outils / Macro / Nouvelle macro
il suffit de dÚplacer le bord droit de ta fenÛtre un peu Ó droite ou Ó gauche
Faire de mÛme avec le bord gauche, le bord haut et le bord bas.
Excel calculera lui mÛme les dimensions de ta fenÛtre.
La macro que je t'ai fournie, fonctionne telle qu'elle avec les dimensions de ma fenÛtre de test. Elle est opÚrationnelle chez toi !
Marmotte18
[IMG]http://img97.exs.cx/img97/7449/Mimoza.jpg[/IMG]
Dite le avec des fleurs, c'est tellement plus gentil ... Modifié par Marmotte18 le 24/10/2004 17:15 | |||||||
Petite astucienne ![]() | oula !! et bien je prends des notes et j'essaierai tout þa ! merci bien !
| |||||||
Petite astucienne ![]() | alors voilÓ j'ai fait mon truc, je dois dire que pour les histoires de dimension de la feuille, j'ai rien compris [confus]
au final, la macro nommÚe PlaceR est plutot pas mal et je l'aime bien.
j'ai pas trÞs bien compris PlaceC !!!!!!
par contre, il y a un inconvenient Ó toutes ces macros c'est qu'on ne peut pas ajouter de lignes ou de colonnes, savez vous si il existe une macro qui Úvolue en fonction de ces changements ou si on peut se placer sur une cellule en spÚcifiant une condition par exemple..... !!!??
merci
| |||||||
|
Les bons plans du moment PC Astuces | Tous les Bons Plans | ||||||||||||||||||
|