Simulieren Sie die String-Split-Funktion in der Excel-Formel
Ich versuche, split einen string in einer excel-Formel, so etwas wie ich tun kann, in vielen Programmiersprachen, z.B.
string words = "some text".split(' ');
Das problem ist, dass ich nicht sicher sein kann, dass es mehr als ein Wort in der Zelle. Wenn ich versuche, die FIND()
oder SEARCH()
Funktionen, die Sie zurück #VALUE
wenn es nicht genug Platz. Gibt es eine einfache Möglichkeit, um split die Zeichenfolge, so dass es gibt die einzelnen Worte (oder gar besser, so dass es gibt entweder die ersten Wort oder alle anderen Worte)?
InformationsquelleAutor der Frage a_m0d | 2009-06-23
Du musst angemeldet sein, um einen Kommentar abzugeben.
Eine Formel ein, um entweder die erste Wort oder alle anderen Worte.
Beispiele und Ergebnisse
Kommentare Formel:
den ersten Platz
text zurückgegeben
verwendet, um wieder nach dem text
den ersten Platz
InformationsquelleAutor der Antwort Robert Mearns
Folgenden gibt das erste Wort in Zelle A1, wenn Sie durch Leerzeichen getrennt ein (funktioniert in Excel 2003):
InformationsquelleAutor der Antwort RobS
Dieser wird zunächst prüfen, ob die Zelle ein Leerzeichen enthält, wenn es tut, wird zurückkehren, der erste Wert aus dem Raum, sonst wird es wieder der Wert der Zelle.
Bearbeiten
Nur um die oben genannten Formel, wie es steht, wenn es keinen Wert in der Zelle würde es wieder 0. Wenn Sie schauen, um eine Meldung anzuzeigen, oder etwas zu sagen dem Benutzer, dass es leer ist, könnten Sie Folgendes verwenden:
InformationsquelleAutor der Antwort James
Diese Dinge sind in der Regel einfacher sein, wenn Sie schreiben Sie eine Zelle zu einem Zeitpunkt, zu brechen die langen Formeln bis in kleinere, denen Sie überprüfen können, die Ihnen auf dem Weg. Sie können dann verstecken Sie die Zwischenberechnungen, oder Rollen Sie Sie alle in einer einzigen Formel.
Beispielsweise unter James' Formel:
Die nur in Excel 2007 oder höher.
Brechen Sie wie folgt vor:
Es ist nur ein wenig leichter zu arbeiten, ein Stück zu einer Zeit. Sobald es fertig ist, können Sie es in
wenn Sie dies wünschen.
InformationsquelleAutor der Antwort Carl Manaster
Wenn Sie die Zuordnung zu den Spalten nur einmal die Antwort darauf ist der "Text in Spalten" - Funktion in MS Excel.
Finden Sie in der MS-Hilfe-Artikel hier:
http://support.microsoft.com/kb/214261
HTH
InformationsquelleAutor der Antwort Toffix
Markieren Sie die Zelle, verwenden Sie Dat => Text in Spalten und das TRENNZEICHEN ist ein Leerzeichen.
Ergebnis erscheint in so viele Spalten, wie die split finden den Raum.
InformationsquelleAutor der Antwort user4196835
Einige tolle Arbeitsblatt-fu in den anderen Antworten, aber ich glaube, Sie haben übersehen, dass Sie definieren eine benutzerdefinierte Funktion (udf) und rufen Sie diese aus dem Blatt oder eine Formel.
Das nächste problem, das Sie haben, ist zu entscheiden, ob Sie arbeiten mit einem ganzen array oder element.
Dies beispielsweise für die UDF-Funktion code
ermöglicht es, einzelne Elemente, die die folgende in einer Zelle
=UdfSplit("EUR/USD","/",0)
oder man kann einen der Blöcke von Zellen mit
=UdfSplit("EUR/USD","/")
InformationsquelleAutor der Antwort S Meaden