• ベストアンサー

abcの文字の間に;を入れたい。

abcの文字の間に;を入れたい。 何時間考えてもいい案が思い浮かばないので、 どなたかご教授をお願い致します。 下記のように別々のセルに入力しているabcの文字の間に;を入れ、 任意のセルにa;b;cのようにしたいのです。 A 1 a 2 b 3 c 宜しくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.3

C2=B2 C3=C2 & ";" & B3 でC3を下方にコピーすればD列は要りません。 マクロのユーザー定義関数を利用してもいいなら Function RENKETSU(HANI As Range, SP As String) As String '文字連結 Dim RG As Range, RS As String For Each RG In HANI If RG Is Not Null Then RS = RS & SP & RG Next RG RENKETSU = Mid(RS, 2, Len(RS) - 1) End Function と標準モジュールに記載して C2=RENKETSU(A2:A100,";") でA2:A100の範囲を;を区切りにして連結できます。

fujiyamato
質問者

お礼

ご回答ありがとうございました。 確かにD列は要りませんね。 マクロなのですが、知識がなくうまくいきませんでした。 私がmshr1962様のご回答通りにやってみた画像を QNo.5618124に添付致しましたので、どこがよくないのか もう一度教えていただけないでしょうか? 是非宜しくお願い致します。

その他の回答 (2)

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.2

例示のように実際のデータが本当に英文字なのでしょうか? また、結合するセル範囲は3つのセルだけでしょうか? 条件によって使える機能や数式などが違いますので、目的を含めてもう少し具体的に質問して下さい。

fujiyamato
質問者

補足

ご回答ありがとうございます。 補足させていただきます。 実際は文字列で「053477」「053478」などで、 結合するセル範囲は100件以上で、範囲はその都度変わります。 現在、下記のD1に=LOOKUP(10^10,A:A,D:D)と入力して求めています。 この方法でも解決できるのですが、もっと賢い方法があるはずだと悩んでおります。 A B C D 1 在庫番号 053477;053478;053479;053480 2 1 053477  053477 3 2 053478  ;053478 053477;053478 4 3 053479  ;053479 053477;053478;053479 5 4 053480  ;053480 053477;053478;053479;053480 ちなみに、 C2 =B2 C3 =";"&B3 C4以降はC3を下にコピーしていくだけです。 D3 =C2&C3 D4 =IF(B4="","",D3&C4) D5以降はC4を下にコピーしていくだけです。 D1に=LOOKUP(10^10,A:A,D:D)としたのは、 ネットで調べてマネしたため、どういう理屈かはわかりませんが、 A列が数値の場合、そのA列の一番下のセルと同じ行にあるD列のセル を表示できるようです。 大変わかりずらくて申し訳ありません。 回答に時間がかかるようでしたら、ご迷惑をお掛けしたくないので、 ご回答不要です。 もしすぐご回答いただけるようでしたら、よろしくお願い致します。

noname#106515
noname#106515
回答No.1

=A1&";"&A2&";"&A3

fujiyamato
質問者

補足

ご回答ありがとうございます。 MackyNo1様のご回答に補足を致しましたので、 すぐご回答いただけるようでしたら、よろしくお願い致します。 ご説明が不足して誠に申し訳ありませんでした。

関連するQ&A