Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Range in Sumproduct

Forumthread: Range in Sumproduct

Range in Sumproduct
17.01.2019 15:07:13
Alex
Hallo ich bins wieder, leider funktioniert mein Range nicht mehr, habe alles versucht, aber kriege es nicht hin.
in Excel wird diese Formel angezeigt und als wert steht #Name?. Wenn ich rngArea.Cells(lngRow; 1) mit dem Kriterium manuell ersetze, kommt das richtige Ergebnis.
=INDEX_
([M_.xlsm]MyTable!A1:AZ2000; SUMMENPRODUKT(([M_.xlsm]MyTable!A1:AZ2000=_
rngArea.Cells(lngRow; 1))*ZEILE([M_.xlsm]MyTable!1:2000));_
SUMMENPRODUKT(([M_.xlsm]MyTable!A1:AZ10="Kommentar")*SPALTE([M_.xlsm]MyTable!A1:AZ10)))      
das ist der Code in VBA
FoinKo = _
"=INDEX('[_XXX_]MyTable'!A1:AZ2000,SUMPRODUCT(('[_XXX_]MyTable'!A1:AZ2000=_YYY_)*ROW('[_XXX_] _
MyTable'!1:2000)),SUMPRODUCT(('[_XXX_]MyTable'!A1:AZ10=""Kommentar"")*COLUMN('[_XXX_]MyTable'!A1:AZ10)))"
BezZel = "rngArea.Cells(lngRow, 1)"
FoinKo = Replace(FoinKo, "_YYY_", BezZel)
FoinKo = Replace(FoinKo, "_XXX_", filename)

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Range in Sumproduct
17.01.2019 15:24:56
Daniel
Hi
innerhalb des Formeltextes musst du auch die Formeltypische Schreibweise für Zellbezüge verwenden und keinen VBA-Code.
Gruß Daniel
AW: Range in Sumproduct
17.01.2019 15:37:48
Alex
Wie mache ich das? rngArea.Cells(lngRow; 1) ist in Abhängigkeit der Filterung. rngArea.Cells(lngRow; 1) gib ja immer den richtig Wert aus, nur habe ich es nicht geschafft, diese in der Formel anzuwenden
With Sheets(1).UsedRange
Set rngFilter = .Offset(2, 1).Resize(.Rows.Count - 2, 1).SpecialCells(xlCellTypeVisible)
For Each rngArea In rngFilter
For lngRow = 1 To rngArea.Rows.Count
rngArea.Cells(lngRow, 1).Offset(0, SpaKo).Formula = FoinKo
Next lngRow
Next rngArea

Anzeige
AW: Range in Sumproduct
17.01.2019 15:56:09
Daniel
naja, wie bringt man variable Inhalte in VBA in einen Text ein?
"Fester Text Teil1" & Variable/Funktion & "FesterText Teil2"
oder über die von mir beschriebene Methode mit Dummy-Text und Replace
wobei du in diesem Fall noch entscheiden müsstest (bzw uns diese Entscheidung mitteilen), ob du jetzt den Wert aus der Zelle als festen Wert in die Formel einfügen willst oder den Zellbezug auf die Zelle.
wenn du den Zellbezug auf die Zelle in die Formel einfügen willst und es ein relativer bezug sein soll, würde ich dir grundsätzlich empfehlen, dir mal die Z1S1 bzw R1C1-Addressierungsart anzuschauen, denn damit lassen sich relative Zellbezüge einfacher beschreiben.
Gruß Daniel
Anzeige
AW: Range in Sumproduct
17.01.2019 16:07:16
Alex
Dein Hinweis auf die Excel Schreibweise, hat mich weiter gebracht. Warum auch immer dachte ich, dass Excel auch VBA Variablen erkennt ...
Jetzt scheint es zu funktionieren, alle Zellen kriegen die richtigen Bezüge. Vielen Dank!
FoinKo = "=INDEX('[_XXX_]MyTable'!A1:AZ2000,SUMPRODUCT(('[_XXX_]MyTable'!A1:AZ2000=YXYX)*ROW('[ _
_XXX_]MyTable'!1:2000)),SUMPRODUCT(('[_XXX_]MyTable'!A1:AZ10=""Kommentar"")*COLUMN('[_XXX_]MyTable'!A1:AZ10)))"
YYYY = rngArea.Cells(lngRow, 1).Address
FoinKo = Replace(FoinKo, "YXYX", YYYY)
FoinKo = Replace(FoinKo, "_XXX_", filename)

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige