ScrollArea sur des plages non adjacentes ?

  • Initiateur de la discussion Celeda
  • Date de début
C

Celeda

Guest
Bonjour,

On connait tous la procédure qui nous permet de "bloquer" le déplacement dans une feuille selon une plage de données telle que la suivante :

Private Sub Worksheet_Activate()
ScrollArea = "TabVar"
End Sub

(TabVar étant la plage autorisée par exemple de A1 à H100)

mais ce que je cherche à faire et d'utiliser ScrollArea sur des cellules non adjacentes, soit une deuxième plage de données en P1 à R100, par ex.

pensez-vous que cela soit faisable avec ScrollArea ou faut-il abandonner cette piste et faire autrement ? SVP.

Un grand merci

Celeda
 
D

Dan

Guest
Bonsoir Celeda,

Non je ne pense pas que tu puisses faire cela.

Toutefois, une idée serait de faire deux macros. Une qui fait le scrollbar sur une plage et une autre qui exécute le scrollbar sur une autre plage.
Moyennant une commande clavier par exemple, tu pourrais choisir une plage ou l'autre.
Mais est-ce que cela t'intéresse pour ce que tu veux effectuer ?

@+

Dan
 
C

Celeda

Guest
Bonjour,

Merci Dan mais Non Dan on ne peut pas faire deux macros car pour débloquer la première macro il faudrait faire ceci :

Private Sub Worksheet_Deactivate()
ScrollArea = ""
End Sub

et puis une fois débloquée la première plage passer à la deuxième

c'est pour éviter tout ce binz que je cherche un moyen de déplacement seulement sur deux plages distinctes donc peut-être en passant par un évenément qui permettrait le "saut" uniquement d'une plage à une autre sans donner la possibilité d'aller voir ailleurs.

Si quelqu'un à une idée,

Merci

Celeda
 
D

Dan

Guest
Re Celeda,

Et si tu faisais comme ceci,

- tu protèges toutes les cellules de ta feuille via un mot de passe sauf les plages concernées
- Tu utilises les affichages personnalisés (menu / edition) dont on avait parlé il y a quelques mois.

ou

- Tu protèges toutes les cellules de ta feuille via un mot de passe sauf les plages concernées et une cellule (exempe A1)
- Tu crèes une macro événementielle liée à ta feuille qui te permettrait moyennant un clique dans une cellule (exemple A1) depasser d'une plage à une autre
Exemple de macro àplacer dans la feuille concernée par les plages :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$A$1" Then Range("ta plage").Select
End Sub

@+

Dan
 
C

Celeda

Guest
Bonjour,

Non decidemment Dan, c'est trop de binz cela aussi,laisse tomber ce genre de solutions

l'histoire de mots de passe c'est un peu la folie quand le document comporte plusieurs pages,

non ma question reste sur scrollarea qui rend de bons services

si quelqu'un d'autre a une autre idée, elle sera bien appréciée,

Merci
Celeda
 
M

Mytå

Guest
Bonsoir Celeda, dan et le Forum

Une idée de base qui fonctionne avec les flèches de déplacement.


Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Dim Position As Byte

If Not Application.Intersect(Target, Range("I:I")) Is Nothing Then
Position = ActiveCell.Row
ScrollArea = "O1:R40"
Range("P" & Position).Select
End If

If Not Application.Intersect(Target, Range("O:O")) Is Nothing Then
Position = ActiveCell.Row
ScrollArea = "A1:I40"
Range("H" & Position).Select
End If

End Sub

Faudrait détecter l'appuie sur la barre de déplacement horizontal.

Mytå
 
G

G.David

Guest
Salut
Est-que le fichier joint peut t'ouvrir une piste?
Cordialement
G.David
 

Pièces jointes

  • Celeda.zip
    9.3 KB · Affichages: 56
  • Celeda.zip
    9.3 KB · Affichages: 42
  • Celeda.zip
    9.3 KB · Affichages: 41
C

Celeda

Guest
Bonjour,

merci G.David, en effet une autre idée interessante et je t'en remercie - à conserver (et tu sais moi je ne jette rien du tout!!lol!!)

j'ai testé la macro de Myta et elle semble correspondre à mes besoins car je l'ai essayée et elle fait ce que je souhaite, il faut maintenant que j'arrive à l'adapter à mes pages et voir si cela est convivial ou non et tester auprès des utilisateurs car ce sont eux qui trancheront de toute façon;

Dan, c'est la règle du jeu, tu vas pas nous faire un caca nerveux,
ne sois pas déçu, je cherche l'efficacité au boute et si cela ne me convient pas, cela conviendra peut-être à une autre personne dont le besoin sera moins exigeant. Il faut savoir abandonné parfois car c'est souvent dans le renoncement que la lumière surgit.

Merci à vous tous pour votre aide.

Celeda
 
T

The Munchkin

Guest
Boujour tout le monde.

J'avais poser le problème avant mais j'avais pas recu de réponse.

La solution de Myta me convient. c'est de la magie :)

Merci Myta

Les autre solutions sont interresantes aussi

Merci à vous tous

The Munchkin
 
G

G.David

Guest
Celeda
j'ignore si ceci est réalisable:
faire une selection de l'ensemble des cellules visitable pour définir ta plage
après deconnecter les barre de défilements et les flèches de direction et attribuer à ces dernières les fonctions de tabulation (ce qui permet un dépalcement dans une zone sélectionner )par contre pour bloquer la visite du reste ????
Cordialement
G.David
 
C

Celeda

Guest
Bonjour,

ouhlahalaha

si j'étais Cathy je dirait SuperMagicGeantGrandioseTi

mais comme je suis moi, je reste comme d'habitude,
les yeux écarquillés de plaisir et je reste sans voix,
celle-ci coupée par l 'émotion

ton scrollareaTi est parfait, il a ce petit plus concernant la circulation des déplacements intempestifs hors zone,qui me plaît beaucoup;

cela n'enlève rien aux idées des autres et Munchkin je suis vraiment désolée que tu n'aies pas eu de réponse. Honnêtement je n'ai pas vu ton post.

un Grand Merci Thierry ainsi qu'à Dan, Myta, G.David.

Celeda
 
S

Sebb

Guest
Bonsoir tout le monde !

C'est quand même généreux de ta part Celeda de remercier Dan (...), mais je t'aurais bien vu lui présenter tes plus plates excuses ... Enfin pour ce que j'en dis, je ne suis qu'un simple usager du Forum :)
J'interviens juste dans le cadre de la politesse et la bienséance, en tant que cybercitoyen d'un forum qui a des valeurs ! J'en fais peut-être un peu trop mais j'ai trouvé ca choquant de voir quelqu'un qui prend du temps pour t'aider et qui se fait au final balancer comme une vieille chaussette !
A bon entendeur ...

Bonne soirée :)
 

Statistiques des forums

Discussions
312 654
Messages
2 090 564
Membres
104 577
dernier inscrit
GOGNAN