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

per Schleife Spalten nach einander durchgehen

per Schleife Spalten nach einander durchgehen
27.10.2005 17:23:31
M
Hi@all,
ich habe ein Frage, die Ihr bestimmt schnell lösen könnt, mich aber schon meine letzten Haare kostet...
Also ich muss per Schleife Zeilen durchsuchen das habe ich auch hinbekommen, nun muss das in einer äußeren Schleife aber auch die Spalten durchsuchen.
Also ich muss eine Spalte auswählen, dann zwei Zellen vergleichen und in eine dritte Zelle einen Wert schreiben. Da gibt es zwei unterschiedliche Fälle (plus und minus). Wenn das geschehen ist muss die nächste Spalte ran und so weiter.
Danke,
Euer Marcel
Dim i As Integer
For i = C To W
If Sheets("Vergleich").Cells(i + 2, 37) > Sheets("Vergleich").Cells(i + 2, 18) Then
Sheets("Vergleich").Cells(i + 2, 37).Font.ColorIndex = 4
Vergleich1
Else
Sheets("Vergleich").Cells(i + 2, 37).Font.ColorIndex = 3
Vergleich2
End If
Next
End Sub

Sub Vergleich1()
Dim r As Integer
Dim d As Integer
d = 17
For r = 3 To d
If Sheets("Vergleich").Range(i + 2 & r) < Sheets("Vergleich").Range(i + 2 & r + 19) Then
Sheets("Vergleich").Range(i + 2 & r + 39) = Sheets("Vergleich").Range("A" & r + 19)
End If
Next
End Sub


Sub Vergleich2()
Dim r As Integer
Dim d As Integer
d = 17
For r = 3 To d
If Sheets("Vergleich").Range("C" & r) > Sheets("Vergleich").Range("C" & r + 19) Then
Sheets("Vergleich").Range("C" & r + 39) = Sheets("Vergleich").Range("A" & r + 19)
End If
Next
End Sub

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: per Schleife Spalten nach einander durchgehen
27.10.2005 18:32:42
Franz
Hallo Marcel,
in deinem Code sind verschiedene Dinge nicht korrekt:
1. Beim Aufruf der Sub Vergleich1 muß du auch den parameter i übergeben, es sei denn du hast den irgenwo im Modul per Public als Variable deklariert.
2. in der Sub Vergleich1 sind die Adressen der zu vergleichenden Zellen falsch berechnet. Statt "Range" muß hier wohl jedes mal "Cells" stehen und das "&" ist durch ein "," zu ersetzen.
Du muß aber nochmals prüfen, ob so jeweils die korrekten Zelladressen berechnet werden.
so muß es dann etwa aussehen:

Sub vergleichen()
Dim i As Integer
C = 3 'testwert
W = 20 ' testwert
For i = C To W
If Sheets("Vergleich").Cells(i + 2, 37) > Sheets("Vergleich").Cells(i + 2, 18) Then
Sheets("Vergleich").Cells(i + 2, 37).Font.ColorIndex = 4
Call Vergleich1(i)
Else
Sheets("Vergleich").Cells(i + 2, 37).Font.ColorIndex = 3
Call Vergleich2
End If
Next
End Sub
Sub Vergleich1(i As Integer)
Dim r As Integer
Dim d As Integer
d = 17
For r = 3 To d
If Sheets("Vergleich").Cells(i + 2, r) < Sheets("Vergleich").Cells(i + 2, r + 19) Then
Sheets("Vergleich").Cells(i + 2, r + 39) = Sheets("Vergleich").Range("A" & r + 19)
End If
Next
End Sub
Sub Vergleich2()
Dim r As Integer
Dim d As Integer
d = 17
For r = 3 To d
If Sheets("Vergleich").Range("C" & r) > Sheets("Vergleich").Range("C" & r + 19) Then
Sheets("Vergleich").Range("C" & r + 39) = Sheets("Vergleich").Range("A" & r + 19)
End If
Next
End Sub

Gruß
Franz
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige