[VBA] Formel verallgemeinern ?
#21
Hey,

umm. Wo genau bau ich deine Zeilen ein ... ? Huh
Top
#22
Modul 1 : löschen
Im Macromodul eines Arbeitsblattes.
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Top
#23
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! Smile

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:
Top
#24
vielleicht etwas in diese Richtung ... ?
(funktioniert aber so noch nicht  :22: )

Code:
Zellen = Range(Cells(2, Zelle.Column), Cells(7, Zelle.Column))
Top
#25
Auch wenn ich spamme - ich wollte euch mitteilen, dass ich es anscheinend gelöst habe:

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
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste