ich habe ein Problem bezüglich der Addition von Werten aus einer Spalte.
Zuvor aber noch meine Problembeschreibung:
Ich habe 2 Tabellen (Tabelle1 und Tabelle3).
Die Struktur der Tabelle3 sieht wie folgendermaßen aus.
Fach1:
Spalte A: Person1
Spalte B: Person2
Spalte C: Person3
Spalte D: Person4
Fach2:
Spalte F: Person1
Spalte G: Person2
Spalte H: Person3
Spalte i: Person4
In Tabelle 3 können nun getrennt nach Personen die Werte eingegeben werden.
Die Tabelle 1 sieht wie folgt aus.
Spalte A: Person1
Spalte B: Person2
Spalte C: Person3
Spalte D: Person4
Ich möchte nun mittels VBA alle Werte von Person1 aus Tabelle3 in die Spalte A der Tabelle 1 kopieren. Soweit funktioniert noch alles wunderbar mittels folgendem Code:
Dim quelle As String
Dim ziel As String
quelle = "Tabelle3"
ziel = "Tabelle1"
Dim person1 As String 'erste leere Zeile ermitteln
Worksheets(quelle).Range("A3:A2000").Copy Destination:=Worksheets(ziel).Range("A2")
person1 = Sheets(ziel).Range("A65536").End(xlUp).Row + 1
Worksheets(quelle).Range("E3:E2000").Copy Destination:=Worksheets(ziel).Range("A" & person1)
person1 = Sheets(ziel).Range("A65536").End(xlUp).Row + 1
Worksheets(quelle).Range("i3:i2000").Copy Destination:=Worksheets(ziel).Range("A" & person1)
Nun kommt aber mein Problem. Ich habe in Tabelle1 lediglich 40 Zeilen zur Verfügung. Also muss ich schauen, dass diese 40 Zeilen durch das Kopieren nicht überschritten werden.
Meine Idee ist nun, dass ich mittels VBA prüfe, ob ich bereits in Zeile 40 auf der Tabelle1 bin und wenn ja, die restlichen Werte aus Tabelle3 addiere und in Zeile 40 einfüge.
Eine Addition von Werten kann ich mittels
MsgBox WorksheetFunction.Sum(Tabelle3.Range("E4:E" & Sheets(ziel).Range("E65536").End(xlUp).Row)), , "Hinweis"
realisieren.
Jedoch weiß ich nicht, wie ich beim Kopiervorgang die Zeilen abfrage und die RESTLICHEN Werte kopiere. Kopiere ich jede Zelle für sich dauert es ewig und verbraucht wohl sehr viel Arbeitsspeicher.
Weiß jemand Rat?
Sinn und Zweck ist es, dass ich zwei Druckansichten habe. Einmal die Möglichkeit über mehrere Seiten zu drucken und einmal alles auf einer Seite vereint zu haben.
Vielen Dank.
Mfg. Andreas