termiman
Goto Top

Excell Tabellenblatt scroll links und rechts VBA Button

Hallo liebe Leute,

ich würde gerne in meiner Excel Tabelle zwei Buttons einfügen mit denen ich das Tabellenblatt nach links und rechts verschieben kann.

ich habe es mit der Funktion ActiveWindow.ScrollColumn = x probiert. Leider funktioniert es nur einmal und der Button sollte mitwandern.

Vielleicht habt ihr noch ein paar Ideen und Tipps für mich.

Danke schon einmal im Voraus.

best regards
Termiman

Content-ID: 398403

Url: https://administrator.de/contentid/398403

Ausgedruckt am: 22.11.2024 um 15:11 Uhr

emeriks
emeriks 16.01.2019 aktualisiert um 14:10:31 Uhr
Goto Top
Hi,
Du meinst, dass der Button immer sichtbar bleibt?
Das könntest Du am einfachsten erreichen, in dem Du den Button nicht in der Tabelle sondern in der Menüzeile platzierst.
Oder, was auch geht, ist ein nicht-modales UserForm mit einem Button drauf. Diese Form lässt Du beim Öffnen des Dokuments starten.

E.

Edit:
'Links  
Private Sub CommandButton1_Click()
  On Error Resume Next
  ActiveSheet.Cells(ActiveCell.Row, ActiveCell.Column - 1).Select
  ActiveWindow.ScrollColumn = ActiveCell.Column
End Sub

'Rechts  
Private Sub CommandButton2_Click()
  On Error Resume Next
  ActiveSheet.Cells(ActiveCell.Row, ActiveCell.Column + 1).Select
  ActiveWindow.ScrollColumn = ActiveCell.Column
End Sub
137846
137846 16.01.2019 aktualisiert um 15:18:12 Uhr
Goto Top
Wäre ja auch zu einfach die Scrollbar-Buttons zu benutzen face-big-smile
Termiman
Termiman 16.01.2019 um 15:43:05 Uhr
Goto Top
Ja, aber die sind leider zu schlecht zu bedienen. Die Liste ist sehr breit und hat viele Spalten, anstatt Zeilen.
Termiman
Termiman 16.01.2019 um 15:56:22 Uhr
Goto Top
Das Skript ist schon ganz gut, vielen Dank erst einmal dafür. Eigentlich suche ich nur die Funktion die Ansicht zu scrollen, wie bei den regulären Pfeiltasten von Office.

Im Skript springt die Ansicht stets zu aktiven Zelle.
137846
Lösung 137846 16.01.2019 aktualisiert um 17:35:03 Uhr
Goto Top
Dann mach einfach aus
ActiveWindow.ScrollColumn = ActiveCell.Column
ein
  ActiveWindow.ScrollColumn = ActiveWindow.ScrollColumn + 1
Beim linken Button dann das ganze entsprechend mit -1.

Die Zeile mit dem Select kann dann ebenfalls entfallen.

'Links  
Private Sub CommandButton1_Click()
  On Error Resume Next
  ActiveWindow.ScrollColumn = ActiveWindow.ScrollColumn -1
End Sub

'Rechts  
Private Sub CommandButton2_Click()
  On Error Resume Next
  ActiveWindow.ScrollColumn = ActiveWindow.ScrollColumn +1
End Sub

Wenn du willst kannst du auch die entsprechenden Methoden zum Scrollen benutzen
Window.SmallScroll-Methode (Excel)

Zum eine Spalte rechts scrollen
ActiveWindow.SmallScroll 0, 0, 1, 0

Zum eine Spalte links scrollen
ActiveWindow.SmallScroll 0, 0, 0, 1
Termiman
Termiman 17.01.2019 um 08:14:18 Uhr
Goto Top
Super perfekt, vielen Dank. face-smile
emeriks
emeriks 17.01.2019 um 08:37:32 Uhr
Goto Top
Ooooch, keine Ursache.