2016-07-03 10 views
-1

In Excel habe ich zwei Spalten A, B, C, D und E. In jeder Zeile der Spalte A gibt es einen Absatz. In den Spalten B, C, D und E gibt es vier verschiedene Wörter vor jeder Zelle der Spalte A. Ich möchte diese vier verschiedenen Wörter, die in den Spalten B, C, D und E stehen, in den in der Spalte vorhandenen Absatz einfügen Eine Zelle. Aber alle diese vier Wörter sollten gleichmäßig im gesamten Absatz verteilt sein. Zum Beispiel sollte 1 Wort am Anfang des Absatzes stehen. Und der Rest der drei Wörter sollte gleichmäßig im gesamten Absatz verteilt sein.Einfügen eines Wortes in Excel-Zelle an der angegebenen Position

Ich habe die führenden und nachgestellten Leerzeichen entfernt, indem ich "TRIM" -Funktion angewendet habe. Der Absatz besteht aus mehreren Zeilen mit Zeilenumbrüchen und mehreren Unterabsätzen.

Hinweis: Wenn die Lösung für eine größere Anzahl von Wörtern, z. B. 7,8 oder 9 Wörter, flexibel ist, wird es großartig.

+1

Können Sie einige Code schreiben? Sie scheinen bereits eine Lösung gefunden zu haben, indem Sie Ihre Formeln/VB-Code (welcher ist es überhaupt) veröffentlichen, damit die Leute Ihre Frage schneller beantworten können. –

+0

bitte rede, mit mehr Detail und Präzision, deine Frage. Derzeit ist es nicht verständlich. Sie sagen, Sie haben "zwei Spalten" (?) Mit "vier verschiedenen Wörtern vor jeder Zelle der Spalte A" (?) Sie möchten die vier "Wörter gleichmäßig verteilt" (?) Und bitte einige Beispiele. Und dein Code versucht es. –

+0

Ich möchte meine Frage auf andere Weise ändern. In Excel habe ich zwei Spalten A und B. In jeder Zelle der Spalte A gibt es einen Absatz. In Spalte B enthält jede Zelle ein bestimmtes Wort. Ich möchte dieses Wort in Spalte B verwenden und in den Absatz in Spalte A nach 50 Wörtern in diesem Absatz in Spalte A einfügen. Wie kann ich das tun? Hinweis: Ich möchte dieses Problem durch eine Formel oder Funktion lösen. Danach ziehe ich diese Formel in der Excel-Spalte nach unten. – sam

Antwort

0

Der folgende Code könnte helfen. Dies ist ein UDF.

Function InsertWord(Source As String, InsWord As String, Pos As Integer) 
    Dim arr() As String 
    arr = Split(Source, " ") 
    wordCount = UBound(arr) 
    If wordCount < 1 Or (Pos - 1) > wordCount Or Pos < 0 Then 
     InsertWord = Source 
    Else 
     arr(Pos - 1) = arr(Pos - 1) & " " & InsWord 
     InsertWord = Join(arr, " ") 
    End If 
End Function 

Siehe Bild als Referenz:

enter image description here

Verwandte Themen