Similarquestions zu diesem wurden gefragt, aber nicht genau so. Es gibt one das ist sehr nah, aber diese Lösung funktioniert nicht für mich.Excel SUMME Multiple-Kriterien Cell-Wert
Ich habe eine Funktion, die kommagetrennte Werte in eine Zelle zurückgibt. Ich würde gerne die Elemente in dieser Zelle als Kriterium an eine SUMIFS
Funktion übergeben, die einen solchen Ansatz verwendet one.
Mein Versuch ist unten dargestellt:
Ich glaube, dass dies irgendwie mit der Art und Weise verbunden ist, dass die Funktion zu verstehen, was in der Zelle G8 ist. Es sieht so aus, als würde es ein paar zusätzliche Zitate hinzufügen. Wenn ich G8 in der Bearbeitungsleiste und drücken Sie F9 markieren, die ich erhalten:
Es gibt zusätzliche Anführungszeichen auf jeder Seite der einzelnen Kriterien.
Ich bin offen für eine benutzerdefinierte VBA-Funktionslösung, aber ich würde etwas bevorzugen, das als eine Arbeitsblattfunktion erstellt werden kann. Die Kriterien werden von einer benutzerdefinierten VBA-Funktion zurückgegeben, die Elemente aus einem Listenfeld entfernt und einige Regex-Operationen ausführt, um zusätzliche Kommas zu entfernen. Die Anzahl der Elemente, die ausgewählt werden können, ist variabel. Daher möchte ich vermeiden, die Kriterien in mehr als eine Zelle aufteilen zu müssen. Vielen Dank.
Die Zeichenfolge '{" Dog "," Cat "}' ist ein _string_, kein Array. Das Übergeben einer Zeichenfolge, auch wenn sie einem Array ähnelt, ist immer noch eine Zeichenfolge und kein Array. Sie funktioniert also nicht. Sie sagen, Sie haben eine VBA-Funktion, die eine durch Kommas getrennte Liste in eine Zelle zurückgibt. Versuchen Sie, das zu ändern, um ein Array zurückzugeben, und rufen Sie es in Ihrer 'SUMIFS' Formel auf (Umgehen der Rückgabe der Liste an eine Zelle) –
Danke @chrisneilsen. Die Funktion, die ich verwende, ist ähnlich wie die in Beispiel 2 der Antwort [hier] (http://stackoverflow.com/questions/22542834/how-to-use-regular-expressions-regex-in-microsoft) -excel-beide-in-cell-and-loops). Ich habe versucht, dem Beispiel [hier] (http://stackoverflow.com/questions/1815980/excel-vba-function-returning-an-array) zu folgen, um eine Sammlung zurückzugeben, aber ich bekomme einen Fehler für "Argument nicht optional" auf meiner Ausgabe. Irgendwelche Gedanken darüber, wie ich sicherstellen kann, dass meine Funktion das Array wie gewünscht zurückgibt? –
Wenn Sie den Code und eine Beschreibung von dem, was Sie möchten, die Funktion zu de kann ich helfen –