Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
720to724
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
720to724
720to724
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

bei Worksheet_Deactivate 2. Fenster schließen

bei Worksheet_Deactivate 2. Fenster schließen
21.01.2006 21:33:52
Korl
Hallo,
in meiner Mappe lasse ich mir 2 Tabellenblätter vertikal anzeigen.
Mit den nachfolgenden Code, kann jeweils wechseln in den Anordnungen.
Private Sub ToggleButton1_Click()
Dim WerBinIch
 WerBinIch = ActiveWorkbook.Name
On Error Goto ende:
 ActiveSheet.Unprotect Password:="xxx"
    If ToggleButton1.Value = True Then
        ToggleButton1.Caption = "2 Fenster"
        Windows(WerBinIch & ":2").Activate
        ActiveWindow.Close
        ActiveWindow.WindowState = xlMaximized
            
    Else
            ToggleButton1.Caption = "1 Fenster"
       Call Fenster_anordnen
    End If
 ActiveSheet.Protect Password:="xxx"
 Exit Sub
ende:
 MsgBox "drücke den Button ""Fenster"" noch mal!  " & vbLf & vbLf _
  & "Du hattest ein Tabellenblatt geschlossen! ", 16, "Naaa Kollege..."
End Sub
Wenn ich nun in den verbleibenden Tabellen der Mappe wechseln möchte, sollte die vertikale Anordnung aufgehoben werden, so wie es im ersten Teil des o.g. Codes durchgeführt wird.
Ich habe es versucht mit "Worksheet_Deactivate()" und diesen Teil des Codes
Windows(WerBinIch & ":2").Activate
ActiveWindow.Close
ActiveWindow.WindowState = xlMaximized
Es funktioniert nicht. Gibt es dafür überhaupt eine Lösung?
Wenn ja, wie?
Gruß Korl

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: bei Worksheet_Deactivate 2. Fenster schließen
21.01.2006 22:54:38
Gernot
Hi,
was steht in: Call Fenster_anordnen
mfg Gernot
AW: bei Worksheet_Deactivate 2. Fenster schließen
21.01.2006 23:02:29
Korl
Hallo Gernot,
danke schon mal für Dein Interesse. Hier der Code.
Sub Fenster_anordnen()
' Fenster_anordnen 20.11.04
Dim WerBinIch
Dim wksKreis As Worksheet, wksBSM As Worksheet
Set wksKreis = Worksheets("Kreis")
Set wksBSM = Worksheets("BSM")
   Application.ScreenUpdating = False 'Bildschirmauffrischung abschalten
  
    ActiveWindow.NewWindow
    WerBinIch = ActiveWorkbook.Name
    Windows.Arrange ArrangeStyle:=xlVertical
    Windows(WerBinIch & ":1").Activate
    wksKreis.Select
    'Fenstergröße festlegen
    With ActiveWindow
        .Width = 500      'breite
        .Height = 500     'höhe
        .Top = 0          'unterer Rand
        .Left = 0         'linker Rand
    End With
    'linke Fenstergröße festlegen
    Windows(WerBinIch & ":2").Activate
    wksBSM.Select
    With ActiveWindow
        .Width = 362.25     'breite
        .Height = 500       'höhe
        .Top = 0            'unterer Rand
        .Left = 500         'linker Rand
    End With
    Windows(WerBinIch & ":1").Activate
  Application.ScreenUpdating = True 'Bildschirmauffrischung einschalten
   
End Sub
Gruß Korl
Anzeige
AW: bei Worksheet_Deactivate 2. Fenster schließen
21.01.2006 23:19:32
Gernot
Hi,
du willst, falls ich das richtig verstehe, die Fensteranordnung nur auf einem bestimmten
Tabellenblatt? Wenn du in eine andere Tabelle wechselst, soll nur ein Fenster sichtbar sein. Was aber, wenn du wieder zu dem bestimmten Blatt zurückwechselst, soll da die
Darstellung wie vor dem Verlassen sein oder soll neu gewählt werden?
mfg Gernot
AW: bei Worksheet_Deactivate 2. Fenster schließen
21.01.2006 23:46:53
Korl
Hallo Gernot,
im Sheet "Kreis" habe ich den "ToggleButton". Mit diesen Button lege ich mir das Sheet "Kreis" und das Sheet"BSM" vertikal nebeneinander bzw. bei erneutem Klick auf den "ToggleButton" schließe ich das Sheet"BSM" und maximiere das Sheet "Kreis".
Letzteres möchte ich immer als Standardeinstellung haben.
Gernot ich hoffe, ich konnte mich verständlich ausdrücken.
Gruß Korl
Anzeige
AW: bei Worksheet_Deactivate 2. Fenster schließen
21.01.2006 23:50:20
Gernot
Hi,
lies dir mal meine Nachfrage nochmal durch, dein letzte Antwort ist nicht eindeutig.
Ich mach Schluss für heute.
mfg Genot
AW: bei Worksheet_Deactivate 2. Fenster schließen
22.01.2006 00:12:25
Korl
Hallo Gernot,
ich versuche es noch mal.
"Wenn du in eine andere Tabelle wechselst, soll nur ein Fenster sichtbar sein." = Ja
"Was aber, wenn du wieder zu dem bestimmten Blatt zurückwechselst, soll da die
Darstellung wie vor dem Verlassen sein oder soll neu gewählt werden?" = Nein
Die 2 Fenster nebeneinander brauche ich nur unter bestimmter Bedingung. Dafür habe ich ja dann den ToggleButton.
Gernot, ich wünsche Dir eine gute Nacht.
Gruß Korl
Anzeige
AW: bei Worksheet_Deactivate 2. Fenster schließen
23.01.2006 23:36:50
MichaV
Hallo Korl, altes Haus,
nette Idee! Es geht ganz einfach, schalte den ToggleButton per VBA um, als wenn Du mit der Maus draufklicken würdest:

Private Sub Worksheet_Deactivate()
If Not ToggleButton1 Then
ToggleButton1 = Not ToggleButton1
End If
End Sub

Gruß- Micha
PS: If ToggleButton= True Then MsgBox ... entspricht If Togglebutton Then MsgBox, das = True oder = False kannst Du immer weglassen.
PPS: Bei mir wurde die Schrift des Buttons beim Umschalten immer größer, einmal der Button immer kleiner... was ist das denn für ein Problem?
Anzeige
AW: bei Worksheet_Deactivate 2. Fenster schließen
24.01.2006 01:11:23
Korl
Hallo Micha,
es freut mich ebenso, mal wieder mit Dir in Kontakt treten zu können. ;-)
Tja, Ideen habe ich öfter mal, leider haperts öfter an der Umsetzung mangels Fachwissen.
Micha, der ToggleButton spring nicht mehr an wenn ich über die Ereignisprozedur was machen möchte.
Im "Call Fenster_anordnen" stößt der Debugger im 2. Fenster an Width-Eigenschaft an.
Eigentlich hatte ich dieses Thema schon fast abgehakt. ;-)
Wenn das ganze nicht zum Laufen zu bringen ist, ists auch nicht weiter schlimm.
Gruß Korl
AW: bei Worksheet_Deactivate 2. Fenster schließen
24.01.2006 09:08:28
MichaV
Moin Korl,
das war mein Fehler. Ich hatte Dir vergessen zu sagen, daß Du noch in der Sub Fenster_anordnen() mit Deiner Bildschirmauffrischung die Events umschalten musst. Also oben

Application.ScreenUpdating = False 'Bildschirmauffrischung abschalten
Application.EnableEvents = False

und am Ende wieder einschalten.
Ansonsten reicht dann auch

Private Sub Worksheet_Deactivate()
If Not ToggleButton1 Then ToggleButton1 = True
End Sub

Gruß- Micha
PS: wenns nicht klappt, dann guck hier: https://www.herber.de/bbs/user/30319.xls
Anzeige
AW: bei Worksheet_Deactivate 2. Fenster schließen
24.01.2006 11:24:30
Korl
Hallo Micha,
jetzt hast Du mich aber so richtig wieder augepeppt.
Endlich wieder ein Erfolgserlebnis, da zerr ich wieder von.
Micha, ich bedanke mich herzlich.
Gruß Korl
Danke für die Rückmeldung! mT
24.01.2006 11:32:17
MichaV
Hallo Korl,
na fein. Selbst gebaut oder Datei runtergeladen?
Und dann wärs besser, wenn Du zehren würdest, zerren ist nicht so gut für die Nerven.
Gruß- Micha
AW: Danke für die Rückmeldung! mT
24.01.2006 15:14:50
Korl
Hallo Micha,
den Grundstock der Sub hatte ich seinerzeit selbst gelegt. Bei den Umbau mit der Variablen hatte ich mir Hilfe aus diesen Forum geholt.
Den ToggleButton habe ich mir dann wieder allein zurecht gefriemelt. ;-)
Gruß Korl
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige