Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
04.08.2013 14:12:46 |
sse |
|
|
|
05.08.2013 05:52:34 |
Gast15658 |
|
|
|
05.08.2013 05:54:37 |
Gast63028 |
|
|
|
05.08.2013 08:23:44 |
Gast23625 |
|
|
Dynamisch beliebig viele verschachtelte For Schleifen |
05.08.2013 09:59:10 |
Gast10316 |
|
|
|
05.08.2013 21:27:51 |
sse |
|
|
Von:
Gast10316 |
Datum:
05.08.2013 09:59:10 |
Views:
875 |
Rating:
|
Antwort:
|
Thema:
Dynamisch beliebig viele verschachtelte For Schleifen |
Wenn deine Tabelle1 so ausschaut:
Dann so:
Option Explicit
Public Sub step()
Dim wks As Excel.Worksheet
Dim rngDaten As Excel.Range
Set wks = Worksheets("Tabelle1")
Set rngDaten = wks.Range("A1:D4")
If Not SetMarker(rngDaten, rngDaten.Columns.Count) Then
If vbYes = MsgBox("Der Endzustand wurde erreicht." & vbNewLine & _
vbNewLine & _
"Soll zurückgesetzt werden?", _
vbQuestion Or vbYesNo) _
Then
Call rngDaten.ClearContents
End If
End If
End Sub
Private Function SetMarker(Range As Excel.Range, ByVal Index As Long, Optional Value = "X") As Boolean
Dim rngColumn As Excel.Range
Dim rngMarker As Excel.Range
If Index < 1 Then Exit Function
SetMarker = True
Set rngColumn = Range.Columns(Index)
Set rngMarker = rngColumn.Find(Value, LookIn:=xlValues, LookAt:=xlWhole)
If Not rngMarker Is Nothing Then
If rngMarker.Row < rngColumn.Cells(rngColumn.Cells.Count).Row Then
rngMarker.Offset(1).Value = Value
Else
SetMarker = SetMarker(Range, Index - 1, Value)
If SetMarker Then rngColumn.Cells(1).Value = Value
End If
If SetMarker Then Call rngMarker.ClearContents
Else
rngColumn.Cells(1).Value = Value
End If
End Function
Gruß
|
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Bitte geben Sie ein aussagekräftiges Thema an.
Bitte geben Sie eine gültige Email Adresse ein!
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
04.08.2013 14:12:46 |
sse |
|
|
|
05.08.2013 05:52:34 |
Gast15658 |
|
|
|
05.08.2013 05:54:37 |
Gast63028 |
|
|
|
05.08.2013 08:23:44 |
Gast23625 |
|
|
Dynamisch beliebig viele verschachtelte For Schleifen |
05.08.2013 09:59:10 |
Gast10316 |
|
|
|
05.08.2013 21:27:51 |
sse |
|
|