Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1308to1312
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

VBA: Mehrere If-Abfragen über Schleife?

VBA: Mehrere If-Abfragen über Schleife?
02.05.2013 13:03:18
Jana
Hi zusammen!
Ich habe (mal wieder) ein Problem und hoffe, dass ihr mir weiterhelfen könnt.
Ich habe zwei Tabellen:
Die obere Tabelle zeigt die verfügbaren Kapazitäten von vier Lagern, in die Produkte eingelagert werden können.
In der unteren Tabelle sind Liefermengen von Produkten dargestellt. Einige dieser Produkte müssen unbedingt an festgelegten Stellen gelagert werden (z.B. "Lagerstelle 1-2") und einige können flexibel gelagert werden (z.B. "Lagerstelle 1-3"). Lagerstelle 1-3 heißt dann, dass die Produkte in allen freien Kapazitäten der Lagerstellen 1-2 und Lagerstellen 2-3 gelagert werden können. Die flexiblen Produkte sind in der Tabelle so gestaffelt, dass zuerst die angeordnet sind, die an mehr als einer Lagerstelle gelagert werden können, dann kommen die für mehr als zwei Lagerstellen, usw..
Mein Vorgehen ist, dass ich erst die Produkte abarbeite, die an festen Lagerstellen gelagert werden und dann - falls noch Kapazität verfügbar ist - die flexiblen Produkte verteile.
Beispielhafte Struktur der Tabellen:
Lagerkapazität:
_______Produkt A | Produkt B
Lagerstelle 1-2 | 2 | 4
Lagerstelle 2-3 | 3 | 2
Lagerstelle 3-4 | 4 | 5
Lagerstelle 4-5 | 5 | 8
Liefermengen:
_______Produkt A | Produkt B
Fest:
Lagerstelle 1-2 | 0 | 0
Lagerstelle 2-3 | 0 | 0
Lagerstelle 3-4 | 0 | 0
Lagerstelle 4-5 | 0 | 0
Flexibel
(2 Lagerstellen):
Lagerstelle 1-3 | 0 | 0
Lagerstelle 2-4 | 0 | 0
Lagerstelle 3-5 | 0 | 0
(3 Lagerstellen):
Lagerstelle 1-4 | 0 | 0
Lagerstelle 2-5 | 0 | 0
(4 Lagerstellen):
Lagerstelle 1-5 | 4 | 1
Mein Problem hierbei:
Die flexiblen Produkte sollen, nach der Staffelung verteilt werden (erst alle für zwei, dann alle für drei mögliche Lagerstellen, usw.)
Beispiel für die Verteilung von 4 Stück von Produkt A, die in "Lagerstelle 1-5" gelagert werden können: Erst soll die größte noch verfügbare Kapazität "befüllt" werden. Für den Fall, dass zwei oder mehr Kapazitäten gleich sind, dann soll die Priorität der Kapazitätfüllung bei Lagerstelle 1-2 am höchsten sein und von da absteigend.
Ein Code für flexible Produkte für mögliche 3 Lagerstellen sieht bei mir so aus:

Dim rngFlex As Range, FLEX As Range, Anz&, zaehler&
Set FLEX = Range("G23:H25")
For Each rngFlex In FLEX
Anz = rngFlex
For zaehler = Anz To 0 Step -1
If rngFlex.Offset(-7, 7) > rngFlex.Offset(-8, 7) And rngFlex.Offset(-7, 7) > rngFlex.Offset(-9, 7) Then
If rngFlex.Offset(-7, 7) > 0 And rngFlex > 0 Then
rngFlex = rngFlex - 1
rngFlex.Offset(-7, 7) = rngFlex.Offset(-7, 7) - 1
End If
ElseIf rngFlex.Offset(-8, 7) >= rngFlex.Offset(-7, 7) And rngFlex.Offset(-8, 7) > rngFlex.Offset(-9, 7) Then
If rngFlex.Offset(-8, 7) > 0 And rngFlex > 0 Then
rngFlex = rng3 - 1
rngFlex.Offset(-8, 7) = rngFlex.Offset(-8, 7) - 1
End If
Else
If rngFlex.Offset(-9, 7) > 0 And rngFlex > 0 Then
rngFlex = rngFlex - 1
rngFlex.Offset(-9, 7) = rngFlex.Offset(-9, 7) - 1
End If
End If
Next
Next
Da ich irgendwann viele Zellen habe, die ich miteinander vergleichen muss, um erst die größte Kapazität zu ermitteln, wollte ich fragen, ob jemand von euch mir einen Tipp geben kann, wie man mein Problem möglichst "effektiv" lösen könnte.
Im Idelafall sollten in den Tabellen in den jeweiligen Zellen die alten durch die neuen Werte ersetzt werden.
Ich hoffe, dass ich mein Anliegen halbwegs verständlich rübergebracht habe und mir jemand weiterhelfen kann.
LG
Jana

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

Betreff
Datum
Anwender
Anzeige
AW: VBA: Mehrere If-Abfragen über Schleife?
02.05.2013 13:17:36
selli
hallo jana,
ich will dir ja nicht zu nahe treten, aber vielleicht sollte deine firma mal eine mark in eine vernünftige lagerverwaltungssoftware investieren.
du verlangst hier eine programmierung, die deine firma für kommerzielle zwecke nutzt.
das ist schon dreist.
gruß
selli

AW: VBA: Mehrere If-Abfragen über Schleife?
02.05.2013 13:27:51
Jana
Hallo selli,
meine Firma heißt Universität und mein derzeitiges Projekt ist eine Studienarbeit im Bereich Logistik!
Gruß
Jana

AW: VBA: Mehrere If-Abfragen über Schleife?
02.05.2013 13:36:32
selli
hallo jana,
dann, so solltest du hier hilfe bekommen, gibst du sicherlich dieses forum im quellennachweis deiner arbeit an, oder?
gruß
selli

Anzeige
AW: VBA: Mehrere If-Abfragen über Schleife?
02.05.2013 13:53:43
Jana
Hallo,
schon allein, weil ich auf herber.de einige Tips und Tricks zum Thema VBA durchgelesen habe, werde ich die Seite auch angeben. Ist zwar nur eine Studienarbeit, aber man weiß ja nie.
Trotzdem danke für den Hinweis :P
Gruß
Jana

Hier Der Link zum 1.Beitrag... kwT
02.05.2013 13:58:02
Matthias

der Link kann nicht ausgeführt werden oT
02.05.2013 14:10:13
Hajo_Zi

AW: VBA: Mehrere If-Abfragen über Schleife?
05.05.2013 16:38:18
Jana
Hey zusammen,
kann mir denn hierbei wirklich keiner weiterhelfen?
Ich bekomme mein Problem allein leider nicht gelöst.
Grüße
Jana
Anzeige

313 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige