Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1704to1708
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

Dynamische Schleife

Dynamische Schleife
25.07.2019 13:02:27
Alex
Hallo Leute,
ich habeeine vereinfachte version erstellt die ihr anschauen könnt um euch besser vorzustellen was ich machen möchte.
Ich möchte gerne eine Schleife erstellen, die jede Zelle in Spalte B überprüft ob sie Leer ist. Falls nein dann soll relativ von dieser Zelle aus folgendes erstell werden:
in die 1te Zeile und 3te Spalte ein ActiveX-Button erstellt werden das eine Funktion ausführt (Funktion namens RESET die den Inhalt der nächsten(relativ zu sich selbst) Zelle auf 0 setzt
in die 1te Zeile und 5te Spalte ein ActiveX-Spinnbutton erstellt werden die 2 Funktionen ausführen soll( spinbtn_SpinDown() und spinbtn_SpinUp() )
Vielen Dank!!!
https://www.herber.de/bbs/user/131072.xlsx

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dynamische Schleife
25.07.2019 13:15:43
onur
Von Code erstellenden/manipulierenden Codes solltest du die Finger lassen (nicht nur als Anfänger).
Ausserdem ist es völlig unnötig, Codes oder Controls während der Laufzeit zu erstellen, wenn man alles vernünftig plant.
AW: Dynamische Schleife
25.07.2019 13:51:29
Daniel
HI
ich würde hier keine ActiveX-Steuerelemente verwenden, sondern Formular-Steuerelemente.
das erleichtert es dir, über die erzeugten Buttons einen Code ausführen zu lassen, weil du hier nicht für jedes Element einen neuen Code schreiben musst, sondern einen bestehenden zuweisen kannst:
Dieses Makro erzeugt die Buttons
Sub Makro1()
Dim Zelle As Range
For Each Zelle In Columns(2).SpecialCells(xlCellTypeConstants, 2)
With Zelle.Offset(1, 3)
ActiveSheet.Buttons.Add(.Left, .Top, .Width, .Height).Select
Selection.OnAction = "Reset"
Selection.Caption = "Reset"
End With
With Zelle.Offset(1, 5)
ActiveSheet.Spinners.Add(.Left, .Top, .Height / 2, .Height).Select
Selection.Min = 0
Selection.Max = 100
Selection.SmallChange = 1
Selection.LinkedCell = .Offset(0, -1).Address
End With
Next
End Sub
Dieses Makro führt den Reset aus und muss in einem allgemeinen Modul vorliegen
Sub Reset()
ActiveSheet.Shapes(Application.Caller).TopLeftCell.Offset(0, 1).Value = 0
End Sub
Gruß Daniel
Anzeige
AW: Dynamische Schleife
25.07.2019 16:54:35
Alex
Hallo Daniel,
erstmal vielen Dank für die Zeit die du dir für mich genommen hast. Es funktioniert!! . Aber ich komme mit Formular-Steuerelemente nicht weiter aufgrund bereits existierender Werte die bei weitem über das Limit 30.000?!? der Formular-Spinbuttons hinausgehen. Es kann nur mit ActiveX-Steuerelemente gelöst werden.
Wenn mir jemand eine Version mit ActiveX-Spinbuttons zeigt wäre ich sehr dankbar.
AW: Dynamische Schleife
25.07.2019 17:12:34
Daniel
Hi
in welchem Bereich müssen denn die Werte über den Spin-Button verändert werden?
ansonsten, bemüh mal den Recoder, der müsste dir zeigen wie man ein ActiveX-Control einfügt
Gruß Daniel
Anzeige
AW: Dynamische Schleife
25.07.2019 17:24:28
Alex
bis 2 billionen kann ich mit activeX Spinnbutton regeln.
AW: Dynamische Schleife
25.07.2019 17:31:42
Alex
Ich habs jetzt deinen code ersetzt durch :
DEIN CODE:
ActiveSheet.Buttons.Add(.Left - breite, .Top, breite, .Height).Select
DURCH:
 ActiveSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1", Link:=False, DisplayAsIcon:=False, Left:=.Left - breite, Top:=.Top, Width:=breite, Height:=.Height).Select

Wie kann ich die Funktion Reset auf alle activeX-Buttons die mit der Schleife generiert wurden _ zuweisen? Mit

Selection.OnAction = "Reset"
funktioniert es nicht.
Anzeige
AW: Dynamische Schleife
25.07.2019 17:44:40
Daniel
HI
bei den Buttons würde ich bei Formularsteuerelmenten bleiben.
Wenn zur Laufzeit erzeugte ActiveX-Controls ein Makro ausführen sollen, muss man entweder für jedes Steuerelement auch das dazugehörige Event-Makro erstellen, oder man regelt das über Klassenprogrammierung, das ist aber kein Anfängerstoff und etwas kompizierter als die Makrozuweisung an ein Forumlarsteuerelement.
Gruß Daniel
AW: Dynamische Schleife
25.07.2019 17:32:08
onur
Eine Datei mit nur 30.000 SpinButtons macht ja auch absolut keinen Sinn.
2 Billionen braucht man schon.
AW: Dynamische Schleife
25.07.2019 17:34:11
Daniel
ist nur die Frage, ob das sinnvoll ist.
hängt aber auch von der von dir gewünschten Schrittweite ab.
Gruß Daniel
Anzeige
AW: Dynamische Schleife
25.07.2019 17:41:54
Alex
*lach* es geht nicht um die Anzahl der Spinnbuttons sondern um den Wert der Zelle die die Spinnbuttons verändern. Nicht um 30.000 Spinnbuttons -.-

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige