• Hallo liebe Userinnen und User,

    nach bereits längeren Planungen und Vorbereitungen sind wir nun von vBulletin auf Xenforo umgestiegen. Die Umstellung musste leider aufgrund der Serverprobleme der letzten Tage notgedrungen vorverlegt werden. Das neue Forum ist soweit voll funktionsfähig, allerdings sind noch nicht alle der gewohnten Funktionen vorhanden. Nach Möglichkeit werden wir sie in den nächsten Wochen nachrüsten. Dafür sollte es nun einige der Probleme lösen, die wir in den letzten Tagen, Wochen und Monaten hatten. Auch der Server ist nun potenter als bei unserem alten Hoster, wodurch wir nun langfristig den Tank mit Bytes vollgetankt haben.

    Anfangs mag die neue Boardsoftware etwas ungewohnt sein, aber man findet sich recht schnell ein. Wir wissen, dass ihr alle Gewohnheitstiere seid, aber gebt dem neuen Board eine Chance.
    Sollte etwas der neuen oder auch gewohnten Funktionen unklar sein, könnt ihr den "Wo issn da der Button zu"-Thread im Feedback nutzen. Bugs meldet ihr bitte im Bugtracker, es wird sicher welche geben die uns noch nicht aufgefallen sind. Ich werde das dann versuchen, halbwegs im Startbeitrag übersichtlich zu halten, was an Arbeit noch aussteht.

    Neu ist, dass die Boardsoftware deutlich besser für Mobiltelefone und diverse Endgeräte geeignet ist und nun auch im mobilen Style alle Funktionen verfügbar sind. Am Desktop findet ihr oben rechts sowohl den Umschalter zwischen hellem und dunklem Style. Am Handy ist der Hell-/Dunkelschalter am Ende der Seite. Damit sollte zukünftig jeder sein Board so konfigurieren können, wie es ihm am liebsten ist.


    Die restlichen Funktionen sollten eigentlich soweit wie gewohnt funktionieren. Einfach mal ein wenig damit spielen oder bei Unklarheiten im Thread nachfragen. Viel Spaß im ngb 2.0.

Verwendung von IDs bei VBA-Makros in Excel 2003

TenchiMuyo1984

Neu angemeldet

Registriert
22 Okt. 2013
Beiträge
9
Ich weiß nicht, ob ich hier richtig bin.
Wenn nein, möge man diesen Thread bitte an die richtige Stelle verschieben. ;)

[src=vbnet]Function rowbegin(building_id)
rowbegin = 3
If building_id = 0 Then
rowbegin = rowbegin
Else:
For lauf = 1 To building_id Step 1
rowbegin = rowbegin + Range("C" & rowbegin - 1) + 1
Next
End If
End Function

Function rowsum(building_id)
rowsum = 1
For lauf = 0 To building_id Step 1
rowsum = rowsum + Range("C" & rowsum + 1) + 1
Next
End Function

Function EinAusblenden(building_id)
Lines_begin = rowbegin(building_id)
Lines_end = rowsum(building_id)
If Rows(Lines_begin & ":" & Lines_end).EntireRow.Hidden = True Then
Rows(Lines_begin & ":" & Lines_end).EntireRow.Hidden = False
Else:
Rows(Lines_begin & ":" & Lines_end).EntireRow.Hidden = True
End If
End Function

Sub building_00()
EinAusblenden (0)
End Sub

Sub building_01()
EinAusblenden (1)
End Sub

Sub building_02()
EinAusblenden (2)
End Sub

Sub building_03()
EinAusblenden (3)
End Sub

Sub building_04()
EinAusblenden (4)
End Sub

Sub building_05()
EinAusblenden (5)
End Sub

Sub building_06()
EinAusblenden (6)
End Sub

Sub building_07()
EinAusblenden (7)
End Sub

Sub building_08()
EinAusblenden (8)
End Sub

Sub building_09()
EinAusblenden (9)
End Sub

...[/src]

Zu meinem Problem.
Wie man ganz deutlich sehen kann, muss ich für jede ID eine eigene Sub erstellen, die aber nur in der Nummer variiert.
Insgesamt habe ich ~70 solche Nummern zu vergeben. Für jede eine eigene Sub zu erzeugen finde ich äußerst lästig!

Die Buttons sind Schaltflächen, die ich über Leiste "Formular" und "Schaltfläche" gezeichnet habe, denen ich dann ein Makro zuweise.

Gibt es eine Möglichkeit, wie man bei Aufruf der Sub eine ID vom Button dem Makro übergeben könnte?

MfG
----- ===== TenchiMuyo1984 ===== -----​
 

harvi

The People's Champion

Registriert
14 Juli 2013
Beiträge
738
Da kommen sie angekrochen aus unter dem Deckel!
 
Zuletzt bearbeitet:

TenchiMuyo1984

Neu angemeldet

Registriert
22 Okt. 2013
Beiträge
9
  • Thread Starter Thread Starter
  • #3
Und was hat das jetzt bitte mit dem Thema/der Frage zu tun? ....

MfG
----- ===== TenchiMuyo1984 ===== -----
 

drfuture

Zeitreisender
Teammitglied

Registriert
14 Juli 2013
Beiträge
8.761
Ort
in der Zukunft
Du kannst mit "Application.Caller" auf die Beschriftung des Buttons zugreifen der geklickt wurde (die normalen Buttons nicht die AktivX Buttons!)
Das heißt zum Test kannst du dem ersten Button z.B. das Makro "test" zuweisen und den Code hier im VBA-Editor einfügen
[src=vb]
Public sub test()
msgbox Application.Caller
End Sub
[/src]

dann sollte beim klicken des ersten Buttons eine Box mit dem Namen des Buttons erscheinen.
Über den Namen und ein select Case kannst du dann natürlich die passende Funktion aufrufen...
 

TenchiMuyo1984

Neu angemeldet

Registriert
22 Okt. 2013
Beiträge
9
  • Thread Starter Thread Starter
  • #5
Ah, hast Recht.

Es kommt nun ein Fenster mit dem Inhalt:

xx steht dabei für die Nummer des Buttons.

Ist schonmal gut, aber kann man die Nummerierung irgendwie selber anpassen?
Habe mir das mal bei einigen getestet, und die Nummern sind durcheinander. Eine eigene Vergabe wäre da deutlich angenehmer.
Haste da auch einen Vorschlag?

MfG
----- ===== TenchiMuyo1984 ===== -----​
 
Zuletzt bearbeitet:

drfuture

Zeitreisender
Teammitglied

Registriert
14 Juli 2013
Beiträge
8.761
Ort
in der Zukunft
Wenn du die Schaltfläche mit der rechten Maustaste anklickst steht in der Ecke zwischen Zeilenzahlen und SpaltenBezeichnern der Text der beim Klick ausgegeben wird - da kannst du auch einfach Zahlen vergeben wie es dir passt...
 
Oben