Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.04.2024 18:57:33
17.04.2024 16:56:58
Anzeige
Archiv - Navigation
188to192
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
188to192
188to192
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Endlosschleife ?

Endlosschleife ?
10.12.2002 15:53:26
klausi
Hallo an Alle,

ich habe vor einigen Tagen unter dem Beitrag "VBA Anfänger" mein Problem so gut es geht geschildert und habe auch von Phil einen guten Code zur Lösung erhalten. Leider läuft irgend etwas nicht richtig. Ich muß das Makro immer mit ESC abbrechen. Meine Ursprungstabelle hat z.Z. 80 Zeilen und 14 Spalten. Irgendwie stimmt was bei der letzten Zeile nicht. Es wird alles ordentlich ausgeführt und zusammengefasst, nichtbenötigte Zeilen werden auch gelöscht bis auf 52. In Zeile 53 jedoch wird in der Zelle 2 eine 0 eingfügt und in Zelle 7 jede Menge CHR(10). Normalerweise müsste doch weitergezählt werden bis "Do Until irow = ende".
Kann mir jemand weiterhelfen ?

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Endlosschleife ?
10.12.2002 15:58:39
Hajo_Zi
Hallo Klausi

ich glaube es gibt hier einige Leute die Dir Helfen können. Aber nur wenige haben einen Heiligen Schein oder eine Glaskugel um Deinen Code zu sehen. Für alle anderen würde es sich schon gut machen, wenn Du den Code posten könntest.

Gruß hajo

Re: Endlosschleife ?
11.12.2002 07:08:48
klausi
Sorry, total daneben.

Hier der Code der ja ursprünglich von Philipp ist.

Sub gruppieren1()
Dim irow As Integer, z As Integer
Dim ende As Integer
ende = Range("D36000").End(xlUp).Row
Application.ScreenUpdating = False
z = 1
irow = 7
Do Until irow = ende
If Cells(irow, 4).Value = Cells(irow + z, 4).Value Then
Cells(irow, 2) = Cells(irow, 2) + Cells(irow + z, 2)
Cells(irow, 7) = Cells(irow, 7) & Chr(10) & Cells(irow + z, 7)
Rows(irow + z).Delete
ElseIf IsEmpty(Cells(irow, 4)) Then
irow = irow + 1
Else
irow = irow + 1
End If
Loop
End Sub
Sub zeileneinfügen()
Dim irow
For irow = 8 To 200 Step 2
Rows(irow).Insert
Next irow
End Sub

nochmals Tschuldigung !

Anzeige
Re: Endlosschleife ?
11.12.2002 07:28:23
Hajo_Zi
Hallo KLaus

das zweite Makro ist ja ok, sieht mir jedenfalls so aus.

Aber was soll das erste Makro machen ???


Option Explicit

Sub gruppieren1()
Dim irow As Integer ', z As Integer
Dim ende As Integer
ende = Range("D36000").End(xlUp).Row
If ende < 7 Then Exit Sub
Application.ScreenUpdating = False
' z = 1
' irow = 7
' Do Until irow = ende
For irow = ende - 1 To 7 Step -1
If Cells(irow, 4).Value = Cells(irow + 1, 4).Value Then
Cells(irow, 2) = Cells(irow, 2) + Cells(irow + 1, 2)
Cells(irow, 7) = Cells(irow, 7) & Chr(10) & Cells(irow + 1, 7)
Rows(irow + 1).Delete
' ElseIf IsEmpty(Cells(irow, 4)) Then
' irow = irow + 1
' Else
' irow = irow + 1
End If
Next irow
' Loop
End Sub

Sub zeileneinfügen()
' ok
Dim irow
For irow = 8 To 200 Step 2
Rows(irow).Insert
Next irow
End Sub

Code eingefügt mit: Excel Code Jeanie

Code Jeanie
Frage
Das Umsetzen nach Html klappt perfekt, auch die Ansicht in den Foren ist gegeben. Bei manchen Foren kann man aber anscheinend nicht den dargestellten Code nach VBA rückkopieren. Warum?
Antwort
Dies liegt nicht an der Code Jeanie !!! Manche Foren interpretieren anscheinend <pre > Tags nicht richtig und erzeugen am Zeilenende einen weichen Zeilenumbruch anstatt eines harten Zeilenumbruches. Dies führt dazu, dass im VBA-Editor die Zeilen hintereinander geschrieben werden. Zum Rückkopieren in solchen Fällen: Fügen Sie den kopierten Code aus dem Forum nach Word ein, kopieren Sie ihn dort wieder und fügen Sie ihn dann im VBA - Editor ein

Gruß Hajo

Anzeige
Re: Endlosschleife ?
11.12.2002 08:42:43
Hajo_Zi
Hallo Klaus

was soll mir das sagen
" nur der beschriebene Fehler macht mir Probleme"

bei mir kommt kein Fehler. Das kann aber auch daran liegen das ich Deine Tabelle nicht richtig nachgebaut habe.

Gruß Hajo

Re: Endlosschleife ?
11.12.2002 09:34:06
klausi
Hallo Hajo

Ich versuche zu Beschreiben was das Makro machen soll.

Das erste Makro soll so eine Art Stücklistenauswertung darstellen. Die Tabelle enthält eine Überschriftenzeile mit

Art.Nr. Bezeichnung Auftrag Menge Ausschuß Ist-Zeit Zeit/Teil

darunter werden die Werte eingetragen, inzwischen ca. 500 Zeilen.
Nun nem ich diese Tabelle und suche zunächst in der Spalte Zeit/Teil nach allen Werten größer 20 und kopiere diese in ein anderes Tabellenblatt, das den gleichen Aufbau hat.
Hier wird dann sortiert nach Art.Nr..
Da eine Art.Nr. öfters vorkommt, stehen diese jetzt zusammen untereinander.
Innerhalb der gleichen Art.Nr. sind in der Spalte "Ist-Zeit" unteschiedliche Zeiten, diese sollen addiert werden. Das selbe mit der Spalte "Menge".
Dies übernimmt das Makro (nach Anpassung) und lässt nun pro Zeile 1x die Art.Nr. stehen, 1x die Bezeichnung, alle Auftr.Nr., die Summe der Spalte "Menge", die Summe der Spalte Ist-Zeit.
Nur muss ich das Makro mit ESC abbrechen weil es sonst ewig laufen würde.


Anzeige
Re: Endlosschleife ?
11.12.2002 10:39:23
Hajo_Zi
Hallo Klaus

schicke mir mal eine Mustertabelle von der kopierten Tabelle, falls nicht geheim. Bei mir lief es ihne Probleme

Gruß Hajo

Re: Endlosschleife ?
11.12.2002 12:52:02
klausi
Hallo Hajo,

ich glaube ich weiß jetzt worin das Missverständnis heute Morgen gelegen hat, irgendwie hab ich immer mit dem alten Makro rumgemacht. Dein Makro läuft bestens und ist genau das was ich gebraucht habe. Mir fällt ein ganzes Gebirge vom Herzen. Tolle Einrichtung so ein Forum, wenn man sich auskennt.
Vielen Dank für die Hilfe !

Gruß Klaus

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige