Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Auslesen Namen von Steuerelement
#1
Hallo zusammen,
ich möchte gerne den Namen eines Steuerelementes auslesen. Ich benutze die Steuerelemente um Zeilen einer Kategorie ein- bzw. auszublenden anhand von der Färbung der Zelle. Aktuell ist es leider so, dass der Name der entsprechenden Kategorie noch im Code selbst enthalten ist. Da jedoch zukünftig sich auch die Namen der Buttons/Kategorien ändern können, möchte ich gerne einen direkten Bezug zu dem Steuerelement hinzufügen. Aktuell sieht mein Code folgendermaßen aus:

Aufruf der Funktion (in der Originaldatei sind mehrere Kategorien und Unterkategorien, daher tauchen hier auch RGBs auf die in der Beispieldatei nicht miteinbegriffen sind)
Code:
Sub A_Kat()
SelectFields_1 ("Projektmanagement")
End Sub
Code:
Function SelectFields_1(ButtonName As String)
Application.ScreenUpdating = False
Dim i, j As Integer
Dim LetzteZeile As Integer
LetzteZeile = ActiveSheet.Cells(Rows.Count, 2).End(xlUp).Row

For i = 21 To LetzteZeile
If Cells(i, 2).Value = ButtonName Then
    j = i + 1
    'Ungleich Farbe Oberkategorie (blau) und Rahmen (dunkelblau)
    Do While Cells(j, 1).Interior.Color <> RGB(0, 94, 184) And Cells(j, 1).Interior.Color <> RGB(0, 51, 141)
        Rows(j).Hidden = Not Rows(j).Hidden
    j = j + 1
    Loop
    Application.ScreenUpdating = True
Exit Function
End If
Next i
End Function


Ist dies nur mit ActiveX-Steuerelementen möglich?

Vielen Dank im Voraus!


Angehängte Dateien
.xlsm   TestDatei.xlsm (Größe: 21,18 KB / Downloads: 6)
Antwortento top
#2
Hallo,
Sub A_Kat()
'SelectFields_1 ("Projektmanagement")
SelectFields_1 ActiveSheet.Buttons(Application.Caller).Text '(Beschriftung)
'oder
SelectFields_1 ActiveSheet.Buttons(Application.Caller).Name
End Sub
Gruß Uwe
Antwortento top
#3
Da war die Antwort um einiges einfacher als vermutet. Vielen Dank Uwe!
Antwortento top
#4
Erst:
Code:
Sub M_snb()
   Tabelle8.Buttons(1).Name = "projektmanagement"
   Tabelle8.Range("A23:A33").Name = "projektmanagement"
End Sub
Dann
Code:
Sub A_Kat()
    With Range(Application.Caller).EntireRow
        .Hidden = Not .Hidden
    End With
End Sub
Zum übersetzen von Excel Formeln:

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


Gehe zu:


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