Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1668to1672
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

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)

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

28 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige