Anzeige
Archiv - Navigation
1476to1480
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

Makro funktioniert nur bei nochmaliger Eingabe

Makro funktioniert nur bei nochmaliger Eingabe
03.03.2016 13:47:16
Django
Hallo zusammen,
ich habe ein Makro geschrieben, dass Werte aus zwei Tabellen vergleicht.
So schön so gut. Jetzt habe ich folgendes Problem, das Makro erkennt die gleichen Werte nur, wenn ich die Werte im zweiten Tabellenblatt nochmals per Hand eingebe (hab das nur als Test gemacht =))
Hab schon einiges probiert mit Formatierung und so weiter.
Das Makro macht im Prinzip folgendes.
Zelle in TB1 nicht leer, dann Vergleiche Zelle 1 in TB1 mit Zelle 1 in TB2, wenn gleich schreibe Wert aus TB1 Z2 in TB2 Z8.
Hoffe das ist klar und ihr könnt mir helfen. Ich verstehs nicht.
besten Dank

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro funktioniert nur bei nochmaliger Eingabe
03.03.2016 13:56:23
selli
hallo,
könnte sein, dass in der 7. zeile des makros ein schreibfehler ist.
gruß
selli

AW: Makro funktioniert nur bei nochmaliger Eingabe
03.03.2016 13:59:12
Django
ich hab jetzt gedacht wäre eine einfach lösung, wie formatier alles als Zahl etc.
Kann es leider nicht posten, sindDaten von der Maloche. Wenn mich niemand so vesteht, anonymisere ich das heute abend noch.
Trotzdem danke...

AW: Makro funktioniert nur bei nochmaliger Eingabe
03.03.2016 14:45:18
Werner
Hallo,
du könntest ja zumindest mal deinen Makro-Code hier posten. Vielleicht klärt sich das damit ja schon.
Gruß Werner

AW: Makro funktioniert nur bei nochmaliger Eingabe
03.03.2016 15:29:24
Django

Sub Verkettung()
Dim i As Long
Dim j As Long
For i = 13 To 300
For j = 1 To 2000
If Worksheets("Tabelle2").Cells(i, 2)  "" And Worksheets("Tabelle2").Cells(i, 2) =  _
Worksheets("Tabelle1").Cells(j, 6) Then
If Worksheets("Tabelle1").Cells(j, 1) = Worksheets("Tabelle2").Cells(i, 3) Then
If Worksheets("Tabelle1").Cells(j, 16) = "" Then
Worksheets("Tabelle1").Cells(j, 16) = Worksheets("Tabelle2").Cells(i, 1)
End If
End If
End If
Next j
Next i
End Sub

Anzeige
klingt nach Kaffeepause
03.03.2016 15:46:20
Michael
Hi zusammen,
das Makro schreit geradezu nach Verwendung von Arrays - die vielen, noch dazu verschachtelten Tabellenzugriffe dauern bestimmt "ewig".
Außerdem gehört sich die innere Schleife zumindest erst nach die Abfrage, ob xxx.Cells(i, 2) ungleich "" ist- dann wird sie etwas weniger häufig ausgeführt.
Vielleicht nachher - ich muß aus dem Haus.
Schöne Grüße,
Michael

klingt nach SVerweis ...
03.03.2016 15:50:50
Daniel
... welchen man bei grösseren Datenmengen durch Sortierung des Quellbereichs extrem beschleunigen kann.
Gruß Daniel

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige