Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
920to924
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
920to924
920to924
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

tabellenblatt

tabellenblatt
02.11.2007 22:10:17
walter
Guten Abend,
ich möchte gern auf klick button, alles ausblenden, kopfleiste usw. soll also nur das "nackte Blatt
erscheinen. Möchte später wieder einblenden.
mfg walter mg

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: tabellenblatt
02.11.2007 22:16:00
Ramses
Hallo
setze das in ein Modul
Option Explicit

Sub Macro1()
    Application.DisplayFullScreen = True
End Sub

Gruss Rainer

AW: tabellenblatt
02.11.2007 22:24:00
Dieter
Hi,
in welcher Excelversion soll das funktionieren? "Nachtes Blatt" meint wohl auch
ohne Menü- und Symbolleisten.
mfg Dieter

Anzeige
AW: tabellenblatt
02.11.2007 22:36:59
Ramses
Hallo
Bei der Fragestellung (Rechtschreibung) und keine VBA-Erfahrung stelle ich keinen Code hierhin der das alles ausblendet. Zu gefährlich.
".."Nachtes Blatt".." (Rechtschreibung !?)
Das geht grundsätzlich nicht. Die Menüleiste ist immer vorhanden, die kann man zwar deaktiveren aber nicht ausblenden.
"...in welcher Excelversion soll das funktionieren..."
In allen seit E97. In 99% der Fälle reicht das auch.
Wenn du einen Vorschlag hast, dann mach ihn, kein Problem.
Es ist jedem freigestellt zu antworten und Vorschläge nach seinem Ermessen zu machen, aber ansonsten kann ich auf Beiträge dieser Art verzichten.
Gruss Rainer

Anzeige
AW: tabellenblatt
02.11.2007 22:51:57
Dieter
Hi,
"...".."Nachtes Blatt".." (Rechtschreibung !?)..."
Krümelkackerei...
"...Das geht grundsätzlich nicht. Die Menüleiste ist immer vorhanden, die kann man zwar deaktiveren aber nicht ausblenden..."
Blödsinn, damit stellst du endgültig klar, dass du über ein gefährliches Halbwissen verfügst.
mfg Dieter

OT @ Dieter
02.11.2007 23:13:00
Christian
Hallo Dieter,
wo ist Dein ungefährliches "Vollwissen", habe Deinen Code für die Problemstellung noch nicht gelesen, oder habe ich mit meinem ultragefährlichen Nichtwissen den Beitrag gelöscht?
Lass doch bitte Deine Sprüche und glänze mal mit Beiträgen, die was bringen!
MfG Christian

Anzeige
AW: tabellenblatt
02.11.2007 22:52:56
walter
Hallo Rainer, habe probiert, funktioniert.
Wie kann ich den die Menüleiste deaktivieren auch später aktivieren ?
mfg walter mg

AW: tabellenblatt
03.11.2007 08:50:00
Ramses
Hallo
Zum Deaktivieren den Code laufen lassen und zum aktivieren der Controls einfach nochmal aufrufen
Option Explicit

Function Change_Control_State()
    '(C) Ramses
    Dim i As Long
    Dim myCmdBar As CommandBar, myCnt As CommandBarControl
    Set myCmdBar = Application.CommandBars("Worksheet Menu Bar")
    For Each myCnt In myCmdBar.Controls
        myCnt.Enabled = Not myCnt.Enabled
    Next
End Function

Gruss Rainer

Anzeige
AW: tabellenblatt
03.11.2007 08:50:00
Ramses
Hallo
Zum Deaktivieren den Code laufen lassen und zum aktivieren der Controls einfach nochmal aufrufen
Option Explicit

Function Change_Control_State()
    '(C) Ramses
    Dim i As Long
    Dim myCmdBar As CommandBar, myCnt As CommandBarControl
    Set myCmdBar = Application.CommandBars("Worksheet Menu Bar")
    For Each myCnt In myCmdBar.Controls
        myCnt.Enabled = Not myCnt.Enabled
    Next
End Function

Gruss Rainer

Anzeige
AW: tabellenblatt
03.11.2007 10:08:06
Walter
Hallo Rainer,
habe dein Makro reingesetzt, leider Fehlermeldung:
Fehler beim Kompilieren: Benutzerdefinierter Typ nicht definiert
Habe so geschrieben:
Option Explicit

Function Change_Control_State()
'(C) Ramses
Dim i As Long
Dim myCmdBar As CommandBar, myCnt As CommandBarControl
Set myCmdBar = Application.CommandBars("Worksheet Menu Bar")
For Each myCnt In myCmdBar.Controls
myCnt.Enabled = Not myCnt.Enabled
Next
End Function



Sub Leiste_Raus()
Application.DisplayFullScreen = True
Change_Control_State
End Sub



Sub Leiste_Rein()
Application.DisplayFullScreen = False
End Sub


Die Themen mit Dieter u. Christian habe ich nicht verstanden, ist mir auch egal wenn sich
Zwei streiten.
mfg Walter mg

Anzeige
AW: tabellenblatt
03.11.2007 11:40:00
Daniel
Hi
das Problem ist, daß man mit diesen Veränderungen doch recht tief ins Excel eingreifst und eventuell Veränderungen durchführst, die der Normalanwender im Fehlerfall nicht mehr von Hand wieder zurücksetzen kann.
Da ist ein Status "VBA-nur mit Recorder" schon problematisch, vorallem wenn man davon ausgehen kann, daß du dieses Programm eventuell anderen Personen zur verfügung stellen willst, die dann noch weniger Ahunng von Excel haben als du.
Diesen Personen bist DU dann dafür verantwortlich, daß deine Anwendungen sauber funktionieren und nicht ihr Excel zerschießen und die Arbeitsfähigkeit einschränken.
Von daher solltest du dir genau überlegen, was du tust und nur das einsetzen, was du auch wirklich beherschst und ausgiebig in allen möglichen Fehlbedienungsvarianten getestest hast.
Nichstdestotrotz:
hier ein Makro, um die Commandbars auszublenden.
die aktuellen Einstellungen werden auf einem versteckten Blatt gesichert, um sie individuell wieder herstellen zu können.
die Menüleiste bleibt aus verständlichen gründen sichtbar.

Sub Ausblenden()
Dim shS As Worksheet
Dim x As Long
On Error GoTo Fehler
Set shS = ThisWorkbook.Sheets("Sicherung")
On Error GoTo 0
'Prüfen, ob nicht schon Ausgeblendet ist
If shS.Cells(1, 1).Value = True Then Exit Sub
'Kennung für "Ausgeblendet" setzen
shS.Cells(1, 1).Value = True
'Bildschirmeinstellungen sichern und ausblenden
With Application
shS.Cells(1, 2) = .DisplayFormulaBar
shS.Cells(2, 2) = .DisplayStatusBar
.DisplayFormulaBar = False
.DisplayStatusBar = False
End With
With ActiveWindow
shS.Cells(3, 2) = .DisplayHorizontalScrollBar
shS.Cells(4, 2) = .DisplayVerticalScrollBar
shS.Cells(5, 2) = .DisplayWorkbookTabs
shS.Cells(6, 2) = .DisplayGridlines
shS.Cells(7, 2) = .DisplayHeadings
.DisplayHorizontalScrollBar = False
.DisplayVerticalScrollBar = False
.DisplayWorkbookTabs = False
.DisplayGridlines = False
.DisplayHeadings = False
End With
'Commandbars sichern und ausblenden
On Error Resume Next
For x = 1 To Application.CommandBars.Count
With Application.CommandBars(x)
shS.Cells(x, 3).Value = .Visible
.Visible = False
End With
Next
On Error GoTo 0
Exit Sub
'Falls nicht vorhanden, Sicherungsblatt erstellen
Fehler:
Application.ScreenUpdating = False
Set shS = ActiveSheet
Sheets.Add after:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
ActiveSheet.Name = "Sicherung"
shS.Activate
Sheets("sicherung").Visible = 2
Application.ScreenUpdating = True
Resume
End Sub


Dieses Makro kannst du dann zum Wiederherstellen der Einstellungen verwenden:


Sub Einblenden()
Dim x As Long
Dim shS As Worksheet
On Error GoTo Fehler
Set shS = ThisWorkbook.Sheets("Sicherung")
On Error GoTo 0
'Kennung für "Ausgeblendet" wieder löschen"
shS.Cells(1, 1).Value = ""
'Bildschirmeinstellungen wieder herstellen
With Application
.DisplayFormulaBar = shS.Cells(1, 2)
.DisplayStatusBar = shS.Cells(2, 2)
End With
With ActiveWindow
.DisplayHorizontalScrollBar = shS.Cells(3, 2)
.DisplayVerticalScrollBar = shS.Cells(4, 2)
.DisplayWorkbookTabs = shS.Cells(5, 2)
.DisplayGridlines = shS.Cells(6, 2)
.DisplayHeadings = shS.Cells(7, 2)
End With
'Commandbars sichern und ausblenden
On Error Resume Next
For x = 1 To Application.CommandBars.Count
Application.CommandBars(x).Visible = shS.Cells(x, 3).Value
Next
On Error GoTo 0
Exit Sub
Fehler:
MsgBox "Pech gehabt, keine Wiederherstellung der Bildschirmeinstellungen möglich"
End Sub


Dieses Makro MUSS UNBEDINGT ins Modul "DieseArbeitsmappe", weil es sicherstellt, daß beim Schließen die Commandbars wieder eingeblendet werden:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Call Einblenden
End Sub

und denk immer daran, die Verantwortung gegenüber deinen Kollegen hast du, also vor einsatz ausgiebig testen!
Gruß, Daniel

Anzeige
Danke Daniel -)
03.11.2007 14:06:37
Walter
Herzlichen Dank,
werde es so machen, wie beschrieben,
mfg Walter MG
schönes Wochenende

AW: tabellenblatt
03.11.2007 19:48:00
Ramses
Hallo
Auch wenn du nun eine Lösung hast, würde es mich interessieren, WO der Fehler angezeigt wird.
In der Meldung auf "Debuggen" klicken und schauen welche Zeile markiert wird.
Der Code den ich dir geschickt habe funktioniert sowohl unter 2000, XP wie auch unter 2003 fehlerfrei.
Auch dein Beispielcode funktioniert bei mir einwandfrei, wenn man davon absieht, dass du die Arbeitsleiste beim einblenden nicht wieder aktivierst.
Daher kann ich mir den Fehler den du schilderst nicht erklären
Gruss Rainer

Anzeige
Antwort
04.11.2007 11:09:00
Walter
Guten Morgen Rainer,
finde ich sehr GUT das Du Dich gemeldest hast, kommischerweise, wenn ich jetzt mit F8
Makro starte läuft alles.
Gestern stand das Makro hier:
Set myCmdBar = Application.CommandBars("Worksheet Menu Bar")
Also nochmals DANKE,
mfg Walter MG

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige