Wie verkettet man eine Zeichenfolge mit allen Zellen einer Spalte (direkt)?

Wie verkettet man eine Zeichenfolge mit allen Zellen einer Spalte (direkt)?

Ich möchte einfach allen Zellen einer Spalte etwas Text anhängen, dies jedoch gerne direkt tun, d. h. dieselbe Spalte mit den neuen Werten aktualisieren.

Wenn ich beispielsweise eine Spalte habe:

A
A
B

Ich möchte bekommen:

A
ein neuer
b neu

Ich weiß, dass ich dies in der ersten Zelle von B tun =A1&" new"und ziehen kann (und dann Spalte A mit den generierten Werten in Spalte B überschreibe). Aber wie gesagt, ich suche nach eineman Ort und StelleLösung, die keine Hilfsspalte verwendet und einfach Spalte A aktualisiert.

Suche vorzugsweise nach einer Lösung ohne VBA, aber das wäre auch akzeptabel.

Antwort1

Die einfachste Lösung wäre, eine neue Spalte mit Ihrer Formel zu erstellen =A1&" new"und sie über die alte Spalte zu kopieren und einzufügen. Sie können „Inhalte einfügen“ für Werte verwenden, um Formeln nicht zu überschreiben.

Die komplexere Lösung wäre die Verwendung eines VBA-Makros wie diesem:

Sub AppendToExistingOnLeft()
Dim c As Range
For Each c In Selection
  If c.Value <> "" Then c.Value = c.Value & " new"
Next
End Sub

Dieses VBA kann wie folgt verwendet werden:

  1. Wählen Sie den Bereich

  2. Halten Sie Alt+ gedrückt F11, um ein Microsoft Visual Basic-Fenster zu öffnen.

  3. KlickenEinfügen > Modulund fügen Sie den obigen VBA-Code in das Modulfenster ein

  4. Drücken Sie die Taste F5, um dieses Makro auszuführen.

verwandte Informationen