06.12.2019, 10:18
06.12.2019, 11:08
Modul 1 : löschen
Im Macromodul eines Arbeitsblattes.
Im Macromodul eines Arbeitsblattes.
06.12.2019, 13:40
Ergibt für mich null Sinn!?
Wieso lösche ich mein Modul 1 und füge nur deine 2 Zeilen Code irgendwo ein?
Wenn ich in meinem Makro folgendes anpasse:
If GetDataClosedWB(Pfad, Dateiname, Blatt, Zellen, .Range(..)) Then
If GetDataClosedWB(Pfad, Dateiname, Blatt, Zellen, Zelle.Offset(11, 0)) Then
dann funktioniert es schon FAST!
Jetzt müßte ich noch festlegen, dass "Zellen" in Bezug auf die Lieferantendatei definiert wird.
Wenn also Spalte B auf den Lieferanten geprüft wird, ..
gehen wir davon aus "Zelle" wäre dann B
soll er Zellen =Zelle2:Zelle7 'B2:B7
Wenn Spalte C geprüft wird
Zellen = Zelle2:Zelle7 'C2:C7
etc.
:16:
Wieso lösche ich mein Modul 1 und füge nur deine 2 Zeilen Code irgendwo ein?
Wenn ich in meinem Makro folgendes anpasse:
If GetDataClosedWB(Pfad, Dateiname, Blatt, Zellen, .Range(..)) Then
If GetDataClosedWB(Pfad, Dateiname, Blatt, Zellen, Zelle.Offset(11, 0)) Then
dann funktioniert es schon FAST!
Jetzt müßte ich noch festlegen, dass "Zellen" in Bezug auf die Lieferantendatei definiert wird.
Wenn also Spalte B auf den Lieferanten geprüft wird, ..
Code:
Set Bereich = .Range("B2:M2")
For Each Zelle In Bereich
If Zelle.Text = "Lieferant1" Then
gehen wir davon aus "Zelle" wäre dann B
soll er Zellen =Zelle2:Zelle7 'B2:B7
Wenn Spalte C geprüft wird
Zellen = Zelle2:Zelle7 'C2:C7
etc.
:16:
06.12.2019, 14:36
vielleicht etwas in diese Richtung ... ?
(funktioniert aber so noch nicht :22: )
(funktioniert aber so noch nicht :22: )
Code:
Zellen = Range(Cells(2, Zelle.Column), Cells(7, Zelle.Column))
06.12.2019, 15:10
Auch wenn ich spamme - ich wollte euch mitteilen, dass ich es anscheinend gelöst habe:
Die Frage nun wäre noch, ob man mein Script optimieren / vereinfachen könnte.
Beispielsweise wäre es schön, wenn man nicht für jeden Lieferanten eine separate IF-Abfrage durchlaufen müßte, sondern er sich die Lieferanten aus einem Array (am liebsten aus einer Range) zieht und dann abgleicht.
Vielleicht kann hierbei geholfen werden?
Danke
Code:
Zellen = Range(Cells(2, Zelle.Column - 1), Cells(7, Zelle.Column - 1)).Address
Die Frage nun wäre noch, ob man mein Script optimieren / vereinfachen könnte.
Beispielsweise wäre es schön, wenn man nicht für jeden Lieferanten eine separate IF-Abfrage durchlaufen müßte, sondern er sich die Lieferanten aus einem Array (am liebsten aus einer Range) zieht und dann abgleicht.
Vielleicht kann hierbei geholfen werden?
Danke