Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
612to616
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
612to616
612to616
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zelle in der mitte

Zelle in der mitte
17.05.2005 11:54:58
jurg
Hallo Forum
habe da ne frage....
wöchentlich öffne ich eine Datei und muss dann zum aktuellen Datumseintrag scrollen.
gibt es eine möglichkeit, dass man automatisch, wenn man die datei öffnet , zu dieser zelle gelangt und dass diese Zelle dan in der mitte des excel-files ist.
also in spalte b sind die wochendaten . wenn ich diese woche das shett offne so soll es gleich zu zelle b22 springen.
geht sowas ?
mit gruss
jurg

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zelle in der mitte
17.05.2005 12:05:59
bavariabob
Jurg,
meine erste Ideee:

Sub Today_Auswählen()
For Each zelle In ActiveSheet.UsedRange
If zelle.Value = Date Then
zelle.Select
End If
Exit For
Next
End Sub

Gruss aus München
AW: Zelle in der mitte
17.05.2005 12:15:10
Hajo_Zi
Hallo jurg,
Mitte ist ungenau, was ist mit unterschiedlichen Bildschirmauflösungen.
Auf Zelle springen und Anzeige ganz oben links
Application.Goto Reference:=Worksheets("Tabelle1").Range("A51"), Scroll:=True
oder

Private Sub Workbook_Open()
ActiveWindow.ScrollColumn = ActiveWindow.ActiveCell.Column
ActiveWindow.ScrollRow = ActiveWindow.ActiveCell.Row
End Sub


Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
‘

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Excel.Range)
ActiveWindow.ScrollColumn = ActiveWindow.ActiveCell.Column
ActiveWindow.ScrollRow = ActiveWindow.ActiveCell.Row
End Sub

Diesen Code dem Workbook zuweisen. Es ist erforderlich, daß die beiden Scroll Befehle sowohl dem Ereignis Workbook_Open als auch Workbook_SheetChange zuzuweisen.
Dann erscheint die aktive Zelle immer links oben.
Von "Quinoman" Michael
Bitte keine Mail, Probleme sollten im Forum gelöst werden.
Microsoft MVP für Excel
Das Forum lebt auch von den Rückmeldungen.
Betriebssystem Windows 2000 SP4 und Excel Version 2000 SP3.



"Wer Rechtschreibfehler findet, darf sie behalten!"
Dies gilt auch für Bert.
Anzeige
AW: Zelle in der mitte
17.05.2005 12:16:05
Martin
Hallo Jurg,
Tabellenname anpassen und dann Code unter "DieseArbeitsmappe" abspeichern:

Private Sub Workbook_Open()
Worksheets("Tabelle1").Activate
ActiveSheet.Columns(2).Find(Date).Select
End Sub

Gruß
Martin Beck
aktuelle Datumszelle zentriert auf Desktop anzeige
17.05.2005 14:36:43
Beate
Hallo Jurg,
füge ins Codefenster "dieseArbeitsmappe" folgendes Makro, gegebenenfalls Tabellenname anpassen:

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
If ActiveSheet.Name = "Tabelle1" Then
CenterOnCell Columns(2).Find(Date)
End If
End Sub

Und in ein Modul folgenden Code:
Sub CenterOnCell(OnCell As Range)
Dim VisRows As Integer
Dim VisCols As Integer
Application.ScreenUpdating = False
OnCell.Parent.Parent.Activate
OnCell.Parent.Activate
With ActiveWindow.VisibleRange
VisRows = .Rows.Count
VisCols = .Columns.Count
End With
With Application
.Goto reference:=OnCell.Parent.Cells( _
.WorksheetFunction.Max(1, OnCell.Row + _
(OnCell.Rows.Count / 2) - (VisRows / 2)), _
.WorksheetFunction.Max(1, OnCell.Column + _
(OnCell.Columns.Count / 2) - _
.WorksheetFunction.RoundDown((VisCols / 2), 0))), _
scroll:=True
End With
OnCell.Select
Application.ScreenUpdating = True
End Sub
Dann wird die Zelle mit dem aktuelen Datum bei Blatt-/Dateiaktivierung immer zentriert. Ausnahme: Die Zelle liegt nah am Tabellenrand, in deinem Fall hängt es also von der Breite von Spalte A ab, inwieweit eine horizontale Zentrierung überhaupt möglich ist.
Quelle des Codes CenterOnCell: http://www.cpearson.com/excel/zoom.htm
Gruß,
Beate
Anzeige
Nachtrag
17.05.2005 15:43:12
Beate
Hallo Jurg,
füge auch noch dieses Makro in "dieseArbeitsmappe" ein, damit auch beim Dateiöffnen, falls die Seite die zuletzt Aktive war, die Zentrierung anspringt:

Private Sub Workbook_Open()
If ActiveSheet.Name = "Tabelle1" Then
CenterOnCell Columns(2).Find(Date)
End If
End Sub

Gruß,
Beate
OnCell.Parent.Parent.Activate
17.05.2005 17:50:32
Jurg
Hallo Beate
vielen Dank
hab es eingebaut , aber bei
OnCell.Parent.Parent.Activate hat es gestoppt
kannst du mir nochmals en tip geben
vielen Dank
mit Gruss
Jürg
AW: OnCell.Parent.Parent.Activate
17.05.2005 22:12:28
Beate
Hallo Jurg,
ich kann dir keinen Tipp geben, der Code funktioniert bei mir - ist aber wie schon gesagt nicht von mir.
Ich schlage einen Gegentest vor. Öffne mal beiliegende Datei - da läuft es bei mir.
Ich habe geschlossen und gespeichert als Tabelle2 aktiv war. Du musst also einen Blattwechsel zu Tabelle1 vornehmen (dafür ist das Makro ja bestimmt) und als ich dort das letzte Mal vor dem Speichern war, stand der Cursor in B729. Schau dir die Veränderung an:
https://www.herber.de/bbs/user/22863.xls
Ich arbeite mit Excel 2002, wenn es bei dir nicht geht, dann ist es ein Versionsproblem und du kannst meine Lösung abhaken.
Gruß,
Beate
Anzeige
AW: OnCell.Parent.Parent.Activate
18.05.2005 07:59:47
Jürg
Hallo Beate
vielen dank !!!!
es funktioniert .... was bei mir nicht funktionierte kann ich nicht sagen ......
es funktioniert auch bei Excel 2000
vielen dank nochmals
mit gruss
Jürg

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige