ich suche nach einer Vereinfachung für eine Schleife.
Es gibt zwei Spalten mit Werten. In der Spalte A liegen Werte, die jeweils mit den Werten der Spalte B verglichen werden sollen.
Soweit wäre die Schleife:
do while cells(zeilenzähler1, spalteA)<>""
do while cells(zeilenzähler2, spalteB)<>""
if cells(zeilenzähler1, spalteA)=cells(zeilenzähler2,spalteB)
then ...
zeilenzähler2=zeilenzähler2+1
loop
zeilenzähler1=zeilenzähler1+1
loop
Nun soll in der Spalte B jedoch ein Untervergleich stattfinden.
Der erste Wert aus Spalte B, der kleiner ist als der Vergleichswert in Spalte A soll mit den übrigen Werten in Spalte B verglichen werden und die Summe der beiden Werte soll überprüft werden, ob sie = dem Wert aus Spalte A ist.
Die Schleife lautet also:
do while cells(zeilenzähler1, spalteA)<>""
do while cells(zeilenzähler2, spalteB)<>""
if cells(zeilenzähler1,spalteA)> cells(zeilenzähler2,spalteB) then
zeilenzähler3=zeilenzähler2+1
do while cells(zeilenzähler3, spalteB)<>""
if cells(zeilenzähler1, spalteA)= _
cells(zeilenzähler2,spalteB)+cells(zeilenzähler3,spalteB) _
then ...
zeilenzähler3=zeilenzähler3+1
loop
end if
zeilenzähler2=zeilenzähler2+1
loop
zeilenzähler1=zeilenzähler1+1
loop
Nun möchte ich in Spalte B jedoch weitere Untervergleiche anstellen, so dass nicht nur die Summe
zweier Werte sondern die Summe aus 3, 4 bzw. beliebig vieler mit dem Vergleichswert aus Spalte A verglichen werden.
Dafür würde jedoch die Verschachtelung immer tiefer werden und für jede Stufe käme eine do while...loop Schleife hinzu.
Bisher habe ich also für jede Stufe eine Subroutine geschrieben, die entsprechend der Suchtiefe entsprechend viele Schleifen enthält.
Hat jemand eine Idee, wie man den Code verändern könnte, um die Verschachtelungstiefe in einer einzigen Routine dynamisch zu gestalten ?
Also nach dem Muster:
for suchtiefe = 1 to AnzahlX
do while cells(zeilenzähler1, spalteA)<>""
[do while cells(zeilenzähler2,spalteB)]* Suchtiefe
Hoffe, ich konnte mich verständlich machen; wäre für jede Idee dankbar
Gruss
stefan