Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1776to1780
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
Inhaltsverzeichnis

Befehle zusammenfassen - vereinfachen

Befehle zusammenfassen - vereinfachen
31.08.2020 06:47:18
Mike
Hallo liebe Programmierfreunde!
Ich kann zwar die Befehle schreiben, sodass diese funktionieren, jedoch schaffe ich diese nicht zusammenzufassen bzw. kurz zu schreiben - sind immer wiederholende Befehle. Vielleicht könnt Ihr mir weiterhelfen bitte.
z.B.:
Private Sub CommandButton_KW1_Click()
'Link-Button zur KW1 Seite
Sheets("KW1").Select
Me.Hide
End Sub

Private Sub CommandButton_KW2_Click()
'Link-Button zur KW2 Seite
Sheets("KW2").Select
Me.Hide
End Sub

Das ganze geht bis Kalenderwoche (KW) 53 - ist natürlich ewig lang - wie könnte ich das zu vielleicht einen Befehl verkürzen?
Danke im Voraus!
LG Mike

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Befehle zusammenfassen - vereinfachen
31.08.2020 07:19:55
Joachim
Guten Morgen
Hilft DAS:
for i=1 to 53
Blatt = "KW" & "i"
Sheets(Blatt).select
me.hide
next i

Gruß
Joachim
AW: Befehle zusammenfassen - vereinfachen
31.08.2020 07:53:39
Mike
Hallo Joachim!
Habe den nachstehenden Befehl versucht, hat aber leider nicht funktioniert.
Private Sub CommandButton_KW_Click()
'Link-Button zur KW Seite
For i = 1 To 53
Blatt = "KW" & "i"
Sheets(Blatt).Select
Me.Hide
Next i
End Sub

Aber liege ich da falsch - bei diesem Befehl greift er zwar auf die Blätter 1 - 53 zu nur es geht nicht, weil noch nicht klar ist welcher Button mit welchen Blatt verknüpft sein sollte?
Anzeige
AW: Befehle zusammenfassen - vereinfachen
31.08.2020 08:28:19
Joachim
verstehe
Mach eine Userform in der Du über eine Scrollbar die KW abfrägst
Nr=scrollbar1.value
liefert Dir den Wert.
Dann Blatt = "KW" & Nr und Du hast das gewünschte (Hoffe ich?)
Gruß
Joachim
AW: Befehle zusammenfassen - vereinfachen
31.08.2020 08:36:56
Danielnnd
Hi
Die Technik ein einziges Makro für mehrere Buttons mit gleicher Funktionalität zu schreiben nennt sich Klassenprogrammierung
Such mal danach, es gibt genügend Beispiele und Erklärungen im Archiv, ist aber kein Anfängerstoff.
Alternativ kannst du auch anstelle der 53 Buttons auch eine Listbox, Combobox oder das Registersteuerelement verwenden, um die Auswahl zu machen, dort brauchst du dann nur das Click- bzw das Change-Event als einziges Makro.
Wenns wirklich nur um die schnelle Auswahl geht, brauchst du vielleicht gar keine Userform, es reicht ein rechtsklick auf die Pfeile der Blattauswahl (unten links vor den Registern)
Gruß Daniel
Anzeige
AW: Befehle zusammenfassen - vereinfachen
31.08.2020 09:50:08
Mike
Es handelt sich ja schon um eine Userform, wo 53 Button (eben CommandButton_KW1_Click - KW53_Click
) sind. Ich wollte nur nicht 53 Mal den gleichen Befehl nur mit verschiedener KW Nr. schreiben. Dürfte aber nicht so einfach möglich sein.
LG
AW: Befehle zusammenfassen - vereinfachen
31.08.2020 10:12:25
Rudi
Hallo,
wie schon gesagt: mit einer Listbox o.ä ist's einfacher.
Kleine Verkürzung (alles im Modul der UF):
Private Sub CommandButton_KW1_Click()
Call cmd_Click(1)
End Sub
Private Sub CommandButton_KW2_Click()
Call cmd_Click(2)
End Sub
Sub cmd_Click(intBtn As Integer)
Sheets("KW" & intBtn).Select
Hide
End Sub

Gruß
Rudi
Anzeige
AW: Befehle zusammenfassen - vereinfachen
31.08.2020 12:23:10
Mike
Ok, werde mich einmal damit auseinandersetzen. Danke für eure Mühe!
LG
Mike
AW: Befehle zusammenfassen - vereinfachen
31.08.2020 11:11:38
Daniel
Noch ne Idee:
1. erstelle ein Bild von den vielen Buttons.
Diese müssen jedoch alle gleich groß sein und regelmäßig angeordnet sein.
2. füge dieses Bild über das Image-Control ein.
3. verwende als Makro das MouseUP bzw MouseDown-Event.
du bekommst die X- und Y-Position des Mauszeigers beim Click als Variable zur Verfügung gestellt.
Bei regelmäßiger Anordnung der Buttons kannst du damit berechnen, welcher Button gemeint ist.
Gruß Daniel

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige