Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Hilfe für Schleife

Forumthread: Hilfe für Schleife

Hilfe für Schleife
18.12.2020 23:15:56
DJ
Hallo zusammen,
könnte mal Hilfe brauchen.
Habe mir folgenden Code erarbeitet, aber ich denke man könnte das mit einer Schleife vielleicht eleganter lösen. Kann da mal jemand Hilfestellung leisten.
Hier werden je nach Zustand des OptionButtons Werte in bestimmte Zellen geschrieben.
If OptionButton1.Value = True Then DruckLS.Cells(13, 13).Value = "X"
If OptionButton2.Value = True Then DruckLS.Cells(13, 14).Value = "X"
If OptionButton3.Value = True Then DruckLS.Cells(13, 15).Value = "X"
If OptionButton4.Value = True Then DruckLS.Cells(13, 16).Value = "X"
If OptionButton5.Value = True Then DruckLS.Cells(13, 17).Value = "X"
If OptionButton6.Value = True Then DruckLS.Cells(13, 18).Value = "X"
If OptionButton7.Value = True Then DruckLS.Cells(13, 19).Value = "X"
If OptionButton8.Value = True Then DruckLS.Cells(14, 13).Value = "X"
If OptionButton9.Value = True Then DruckLS.Cells(14, 14).Value = "X"
If OptionButton10.Value = True Then DruckLS.Cells(14, 15).Value = "X"
If OptionButton11.Value = True Then DruckLS.Cells(14, 16).Value = "X"
If OptionButton12.Value = True Then DruckLS.Cells(14, 17).Value = "X"
If OptionButton13.Value = True Then DruckLS.Cells(14, 18).Value = "X"
If OptionButton14.Value = True Then DruckLS.Cells(14, 19).Value = "X"
im 2. Teil gibt es noch ein Else, geht da auch eine Schleife?
If OptionButton78.Value = True Then DruckLS.Cells(15, 30).Value = "X" Else: DruckLS.Cells(15, 30).Value = "-24"
If OptionButton79.Value = True Then DruckLS.Cells(15, 31).Value = "X" Else: DruckLS.Cells(15, 31).Value = "-14"
If OptionButton80.Value = True Then DruckLS.Cells(15, 32).Value = "X" Else: DruckLS.Cells(15, 32).Value = "-7"
If OptionButton81.Value = True Then DruckLS.Cells(15, 33).Value = "X" Else: DruckLS.Cells(15, 33).Value = ""
If OptionButton82.Value = True Then DruckLS.Cells(15, 34).Value = "X" Else: DruckLS.Cells(15, 34).Value = "+7"
If OptionButton83.Value = True Then DruckLS.Cells(15, 35).Value = "X" Else: DruckLS.Cells(15, 35).Value = "+14"
If OptionButton84.Value = True Then DruckLS.Cells(15, 36).Value = "X" Else: DruckLS.Cells(15, 36).Value = "+24"
Gruß Chris
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Hilfe für Schleife
19.12.2020 00:24:18
onur
Wo befinden sich die OptionButtons? Auf einer Userform oder auf einem Blatt?
AW: Hilfe für Schleife
19.12.2020 00:27:00
onur
Sicher "-14"?
Das ist reiner Text und keine Zahl.
AW: Hilfe für Schleife
19.12.2020 01:48:19
onur
Wenn die OptionButtons auf einer UF sind, einfach aus
.OLEObjects(OP & 1 + i).Object.Value

das machen:
.Controls(OP & 1 + i).Value
    Dim DruckLS, i, OP, f
OP = "OptionButton"
Set DruckLS = Sheets("Tabelle1")
With DruckLS
For i = 0 To 6
f = 7: If i Mod 6 = 0 Then f = 8
If .OLEObjects(OP & 1 + i).Object.Value = True Then .Cells(13, 13 + i).Value = "X"
If .OLEObjects(OP & 8 + i).Object.Value = True Then .Cells(14, 13 + i).Value = "X"
If .OLEObjects(OP & 78 + i).Object.Value = True Then
.Cells(15, 30 + i).Value = "X"
Else:
.Cells(15, 30 + i).Value = f * (i - 3)
End If
Next i
End With

Anzeige
AW: Hilfe für Schleife
19.12.2020 01:55:58
onur
Bisschen kürzer:
    Dim DruckLS, i, OP, f
OP = "OptionButton"
Set DruckLS = Sheets("Tabelle1")
With DruckLS
For i = 0 To 6
f = 7: If i Mod 6 = 0 Then f = 8
If .OLEObjects(OP & 1 + i).Object Then .Cells(13, 13 + i) = "X"
If .OLEObjects(OP & 8 + i).Object Then .Cells(14, 13 + i) = "X"
If .OLEObjects(OP & 78 + i).Object Then
.Cells(15, 30 + i) = "X"
Else:
.Cells(15, 30 + i) = f * (i - 3)
End If
Next i
End With

Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige