[Excel 2010] Scrollbare Kolommen en Rijen locken

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Captain Obvious
  • Registratie: Maart 2009
  • Laatst online: 21-08 23:10
Ik zit met het volgende probleem bij Excel 2010.
Voor een opdracht heb ik een werkblad gemaakt waar je een aantal variabelen kunt invullen.
Nu wil ik dat andere mensen die dit gaan gebruiken niet voorbij de cellen met data gaan om zo te gaan verkennen in de leegte om het maar even te zeggen.

Ik heb al een aantal dingen geprobeerd in VBA wat ik her en der op het internet heb gevonden maar eigenlijk werkt tot nu toe niets, heeft iemand hier ervaring mee? Het in eigenschappen veranderen heeft geen zin want als het bestand wordt afgesloten is het weg.

alvast bedankt.

EDIT: dit is trouwens de code die ik veel tegenkom op internet

Private Sub Workbook_Open()
Sheets("Sheet1").ScrollArea = "a1:f10"
End Sub

helaas werkt deze bij mij niet, zat trouwens nog wel te denken omdat ik een NL versie van Excel 2010 heb of dat nog wat uit zou maken?

[ Voor 19% gewijzigd door Captain Obvious op 19-12-2011 14:17 ]


Acties:
  • 0 Henk 'm!

  • pedorus
  • Registratie: Januari 2008
  • Niet online
Ik snap het niet helemaal, wil je voorkomen dat mensen naar lege cellen kunnen scrollen? Of wil je voorkomen dat mensen hulpcellen zien? Dat laatste is eenvoudig te voorkomen door die rijen/kolommen hidden/verborgen te maken. Dat eerste lijkt me niet zo heel nuttig. :p

Je zou voor dat eerste probleem een macrotje kunnen maken dat bijvoorbeeld rijen verbergt/weer zichtbaar maakt al naar gelang er data wordt ingevuld.

Vitamine D tekorten in Nederland | Dodelijk coronaforum gesloten


Acties:
  • 0 Henk 'm!

  • Captain Obvious
  • Registratie: Maart 2009
  • Laatst online: 21-08 23:10
Het eerste inderdaad, ik wilde gewoon iets maken waardoor er niet verder gescrolled kan worden omdat er toch geen data staat. Maar het verbergen met een knop klinkt ook goed. Zo kun je natuurlijk later dingen aanpassen.

Natuurlijk kun je bij de 1e optie ook data aanvullen als je het bereik gewoon even aanpast.
Heb je wel ervaring met die 2e optie? Heb wel gelezen dat als je alle rijen gaat verbergen je document heel sloom gaat worden.

Acties:
  • 0 Henk 'm!

  • pedorus
  • Registratie: Januari 2008
  • Niet online
Snelheid lijkt me geen probleem, test zelf met zoiets: :p
Visual Basic:
1
2
3
4
5
6
7
8
9
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim r As Long
    r = 1
    On Error Resume Next
    r = Cells.Find("*", , , , xlByRows, xlPrevious).row
    On Error GoTo 0
    Range(Rows(1), Rows(r + 1)).Hidden = False
    Range(Rows(r + 2), Rows(Rows.CountLarge)).Hidden = True
End Sub

Vitamine D tekorten in Nederland | Dodelijk coronaforum gesloten


Acties:
  • 0 Henk 'm!

  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

Captain Obvious schreef op maandag 19 december 2011 @ 13:47:
EDIT: dit is trouwens de code die ik veel tegenkom op internet

Private Sub Workbook_Open()
Sheets("Sheet1").ScrollArea = "a1:f10"
End Sub

helaas werkt deze bij mij niet, zat trouwens nog wel te denken omdat ik een NL versie van Excel 2010 heb of dat nog wat uit zou maken?
Als je code letterlijk copy-paste zal het idd niet werken. In de Nederlandse versie heten werkbladen hoogst zelden "Sheet1". :X

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland


Acties:
  • 0 Henk 'm!

  • Captain Obvious
  • Registratie: Maart 2009
  • Laatst online: 21-08 23:10
Lustucru schreef op maandag 19 december 2011 @ 18:44:
[...]

Als je code letterlijk copy-paste zal het idd niet werken. In de Nederlandse versie heten werkbladen hoogst zelden "Sheet1". :X
zover was ik al ;) Hij werkt ook niet als ik alles juist heb ingevuld.

Acties:
  • 0 Henk 'm!

Verwijderd

Lustucru heeft gelijk in die zin dat je iets simpels toch verkeerd doet. zoals :

- scrollarea geeft het gebied aan waarin de gebruiker mag bewegen en dus niet andersom
- is de werkmap opgeslagen als een office2010 spreadsheet met macro's ingeschakeld (xlsm)?
- en toch nog : verwijs je naar de juiste sheet? probeer eens onderstaande geteste code die enkel toelaat in cellen a1:c1 te bewegen :
Visual Basic:
1
2
3
4
Private Sub Workbook_Open()
  '!! deze code wordt enkel uitgevoerd in de 'thisworkbook'-klassemodule van de werkmap
  ThisWorkbook.Sheets(1).ScrollArea = "A1:C1"
End Sub

Acties:
  • 0 Henk 'm!

  • pedorus
  • Registratie: Januari 2008
  • Niet online
Je moet natuurlijk ook de macro uitvoeren/op de juiste plaats zetten om dit te laten werken. Overigens hoef je niet te programmeren om de scrollarea te zetten. Met Developer->Controls->Properties (of de NL vertaling) klikken in de juiste sheet laat de eigenschap ook zien, en daar is die ook te bewerken. Pas voor een dynamische scollarea heb je code nodig.

Vitamine D tekorten in Nederland | Dodelijk coronaforum gesloten


Acties:
  • 0 Henk 'm!

Verwijderd

scrollarea instellen via eigenschappen wordt niet opgeslagen. bij de volgende keer openen is de beperking weg, vandaar de macro (die dus idd op de juiste plaats moet staan).

Acties:
  • 0 Henk 'm!

  • Captain Obvious
  • Registratie: Maart 2009
  • Laatst online: 21-08 23:10
Verwijderd schreef op dinsdag 20 december 2011 @ 11:02:
scrollarea instellen via eigenschappen wordt niet opgeslagen. bij de volgende keer openen is de beperking weg, vandaar de macro (die dus idd op de juiste plaats moet staan).
Precies, had dit als eerste geprobeerd. Het werkt ook maar zodra je het document afsluit niet meer.
Over die andere zaken, ja het is een excel bestand met macro's, ja de scroll area is het gebied wat mag bewegen (zover was ik ook al ;p) en met sheet verwijzing ook al het nodige geprobeerd.

[ Voor 4% gewijzigd door Captain Obvious op 20-12-2011 11:15 ]


Acties:
  • 0 Henk 'm!

  • pedorus
  • Registratie: Januari 2008
  • Niet online
Waarschijnlijk heb je dan de code op de verkeerde plaats gezet in het VBAProject, of voer je geen macro's uit bij het openen. Bovenaan de code in de editor staan comboboxen. Staat er als je in de functie staat (General) in de combobox of Workbook? En staat er rechtsboven Workbook_Open of alleen Open? De laatste optie is de juiste. Screenshots kunnen eventueel helpen ;)

Vitamine D tekorten in Nederland | Dodelijk coronaforum gesloten

Pagina: 1