VBA Code kürzen (alle sichtbaren Tabellenblätter ausblenden)
#11
Hi,

(22.05.2018, 21:37)Werner.M schrieb: meinst du so was in der Art?

und dann noch auf jedes Sheet einen Button, der die Userform aufruft und in dem Userform-Code das Beenden der Userform:

Code:
Option Explicit

Private Sub CommandButton1_Click()
   strBlattname = Me.ActiveControl.Caption
   Call Modul1.ausblenden
   Unload Me
End Sub

Private Sub CommandButton2_Click()
   strBlattname = Me.ActiveControl.Caption
   Call Modul1.ausblenden
   Unload Me
End Sub

Private Sub CommandButton3_Click()
   strBlattname = Me.ActiveControl.Caption
   Call Modul1.ausblenden
   Unload Me
End Sub

Private Sub CommandButton4_Click()
   strBlattname = Me.ActiveControl.Caption
   Call Modul1.ausblenden
   Unload Me
End Sub

Code:
Option Explicit

Sub Schaltfläche1_Klicken()
   UserForm1.Show
End Sub
Top
#12
Hallo Werner

Genau so was hab ich gesucht. Besten Dank für die Hilfe.

Auch Danke an die Anderen.

Gruss
Demech
Top
#13
Diese Code im Userform reicht:


Code:
Private Sub CommandButton1_Click()
    M_snb
End Sub

Private Sub CommandButton2_Click()
    M_snb
End Sub

Private Sub CommandButton3_Click()
    M_snb
End Sub

Private Sub CommandButton4_Click()
    M_snb
End Sub

Sub M_snb()
  Sheets(ActiveControl.Caption).Visible = True
  For Each it In Sheets
    it.Visible = it.Name = ActiveControl.Caption
  Next
End Sub

Oder eine Kombination von Userform und Class module C_V

Im Class Module:
Code:
Public WithEvents cb As MSForms.CommandButton

Private Sub cb_click()
  Sheets(cb.Caption).Visible = True
  For Each it In Sheets
    it.Visible = it.Name = cb.Caption
  Next
End Sub

Im Userform:
Code:
Public st As New Collection

Private Sub UserForm_Initialize()
   For Each it In Controls
     st.Add New C_V, "L_" & st.Count
     Set st.Item(st.Count).cb = it
   Next
End Sub
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste