Ich habe folgendes Problem: ich möchte dass Excel über eine Array Formel mit Summe und 3 Wenn Kriterien einen Wert zieht (was eigentlich eh unproblematisch ist). Da es sich aber um viele Tabellenblätter handelt und dies laufend aktualiesiert werden muss (der Rechner aber nicht sehr stark ist und daher ewig zum Berechnen der Arrays braucht) wollte ich ein Makro schreiben, welches immer den Wert kopiert wenn neue Daten eingegeben wurden.
Von dem Verweis auf andere Arbeitsmappen weiß ich dass ich ["&Name&"]Arbeitsmappe! zum verweisen verwenden kann (wo Name as string und Arbeitsmappe ist eine schon eingegebene Bezeichnung derselben (daher nur Name variabel).
Wenn ich nun den Bezug auf "&Name&"! wo Name as string und Name=Bezeichnung des Arbeitsblattes meldet Excel dass es das Zeilenende erwartet, wenn ich nur Name! verwende kann Array Eigenschaft für Range-Objekt nicht festgelegt werden.
Das Programm sieht so aus:
wobei J, M für eine Zahl stehen, l für einen Numeraire
Sub Tage()
Dim l As Single, J As String, M As String
Dim blatt As String
Worksheets("elT").Activate
l = 1
Do Until l + 1 > 85
If Cells(l + 1, 1).Value Selection.FormulaArray = "=SUM(IF((TEXT(A2;0)=Blatt!4:4)*(TEXT(B2;0)=Blatt!3:3)*(1=Blatt!106: _
106);Blatt!2:2))"
Cells(1 + l, 3).Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Loop
End Sub