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

Hilfe bei Laufzeitfehler 1004 bei for-Schleife

Hilfe bei Laufzeitfehler 1004 bei for-Schleife
16.12.2014 22:14:47
Hendrik
Hallo zusammen,
erstmal ein großes Lob an dieses Forum. Ich bin Anfänger mit VBA und habe schon einige Tipps hier entnehmen können. Nun stehe ich selber auf dem Schlauch.
In der angehängten Excel-Datei (https://www.herber.de/bbs/user/94452.xls)
habe ich im ersten Tabellenblatt 2 Spalten (nämlich die 2. und die 4.), die jeweils Messdaten in einer Spalte stehen haben. Spalte 1 und 3 sind x-Koordinaten der Messspur. Ich möchte, dass pro x-Koordinate die Daten in eine neue Spalte auf dem zweiten Tabellenblatt kommen.
Also alle Daten der zweiten Spalte, die sich auf die x-Koordinate 5890 in der ersten Spalte beziehen in die erste Spalte des zweiten Tabellenblattes, alle Daten der zweiten Spalte, die sich auf 55890 in der ersten Spalte beziehen, in die zweite Spalte usw... Insgesamt bekomme ich dann auf dem zweiten Tabellenblatt 9 neue Spalten.
Dies soll dann für die 4. Spalte wiederholt werden, die sich auf die 3. Spalte bezieht. Da habe ich dann die Variable "sprung" eingeführt, damit in der 10. Spalte auf dem zweiten Tabellenblatt die Tabelle angehängt wird. Da dies noch mehr Dateien werden, habe ich eine Schleife geschrieben, mit "m" als Laufvariable. Da setzt das Programm aber aus (Laufzeitfehler 1004), ich kann mir nicht erklären, warum. Wenn ich m=1 oder m=3 ohne Schleife mache, funktionierts. Mit Schleife nicht...
Bin für Hilfe mehr als dankbar ! Besten Gruß !
Angehängt der Code:
Sub Gesamtmakro()
Dim cDir As String
Dim sPath As String
Dim i As Integer
Dim n As String
Dim m As Integer
Dim zaehler1 As Integer
m = 1
i = 1
sprung = 0
zaehler1 = 1
zaehler2 = 0
zaehler3 = 0
zaehler4 = 0
zaehler5 = 0
zaehler6 = 0
zaehler7 = 0
zaehler8 = 0
sprung = 0
For m = 1 To 3 Step 2
For i = 1 To 13500
'1. Mess-Spur
If ThisWorkbook.Worksheets(1).Cells(i, m) = 5890 Then
ThisWorkbook.Worksheets(2).Cells(i, m + sprung) = ThisWorkbook.Worksheets(1).Cells(i, m + 1)
zaehler1 = zaehler1 + 1
End If
'2. Mess-Spur
If ThisWorkbook.Worksheets(1).Cells(i, m) = 55890 Then
ThisWorkbook.Worksheets(2).Cells(i + 1 - zaehler1, m + 1 + sprung) = ThisWorkbook.Worksheets(1). _
Cells(i, m + 1)
zaehler2 = zaehler2 + 1
End If
'3. Mess-Spur
If ThisWorkbook.Worksheets(1).Cells(i, m) = 105890 Then
ThisWorkbook.Worksheets(2).Cells(i + 1 - zaehler1 - zaehler2, m + 2 + sprung) = ThisWorkbook. _
Worksheets(1).Cells(i, m + 1)
zaehler3 = zaehler3 + 1
End If
''4. Mess-Spur
If ThisWorkbook.Worksheets(1).Cells(i, m) = 155890 Then
ThisWorkbook.Worksheets(2).Cells(i + 1 - zaehler1 - zaehler2 - zaehler3, m + 3 + sprung) =  _
ThisWorkbook.Worksheets(1).Cells(i, m + 1)
zaehler4 = zaehler4 + 1
End If
''5. Mess-Spur
If ThisWorkbook.Worksheets(1).Cells(i, m) = 205890 Then
ThisWorkbook.Worksheets(2).Cells(i + 1 - zaehler1 - zaehler2 - zaehler3 - zaehler4, m + 4 +  _
sprung) = ThisWorkbook.Worksheets(1).Cells(i, m + 1)
zaehler5 = zaehler5 + 1
End If
''6. Mess-Spur
If ThisWorkbook.Worksheets(1).Cells(i, m) = 255890 Then
ThisWorkbook.Worksheets(2).Cells(i + 1 - zaehler1 - zaehler2 - zaehler3 - zaehler4 - zaehler5,  _
m + 5 + sprung) = ThisWorkbook.Worksheets(1).Cells(i, m + 1)
zaehler6 = zaehler6 + 1
End If
''7. Mess-Spur
If ThisWorkbook.Worksheets(1).Cells(i, m) = 305890 Then
ThisWorkbook.Worksheets(2).Cells(i + 1 - zaehler1 - zaehler2 - zaehler3 - zaehler4 - zaehler5 -  _
zaehler6, m + 6 + sprung) = ThisWorkbook.Worksheets(1).Cells(i, m + 1)
zaehler7 = zaehler7 + 1
End If
''8. Mess-Spur
If ThisWorkbook.Worksheets(1).Cells(i, m) = 355890 Then
ThisWorkbook.Worksheets(2).Cells(i + 1 - zaehler1 - zaehler2 - zaehler3 - zaehler4 - zaehler5 -  _
zaehler6 - zaehler7, m + 7 + sprung) = ThisWorkbook.Worksheets(1).Cells(i, m + 1)
zaehler8 = zaehler8 + 1
End If
''9. Mess-Spur
If ThisWorkbook.Worksheets(1).Cells(i, m) = 405890 Then
ThisWorkbook.Worksheets(2).Cells(i + 1 - zaehler1 - zaehler2 - zaehler3 - zaehler4 - zaehler5 -  _
zaehler6 - zaehler7 - zaehler8, m + 8 + sprung) = ThisWorkbook.Worksheets(1).Cells(i, m + 1)
End If
'n = n + 1
Next i
sprung = sprung + 7
Next m
End Sub

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Hilfe bei Laufzeitfehler 1004 bei for-Schleife
17.12.2014 06:50:12
ede
Hallo Hendrik,
schau mal ins Modul2, und lass das Makro "umsetzen" laufen.
Gruss
https://www.herber.de/bbs/user/94456.xls
Anzeige

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige