Anzeige
Archiv - Navigation
304to308
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
304to308
304to308
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Fixierung auf dem nicht aktiven Blatt

Fixierung auf dem nicht aktiven Blatt
05.09.2003 14:41:49
Hajo_Zi
Hallo Helfer

Nike hat Heute in einem Beitrag geschrieben, er hat noch keine Frage von mir gelesen. Ich habe jetzt mal nachgeschaut und noch ein offenen Problem gefunden.
Was eigentlich nicht so dringend ist, aber es sollte auch mal gelöst werden.

In folgender Datei wird die Fixierung ohne select usw. realisiert.

http://home.media-n.de/ziplies/gepackt/vba/fixierung_97.zip

Die Frage die sich daraus ergibt, stand mal vor einiger Zeit hier im Forum. Ich möchte in allen Tabellen der Datei eine Fixierung machen. Es wurde eine Lösung gepostet mit Activate, da ich dies aber vom grundsatz ablehne möchte ich eine Lösung ohne Activate und select.

Die Lösung sollte ab Version 97 gehen.

Gruß Hajo

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fixierung auf dem nicht aktiven Blatt
05.09.2003 15:52:29
Nike
Hi Hajo,
das is ja ein Brett.
Wenn dann auch gleich mit ner Datei an der sich bereits
sage und schreibe 3 MVP's "vergangen" haben ;-)

Ich würde mal die kesse Behauptung aufsellen,
das du in diesem Fall an dem Activate nicht drann vorbei kommst,
da du dich mit dem Fixiern usw. ja auf das "Aktive" Fenster beziehst...

Es gibt ja so ein paar Ausnahmen, wo man an nem Select (igitt, was für ein Wort) ;-)
oder Activate bzw active nicht vorbei kommt, das hier wird wohl so eine sein...

Das Übertragen wird sich wohl so äußern,
das man zum einen den Code für das Selection change kopieren muß
und noch im Codebereich "Diese Arbeitsmappe" ein Workbook_SheetChange
Ereignis abdecken muß, so wird immer zur Laufzeit die Fixierung eingestellt...
Ich kanns hier nicht anfassen, da ich hier Office 2K hab,
werd's mir aber nochmal in ner ruhigen Minute anschaun.

Der Code greift doch gar nicht, wenn man einen Wert aus der Dropdownliste wählt...
(ok, is ja auch plausiebel, mit dem Selection_Change Ereignis)
Wo ist da die Logik, müßte man da nicht das WorksheetChange Ereignis wählen?

Vielleicht erzählst du ja noch ein bischen ;-)

Bye

Nike
Anzeige
AW: Fixierung auf dem nicht aktiven Blatt
05.09.2003 16:48:57
Hajo_Zi
Hallo Nike

Diese Datei ist auch über mehere Tage entstanden. Da wurde immer wieder dran gearbeitet und nachgefragt, wenn ich Zeit hatte.

Das mit dem Fixieren auf allen Tabellen stand noch nicht zur Debatte.

Diese Datei soll eigendtlich ein Bug in Excel 97 beseitigen. In Excel 97 können DropDown Felder nicht ausgewählt werden, wenn die Tabelle eine Fixierung hat. Ich selber benutze nicht Excel 97, es war mal ein Problem in einem Forum und ich dachte es wäre eine intressante Aufgabe. Meine erste Lösung war auch voller select.

Die Fixierung soll wieder aktiv werden, wenn die Zelle mit dem DropDown Feld verlassen wird und keine neue Zelle mit DropDown Feld ausgewählt wird. Diese Datei ist nur für Excel97 gedacht.

Der Ansatz mit "Activate Ereignis der Tabellle scheint mir nicht schlecht zu sein. Dies könnte man ja gleich unter DieseArbeitsmappe schreiben. So in der Art Prüfe ob Fixierung, wenn Nein dann Fixiere.

Ich will mal hoffen, das dieses Problem nicht zu den 1% mit select gehört.

Noch ein schönes Wochenende.


Falls Code vorhanden wurde dieser getestet unter Betriebssystem XP Pro und Excel Version XP SBE.
Bitte kein Mail, Probleme sollen im Forum gelöst werden.

Microsoft MVP für Excel

Das Forum lebt auch von den Rückmeldungen.
Anzeige
AW: Fixierung auf dem nicht aktiven Blatt
06.09.2003 08:34:00
Hajo_Zi
Hallo Nike

ich habe Deinen Ansatz mal umgesetzt, auf der Grundlage des vorhandenen Codes.

Option Explicit
'* Konstanten für fixierte Zelle [J19] von Franz Pölt 3.8.2003
Const cSplitCol As Integer = 10 'Teilungsspalte (J9) BITTE ANPSSEN
Const cSplitRow As Long = 19 'Teilungszeile BITTE ANPASSEN


Private Sub Workbook_NewSheet(ByVal Sh As Object)
Fixierung
End Sub



Private Sub Workbook_Open()
Fixierung
End Sub



Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Fixierung
End Sub



Private Sub Fixierung()
'   die Idee zu diesem Code stammt von Nike aus dem Herber Forum
'   dieser Code ist eine gemeinsame Arbeit von
'       Peter Haserodt
'       Franz Pölt
'       und Hajo.Ziplies@web.de  Stand 06.09.2003
'   Fixierung aller Tabellen bei der gleichen Zelle
'   Die Fixierung bei der Zelle wird eingestellt bei aktivierung der Tabelle
With ActiveWindow
If .FreezePanes = False Then
'            von Peter Haserodt
.Split = False
.ScrollColumn = 1
.ScrollRow = 1
.SplitRow = cSplitRow - .VisibleRange.Row + 1
.SplitColumn = cSplitCol
.FreezePanes = True
'            von Franz Pölt 02.08.2003
'            dieser Teil ist dafür da das die active Zelle auf den Buldschirm kommt
'            z.B. Zelle Z325
If ActiveCell.Row > .VisibleRange.Row + .VisibleRange.Rows.Count Then
.SmallScroll ActiveCell.Row - .ScrollRow
End If
End If
End With
End Sub



Falls Code vorhanden wurde dieser getestet unter Betriebssystem XP Pro und Excel Version XP SBE.
Bitte kein Mail, Probleme sollen im Forum gelöst werden.

Microsoft MVP für Excel

Das Forum lebt auch von den Rückmeldungen.
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige