habe ein Problem in VBA. Ich habe eine Lagerverwaltung in Excel gebastelt.
Datei: Lieferschein.xls
Blatt: Lieferschein
Zellen: T19:V86 enthält gelieferte Positionen
T19:V19 = Überschrift: Artikelnummer, Bezeichnung, Menge
Datei: Bestand.xls
Blatt: Tabelle1
Spalte: i - enthält Summe aller Verkäufe je Artikelnummer (2532 Datensätze)
bisherige Berechnung mit Funktion "Summewenn" unter Bezug auf Historie-Datei
(Historie enthält alle einzelnen gelieferten Artikel - wird aber aufgrund der Datenmenge extrem langsam)
Also habe ich versucht innerhalb VBA die Verkäufe direkt zu berechnen. Den Profi's wird es jetzt grausen... aber ich lerne noch
'Hilfstabelle leeren
Windows("bestand.xls").Activate
Sheets("help").Select
Cells.Select
Selection.ClearContents
'Verkaufte Positionen kopieren und in Hilfstabelle übertragen
Windows("Lieferschein.xls").Activate
Sheets("lieferschein").Range("T19:V86").Select
Range(Selection, Selection.End(xlDown)).Copy
Windows("bestand.xls").Activate
Sheets("help").Select
Range("a1").Select
Selection.PasteSpecial Paste:=xlValues
Dim PosQ1
Dim Hlp As Worksheet, Art As Worksheet
Set Hlp = Sheets("Help")
Set Art = Sheets("Tabelle1")
'Lieferschein - 1.Artikelnummer suchen kopieren
Hlp.Select
zeile1 = 2
Do Until Hlp.Cells(zeile1, 1) = ("")
Hlp.Select
If Cells(zeile1, 1) "" Then
PosQ1 = Cells(zeile1, 1).Value
Cells(zeile1, 1).Copy
' in Bestandsliste wechseln und Artikelnummer suchen
Art.Select
Cells.Find(What:=PosQ1, After:=ActiveCell, LookIn:=xlFormulas _
, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False).Select
'in Zelle "Verkauf aktueller Monat" wechseln
ActiveCell.Offset(0, 8).Select
'Addition bisheriger Wert "Verkauf aktueller Monat" + Menge aus aktuellem Lieferschein (Hilfstabelle)
'
ActiveCell = ActiveCell.Value + Hlp.Cells(zeile1, 3).Value 'funktioniert nur innerhalb einer Datei
'
Else
Exit Sub
End If
'nächste Zeile verkaufte Artikel prüfen und berechnen
zeile1 = zeile1 + 1
Loop
Das ganze funktioniert aber nur wenn ich die gelieferten Artikel in die Bestandsdatei auf eine Hilfstabelle kopiere.
Jetzt nun meine Frage. Wie kann ich diese Berechnung ohne die Hilfstabelle durchführen - wie referenziere ich die Berechnung zwischen 2 verschiedenen Dateien.
Hoffentlich habe ich mich nicht zu kompliziert ausgedrückt.
Schon mal besten Dank im Voraus.
Gruss
Ralf