Clever-Excel-Forum

Normale Version: Tabellenblatt ausblenden
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo Leute,

Würde gerne wissen wie man ein Tabellenblatt ausblendet indem man z.B ein anderes Tabellenblatt anwählt ?

So, ich habe jz nun eine Tabelle auf dem Tabellenblatt2(Tab2) und hab sie nun als verknüpftes Bild in Tabellenblatt1(Tab1) eingefügt.

Nun möchte ich meiner Kopie auf Tab1 ein Makro zuweisen, damit man direkt auf das Tab2 rüberspringt und die Quelldatei bearbeiten kann.
Danach möchte ich das wenn ich wieder auf das TAb1 zurückkehre durch anklicken, tab2 sich automatisch Ausblenden tut.

Also : Bild auf Tab1 anklicken, dabei Einblenden von Tab2->Sprung auf Tab2-> Bearbeiten von Tab2-> Beim wechseln wieder auf Tab1 Ausblenden wieder von Tab2

Anbei eine Beispielanwendung
Hi,

(01.03.2015, 14:45)Serhat6161 schrieb: [ -> ]Also : Bild auf Tab1 anklicken, dabei Einblenden von Tab2->Sprung auf Tab2-> Bearbeiten von Tab2-> Beim wechseln wieder auf Tab1 Ausblenden wieder von Tab2

daß das nur per Makro geht ist Dir klar?

In so einem Fall gehe ich immer so vor:
  1. Menüband "Entwicklertools" - "Makro aufzeichn."
  2. dann genau das machen, was das Makro später tun soll
  3. "Aufzeichnung beenden"
  4. dann das Makro hier posten und wir können es gemeinsam entschlacken und verallgemeinern.
Hallo Rabe,

tut mir leid falls das jz so rübergekommen ist als ob "macht ihr mal und ich lehne mich zurück", grundsätzlich lade ich hier dateien hoch wo ich davor die Makros wieder entfernt habe, um nicht euch noch mehr zu verwirren.... nun denn.

Code:
Sub Unter_Ausblenden()
'

'

'
   Sheets("Unter").Select
   ActiveWindow.SelectedSheets.Visible = False
   Range("B9").Select
End Sub

Code:
Sub Unter_Einblenden()
'
' Makro2 Makro
'

'
   Sheets("Über").Select
   Sheets("Unter").Visible = True
   Sheets("Unter").Select
End Sub

Und dann bei "Über" in Code anzeigen dies eingefügt:

Code:
Private Sub Worksheet_Activate()
 If ActiveSheet.Name = "Unter" Then Makro4
End Sub

Leider Funktioniert der Code nicht wie ich das will, ich meine Einblenden funktioniert zwar aber das Ausblenden was ich ein anderes TAbellenblatt aktiviere leider nicht, was kann ich tun ?

Code strukturiert dargestellt durch 5. Button von rechts im Beitragsformular: #
Ralf
[Bild: smilie.php?smile_ID=1810]
Hi,

(01.03.2015, 15:30)Serhat6161 schrieb: [ -> ]Leider Funktioniert der Code nicht wie ich das will, ich meine Einblenden funktioniert zwar aber das Ausblenden was ich ein anderes TAbellenblatt aktiviere leider nicht, was kann ich tun ?

Du darfst natürlich nicht das Makro "Unter_ausblenden" im Tabellenblatt "Über" aufrufen, und als Startbedingung "Unter" angeben. Die If-Abfrage kann komplett weg, das wird schon durch die Activate-Bedingung erledigt.

Und immer "Option Explicit" verwenden!

Teste mal so:
Modul Modul3
Option Explicit 

Sub Unter_Ausblenden()
  Sheets("Unter").Visible = False
  Range("B9").Select
End Sub


VBA/HTML - CodeConverter für Office-Foren, AddIn für Excel/Word 2000-2013 - komplett in VBA geschrieben von Lukas Mosimann. Projektbetreuung durch mumpel

Code erstellt und getestet in Office 14


Microsoft Excel Objekt Tabelle1
Option Explicit 

Private Sub Worksheet_Activate()
  Call Unter_Ausblenden
End Sub



VBA/HTML - CodeConverter für Office-Foren, AddIn für Excel/Word 2000-2013 - komplett in VBA geschrieben von Lukas Mosimann. Projektbetreuung durch mumpel

Code erstellt und getestet in Office 14


Modul Modul2
Option Explicit 

Sub Unter_Einblenden()
'
' Makro2 Makro
'

'
'    Sheets("Über").Select          ' zu was benötigst Du denn das?
   Sheets("Unter").Visible = True
   Sheets("Unter").Select
End Sub


VBA/HTML - CodeConverter für Office-Foren, AddIn für Excel/Word 2000-2013 - komplett in VBA geschrieben von Lukas Mosimann. Projektbetreuung durch mumpel

Code erstellt und getestet in Office 14


[attachment=1633]
was macht denn eigtl. dieser Option Explicit ?

Und kann man vllt. mehrere Private Sub Worksheet_Activate in einem Tabellenblatt verwenden, oder müsste man da mit dem namen spielen ?
Hi Serhat,

Zitat:was macht denn eigtl. dieser Option Explicit ?

damit erzwingst du die Deklaration aller Variablen in deinem Makro. Das kannst du bereits in den Optionen im VBA-Fenster einstellen.

[attachment=1634]
Hi,

(01.03.2015, 16:06)Serhat6161 schrieb: [ -> ]Und kann man vllt. mehrere Private Sub Worksheet_Activate in einem Tabellenblatt verwenden, oder müsste man da mit dem namen spielen ?

nein, wenn Du auf das Worksheet klickst, wird das ja nur ein einziges Ereignis sein.
Aber Du kannst dann mehrere Makros in diesem einen Ereignis aufrufen. Du kannst auch VBA-Befehle eingeben.

So nach dem Motto:
Option Explicit

Private Sub Worksheet_Activate()
  'mach dies 
  'mach das 
  Call Unter_Ausblenden
  Call jenesMakro
  'mach nun das 
  Call das_dritte_Makro
  'mach jetzt das 
  '... 
End Sub


VBA/HTML - CodeConverter für Office-Foren, AddIn für Excel/Word 2000-2013 - komplett in VBA geschrieben von Lukas Mosimann. Projektbetreuung durch mumpel

Code erstellt und getestet in Office 14