Thema Datum  Von Nutzer Rating
Antwort
09.02.2011 16:40:25 Samse
Solved
09.02.2011 16:54:42 Severus
NotSolved
Rot Doevents
10.02.2011 08:22:17 Gast24374
NotSolved
10.02.2011 09:46:59 Severus
NotSolved

Ansicht des Beitrags:
Von:
Gast24374
Datum:
10.02.2011 08:22:17
Views:
1115
Rating: Antwort:
  Ja
Thema:
Doevents

Hallo Severus

Danke für deine Antwort :D

Das Redim Laenge(4) funktioniert, weil ich im die oberste Grenze angebe :D

Ich habe die Lösung selber herausgefunden. Ich setze eine Variabel Wand as Bolean und schaue ob die True oder False ist. Wenn sie True ist, verlasse ich denn Sub. Dann komme ich zur nächsten Sub. Dort wird wieder abgefragt und so weiter und so fort...:D

Hier der Code:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Dim Kopf_Zeile As Integer, Kopf_Spalte As Integer
Dim Letzte_Zeile As Integer, Letzte_Spalte As Integer
Dim Laenge() As String
Dim Wand As Boolean
 
 
Sub Snake()
 
'====================================================================
'Alles Löschen und Spaltenbreite und -höhe anpassen
'====================================================================
 
    Cells.Select
    Selection.ClearContents
    Range("A1").Select
 
    Cells.Select
    Selection.ClearFormats
    Range("A1").Select
 
    Cells.Select
    Selection.RowHeight = 12
    Selection.ColumnWidth = 2.5
    Range("A1").Select
     
'====================================================================
'Spielbereich festlegen
'====================================================================
 
    Range("J10:AM39").Select
    With Selection.Borders(xlEdgeLeft)
        .LineStyle = xlContinuous
        .Weight = xlMedium
    End With
    With Selection.Borders(xlEdgeTop)
        .LineStyle = xlContinuous
        .Weight = xlMedium
    End With
    With Selection.Borders(xlEdgeBottom)
        .LineStyle = xlContinuous
        .Weight = xlMedium
    End With
    With Selection.Borders(xlEdgeRight)
        .LineStyle = xlContinuous
        .Weight = xlMedium
    End With
'====================================================================
'Snake entstehen lassen
'====================================================================
    Dim Groesse As Integer
    Wand = False
    Groesse = 5
     
    Range("V24:Z24").Select
    Selection.Interior.Color = 5287936
     
        ReDim Laenge(4)
        Laenge(0) = "V24"
        Laenge(1) = "W24"
        Laenge(2) = "X24"
        Laenge(3) = "Y24"
        Laenge(4) = "Z24"
     
    Range("V24").Select
    Letzte_Spalte = ActiveCell.Column
    Letzte_Zeile = ActiveCell.Row
     
    Range("Z24").Select
    Kopf_Spalte = ActiveCell.Column
    Kopf_Zeile = ActiveCell.Row
 
End Sub
 
Sub Rechts()
 Dim j As Integer
 
        Do
            Range(Laenge(0)).Select
            Selection.Interior.Pattern = xlNone
             
            For j = 0 To (UBound(Laenge)) - 1
     
               Laenge(j) = Laenge(j + 1)
     
            Next j
             
            Range(Laenge(4)).Select
            ActiveCell.Offset(0, 1).Select
            Selection.Interior.Color = 5287936
            Laenge(4) = ActiveCell.Address
            Sleep 100
            DoEvents
             
            If Wand = True Then
                Exit Sub
            End If
             
             
            If Selection.Borders(xlEdgeLeft).Weight = xlMedium Or Wand = True Then
                MsgBox ("Verloren")
                Wand = True
                Exit Sub
            End If
        Loop While 0 = 0
End Sub
 
Sub Links()
 
   Dim j As Integer
     
        Do
            Range(Laenge(0)).Select
            Selection.Interior.Pattern = xlNone
             
            For j = 0 To (UBound(Laenge)) - 1
     
               Laenge(j) = Laenge(j + 1)
     
            Next j
             
            Range(Laenge(4)).Select
            ActiveCell.Offset(0, -1).Select
            Selection.Interior.Color = 5287936
            Laenge(4) = ActiveCell.Address
            Sleep 100
            DoEvents
             
            If Wand = True Then
                Exit Sub
            End If
             
            If Selection.Borders(xlEdgeRight).Weight = xlMedium Then
                MsgBox ("Verloren")
                Wand = True
                Exit Sub
            End If
        Loop While 0 = 0
End Sub
 
Sub Rauf()
 
   Dim j As Integer
     
        Do
            Range(Laenge(0)).Select
            Selection.Interior.Pattern = xlNone
             
            For j = 0 To (UBound(Laenge)) - 1
     
               Laenge(j) = Laenge(j + 1)
     
            Next j
             
            Range(Laenge(4)).Select
            ActiveCell.Offset(-1, 0).Select
            Selection.Interior.Color = 5287936
            Laenge(4) = ActiveCell.Address
            Sleep 100
            DoEvents
             
            If Wand = True Then
                Exit Sub
            End If
             
            If Selection.Borders(xlEdgeBottom).Weight = xlMedium Or Wand = True Then
                MsgBox ("Verloren")
                Wand = True
                Exit Sub
            End If
        Loop While 0 = 0
End Sub
 
Sub Runter()
 
 Dim j As Integer
     
        Do
            Range(Laenge(0)).Select
            Selection.Interior.Pattern = xlNone
             
            For j = 0 To (UBound(Laenge)) - 1
     
               Laenge(j) = Laenge(j + 1)
     
            Next j
             
            Range(Laenge(4)).Select
            ActiveCell.Offset(1, 0).Select
            Selection.Interior.Color = 5287936
            Laenge(4) = ActiveCell.Address
            Sleep 100
            DoEvents
             
            If Wand = True Then
                Exit Sub
            End If
             
            If Selection.Borders(xlEdgeTop).Weight = xlMedium Or Wand = True Then
                MsgBox ("Verloren")
                Wand = True
                Exit Sub
            End If
        Loop While 0 = 0
End Sub

Gruss

Samse


Ihre Antwort
  • 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: Name: Email:



  • 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
09.02.2011 16:40:25 Samse
Solved
09.02.2011 16:54:42 Severus
NotSolved
Rot Doevents
10.02.2011 08:22:17 Gast24374
NotSolved
10.02.2011 09:46:59 Severus
NotSolved