Limiter le scroll.

Bonjour,

Je souhaiterai limiter le scroll sur les feuilles de mon classeur à la plage A1:BH38

J'ai essayé plusieurs choses :

- Quand j'ouvre le VBA de la feuille, dans les propriétés de la feuille, je définis ScrollArea par A1:BH38. Cela fonctionne aussitôt mais j'ai beau enregistré mon fichier, quand je le ferme l'ouvre à nouveau, les propriétés du ScrollAerA sont à nouveau effacées.

- J'ai aussi essayé de coller des codes VBA que j'avais trouvé :

Private Sub Worksheet_Activate()
ActiveSheet.ScrollArea = "$A$1:$BH$38"
End Sub

OU

Private Sub Workbook_Open()
Dim Feuille As Worksheet
For Each Feuille In ThisWorkbook.Sheets
Feuille .ScrollArea = "$A$1:$BH$38"
Next Feuille
End Sub

Mais cela ne fonctionne pas...

Auriez-vous une solution s'il vous plait ?
merci pour votre aide.

4 réponses

  1. Contributeur
    Re

    "scrollarea s'étein"t à la fermeture du classeur; Mais avec tes macros, les scrolls sont réactivées automatiquement par les codes, donc..

    pour la macro wokbookopen, tu vas dans l'éditeur VBA par ALT+ F9

    puis


    toutes tes feuilles ont automatiquement leur scrollarea d'activées

    apparemment pour ton pb la macro workbookopen est suffisante ; les workshets_activaye sont inutiles ;o)

     Michel
    0
    1. Re,

      Cela ne fonctionne malheureusement pas...
      0
  2. Contributeur
    Bonjour

    je viens d'essayer le code ci dessous et qui fonctionne
    Option Explicit
    '---------------------------
    Private Sub Workbook_Open()
    Dim Feuille As Worksheet, cptr As Byte
    For cptr = 1 To WorkSheets.Count
    Workheets(cptr).ScrollArea = "$A$1:$BH$38"
    Next
    End Sub


    Ton autre méthode
    Private Sub Worksheet_Activate()
    ActiveSheet.ScrollArea = "$A$1:$BH$38"
    End Sub

    Fonctionne chez moi mais je préfère la premiere

     Michel
    0
    1. Bonjour Michel,

      Merci pour ta réponse mais je ne comprends pas aucun de ces codes ne fonctionne chez moi, mais je n'y connais pas grand chose en VBA et je colle peut-être ce code au mauvais endroit : quand je suis sur ma feuille, je fais clique droit sur l'onglet => Visualiser le code =>et là je copie le code sur la boite de dialogue qu'il y a au milieu de la page qui s'ouvre (c'est à cet endroit que j'ai le code de ma première macro qui elle fonctionne parfaitement).

      Est-ce que je le colle bien au bon endroit ou est-ce que je dois le coller ailleurs ?
      0
  3. Oui, c'est bien enregistré en .xlsm
    J'ai déjà une macro sur ma feuille qui fonctionne parfaitement.
    0
    1. Vérifie que tu enregistres ton fichier dans un format qui comprend des macros, .xls ne les enregistrera pas, il faut prendre .xlsm.
      0