%3F.png)
列のすべてのセルにテキストを追加するだけですが、それをインプレースで実行したいと思います。つまり、同じ列を新しい値で更新します。
たとえば、次のような列があるとします。
あ |
---|
1つの |
b |
私は手に入れたい:
あ |
---|
新しい |
b 新しい |
Bの最初のセルでドラッグして実行できることはわかっています=A1&" new"
(その後、列Aを列Bで生成された値で上書きします)。しかし、私が探しているのは所定の位置に補助列を使用せず、単に列 A を更新するソリューション。
できれば VBA を使用しないソリューションを探していますが、VBA も受け入れられます。
答え1
最も簡単な解決策は、数式を使用して新しい列を作成し、それをコピーして古い列に貼り付けることです=A1&" new"
。数式を上書きしないようにするには、値の特殊貼り付けを使用できます。
複雑な解決策としては、次のような VBA マクロを使用することです。
Sub AppendToExistingOnLeft()
Dim c As Range
For Each c In Selection
If c.Value <> "" Then c.Value = c.Value & " new"
Next
End Sub
この VBA は次のように使用できます。
範囲を選択
Alt+キーを押したままにするF11と、Microsoft Visual Basic ウィンドウが開きます。
クリック挿入 > モジュール上記のVBAコードをモジュールウィンドウに貼り付けます
このマクロを実行するには F5 キーを押します。