Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1380to1384
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

Schleife If ...and ... then

Schleife If ...and ... then
12.09.2014 13:21:31
rinkadink
Tach Zusammen,
ich komme leider nicht wieter und hoffe jemand kann mir (noch) helfen :)
Ich habe TB 1 + TB 2
In TB 1 Spalte C stehen Werte z.b. 4
In TB 2 Spalte B, C und D stehen Werte z.b. B1 = 1 + C1 = 10 // D1 = XXX
Mein VBA sollte nun eigentlich über herausfinden, dass 4 eine Zahl ist die zwischen 1 und 10 liegt und dann D1 aus TB2 nach D1 in TB1 kopieren.
Habe diesen VBA versucht zu nutzen jedoch leider ohne Erfolg :(
Sub testing()
Dim LoI As Long ' 1. Schleifenvariable
Dim LoJ As Long ' 2. Schleifenvariable
Dim LoLetzte1 As Long ' Variable letzte Zeile in Spalte C TB1
Dim LoLetzte2 As Long ' Variable letzte Zeile in Spalte B TB2
Dim Loletzte3 As Long ' Variable letzte Zeile in Tabelle3
Application.ScreenUpdating = False ' Bildschirmaktualisierung aus
With Worksheets("Tabelle1") ' letzte Zeile in Spalte C Tabelle1
LoLetzte1 = IIf(IsEmpty(.Cells(Rows.Count, 3)), _
.Cells(Rows.Count, 3).End(xlUp).Row, .Rows.Count)
End With
With Worksheets("Tabelle2") ' letzte Zeile in Spalte B Tabelle2
LoLetzte2 = IIf(IsEmpty(.Cells(Rows.Count, 2)), _
.Cells(Rows.Count, 2).End(xlUp).Row, .Rows.Count)
End With
For LoI = 1 To LoLetzte1 ' 1. Schleife alle Werte Spalte C
If Worksheets("Tabelle1").Cells(LoI, 3) >= Worksheets("Tabelle2").Cells(LoI, 2) And  _
_
Worksheets("Tabelle1").Cells(LoI, 3) 

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Schleife If ...and ... then
12.09.2014 13:40:14
Daniel
Hi
wenn du TB2 nach Spalte B aufsteigend sortierst müsste sich dein Wunsch ohne VBA mit folgender Formel erfüllen lassen (Formel für den Fall, dass die Werte in Zeile 1 beginnen):
=Wenn(SVerweis(C1;TB2!B:C;2;Wahr)>=C1;SVerweis(C1;TB2!B:D;3;Wahr);"")
Gruß Daniel

AW: Schleife If ...and ... then
12.09.2014 13:51:32
rinkadink
Hallo Daniel,
danke das du versuchst zu helfen :)
Hat leider nicht funtioniert.
Aber liegt vermutlich auch daran, dass ich kauderwelsch geschrieben habe bzw. so schreibe wie man denkt wenn man versucht sich in einen VBA hineinzuversetzen.
Nun im TB 1 steht eine Zahl in Spalte C
Diese Zahl ist nicht im TB 2 enthalten
Im TB 2 sind Ranges z.b. C2 = 10000 und D2 = 11000
Wenn jetzt in TB1 die Zahl 10500 steht müsste es erkennen
das es eine Zahl ist die zwischen 10000 und 11000 liegt.
Deswegen habe ich versucht es über eine if bedingung zu machen die gekoppelt ist. größer als c2 und kleiner als d2.
Leider beginnen die Werte nicht in Zeile 1
Habe hier eine Beispieldatei hochgeladen.
Könntest du mir an dieser Beispieldatei zeigen wie ich das machen muß ? ( also für Dummy's :) )

Anzeige
AW: Schleife If ...and ... then
12.09.2014 14:14:14
Daniel
Hi
kuckst du hier: https://www.herber.de/bbs/user/92597.xlsm
1. Zahlen, die als Texte formatiert sind, in Zahlen umwandeln (mit Text-In-Spalten)
2. Tabelle2 aufsteigend sortierten
3. Werte wie beschrieben mit SVerweis auslesen
Gruß Daniel

AW: Schleife If ...and ... then
12.09.2014 14:18:36
rinkadink
Danke, dir einen guten Start ins Wochenende.

AW: Schleife If ...and ... then
12.09.2014 14:40:48
rinkadink
Hi Daniel,
ich muss doch nochmal eine Fragen loswerden.
Wenn in TB1 die Zahlen jetzt aus einer Formel berechnet werden erkennt er das nicht mit dem SVERWEIS.
Geht allerdings wenn ich die lösche und dann einfüge mit Werten.
Geht das nicht auch mit Zahlen die als Formel in der Zelle stehen ?

Anzeige
AW: Schleife If ...and ... then
12.09.2014 15:51:36
Daniel
Hi
deine Formel spuckt Texte aus.
der SVerweis unterscheidet aber genau zwischen Text und Zahl, dh "1" ist für ihn nicht das gleiche wie 1.
dh du musst darauf achten dass in der Suchmatrix das gleiche steht wie in den Suchwerten.
du kannst in der Formel die Texte gleich in Zahlen umwandeln, indem du entweder die WERT-Funktion anwendest, oder eine Rechenoperation mit dem Text ausführst (mit 1 multiplizieren oder 0 addieren, oder 2x mit -1 multiplizieren)
=Wert(DeineFormel())
=1*DeineFormel()
=0+DeineFormel()
=--DeineFormel()
Gruß Daniel

Anzeige
AW: Schleife If ...and ... then
12.09.2014 16:06:39
Adis
Hallo
ich habe das Makro in einer Excel Datei getestet und bekam kein Ergebnis. Das macht e mich stutzig!
Der Fehler liegt in diesem Code: Im Original Code wird der Wert aus -Cells(LoI, 5).Value- geladen
Die Spalte war bei mir leer. Somit wurde auch kein Wert kopiert. Bitte Code aendern und testen!
Worksheets("Tabelle1").Cells(LoI, 4).Value = Worksheets("Tabelle2").Cells(LoI, 4).Value
Gruss Adis

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige