Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Makro wird nur teilweise ausgeführt

Makro wird nur teilweise ausgeführt
28.03.2018 09:21:10
Florian
Hallo Liebe Forengemeinde,
ich habe ein Problem mit einem Excel Makro. Das Makro soll aus einer Tabelle (verschiedene Kategorien in den Zeilen und eine Zeitreihe über die Spalten) Zahlen auslesen und in einer untereinander darstellen (Datum/Kategorie/Wert...). Das Funktioniert soweit auch sehr gut nur hätte ich jetzt gerne pro Spalte noch ein Kommentarfeld hinzugefügt (eines Pro Monat).
Mein Problem ist nun, dass beim ausführen des Makros zwar das Kommentar genommen wird, aber der darauf folgende Befehl wird nicht mehr durchgeführt:
Next l
With WB2
.Sheets(1).Range("B:X").Delete
.Save
.Close

Hat jemand eine Idee was ich hier übersehe?
Der gesamte Code:
WB1.Activate
k = 0
For l = 4 To 15
i = 5
r = 37
j = 4
Do Until WB1.Sheets(l).Cells(4, j).Value = ""
i = 5
Do Until WB1.Sheets(l).Cells(i, 1).Value = ""
If WB1.Sheets(l).Cells(i, j).Value = "" Or WB1.Sheets(l).Cells(i, j).Value = 0 Then
i = i + 1
Else
k = k + 1
WB2.Sheets(1).Cells(k, 1).Value = Format(WB1.Sheets(l).Cells(4, j).Value, " _
yyyymmdd")
WB2.Sheets(1).Cells(k, 2).Value = Round(WB1.Sheets(l).Cells(i, j).Value, 0)
WB2.Sheets(1).Cells(k, 3).Value = WB1.Sheets(l).Cells(2, 3).Value
WB2.Sheets(1).Cells(k, 4).Value = WB1.Sheets(l).Cells(i, 1).Value
WB2.Sheets(1).Cells(k, 5).Value = WB1.Sheets(l).Cells(r, j).Value
WB2.Sheets(1).Cells(k, 1).Value = WB2.Sheets(1).Cells(k, 1).Value & ";" & WB2.   _
_
_
_
_
Sheets(1).Cells(k, 2).Value & ";" & WB2.Sheets(1).Cells(k, 3).Value & ";" & _
WB2.Sheets(1).Cells(k, 4).Value & ";" & ";" & WB2.Sheets(1).Cells(k, 5).Value
i = i + 1
End If
Loop
j = j + 1
Loop
j = 4
Do Until WB1.Sheets(l).Cells(4, j).Value = ""
i = 19
Do Until WB1.Sheets(l).Cells(i, 1).Value = ""
If WB1.Sheets(l).Cells(i, j).Value = "" Or WB1.Sheets(l).Cells(i, j).Value = 0 Then
i = i + 1
Else
k = k + 1
WB2.Sheets(1).Cells(k, 1).Value = Format(WB1.Sheets(l).Cells(4, j).Value, " _
yyyymmdd")
WB2.Sheets(1).Cells(k, 2).Value = Round(WB1.Sheets(l).Cells(i, j).Value, 0)
WB2.Sheets(1).Cells(k, 3).Value = WB1.Sheets(l).Cells(2, 3).Value
WB2.Sheets(1).Cells(k, 4).Value = WB1.Sheets(l).Cells(i, 1).Value
WB2.Sheets(1).Cells(k, 5).Value = WB1.Sheets(l).Cells(r, j).Value
WB2.Sheets(1).Cells(k, 1).Value = WB2.Sheets(1).Cells(k, 1).Value & ";" & WB2.   _
_
_
_
_
Sheets(1).Cells(k, 2).Value & ";" & WB2.Sheets(1).Cells(k, 3).Value & ";" & _
WB2.Sheets(1).Cells(k, 4).Value & ";" & ";" & WB2.Sheets(1).Cells(k, 5).Value
i = i + 1
End If
Loop
j = j + 1
Loop
Next l
With WB2
.Sheets(1).Range("B:X").Delete
.Save
.Close
End With

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro wird nur teilweise ausgeführt
01.04.2018 08:26:48
Oberschlumpf
Hi Florian,
eine Bsp-Datei per Upload, die die erforderlichen Bsp-Daten und den VBA-Code enthält, wäre schön.
Gestalte die Datei so, dass dein Problem nachvollziehbar ist.
Ciao
Thorsten
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige