Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
944to948
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
944to948
944to948
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Doppelte Zellen kennzeichnen - Endlosschleife (?)

Doppelte Zellen kennzeichnen - Endlosschleife (?)
28.01.2008 12:31:11
Philipp
Hi zusammen!
Folgendes Codeschnipsel bringt mich langsam zur Weissglut.
Hintergrund: Ich habe zwei Blätter in einer Arbeitsmappe.
In Blatt 1 (stxt_bagt) sind Kundennummern alphanumerisch verzeichnet.
In Blatt 2 (data) werden tägl aktualisierte Daten importiert. Nun sollen die Kundennummern von Blatt 1 in Spalte vier von Blatt 2 gesucht und in diesem Blatt 2 mit einer 0 in Spalte 19 gekennzeichnet werden.
Bis hierher funktioniert alles bestens....
Liegt keine Übereinstimmung vor, soll an Stelle der 0 eine 1 geschrieben werden. Und hier ........ rennt das Excel (scheinbar) in eine Endlosschleife o.ä., ist nur noch über den Taskmanager zu beenden.
Hat jemand einen Tipp wo mein Fehler liegt?
Hier der Code:
Dim LoI As Long
Dim LoJ As Long
Dim last_bagt As Long
Dim last_data As Long
Application.ScreenUpdating = False
With Worksheets("stxt_bagt")
last_bagt = IIf(IsEmpty(.Cells(Rows.Count, 1)), .Cells(Rows.Count, 1).End(xlUp).Row, .Rows.Count)
End With
With Worksheets("data")
last_data = IIf(IsEmpty(.Cells(Rows.Count, 4)), .Cells(Rows.Count, 4).End(xlUp).Row, .Rows.Count)
End With
For Lo_data = 5 To last_data
For Lo_bagt = 1 To last_bagt
If Worksheets("stxt_bagt").Cells(Lo_bagt, 1) = Worksheets("data").Cells(Lo_data, 4) Then
Worksheets("data").Cells(Lo_data, 19) = 0
Else
Worksheets("data").Cells(Lo_data, 19) = 1 '<---- HIER IST DER FEHLER (?)
End If
Next Lo_bagt
Next Lo_data
Application.ScreenUpdating = True
Sobald ich die gekennzeichnete Zeile auskommentiere klappt alles, nur wie gesagt leider ohne der 1 in Spalte 19.
DANKE euch!!
Philipp

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Doppelte Zellen kennzeichnen - Endlosschleife
28.01.2008 12:41:00
Rudi
Hallo,
die Doppelschleife ist viel zu langsam.

With Worksheets("Data")
For Lo_data = 5 To last_data
If worksheetfunction.countif(Worksheets("stxt_bagt").columns(1), .Cells(Lo_data, 4) )>0 Then
.Cells(Lo_data, 19) = 0
Else
.Cells(Lo_data, 19) = 1 '


Next Lo_data
Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe

AW: Doppelte Zellen kennzeichnen - Endlosschleife
28.01.2008 12:41:45
Rudi
Hallo,
die Doppelschleife ist viel zu langsam.

With Worksheets("Data")
For Lo_data = 5 To last_data
If worksheetfunction.countif(Worksheets("stxt_bagt").columns(1), .Cells(Lo_data, 4) )>0 Then
.Cells(Lo_data, 19) = 0
Else
.Cells(Lo_data, 19) = 1 '


Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe

Anzeige
AW: Doppelte Zellen kennzeichnen - Endlosschleife
28.01.2008 12:47:00
Philipp
Der Hammer !
Vielen Herzlichen Dank, die frage nach der Geschwindigkeit wäre die nächste gewesen ;-)
Danke nochmal und schönen Tag!
Philipp

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige