• ベストアンサー

CONCATENATE関数の使い方は?

複数の文字列を結合して 1 つの文字列にまとめるCONCATENATEについて。 下のようにA50セルまでをまとめたいのですが、いちいち全部のセル名を打ち込まなくてもよい簡単な方法をお教えください。よろしくおねがいします。 =concatenate(A1,A2,A3,A4,A5,A6,A7,...,A50)

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

  • ベストアンサー
  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.3

こんにちは。maruru01です。 No.1の方の指摘どおり、CONCATENATE関数の引数は最大30個までなので、 それ以上の場合は、「&」で繋げていくしかありません。 で、その場合の記述方法で、簡単かどうかは分かりませんが、以下のようなやり方があります。 データがA1~A50にあって、それを単純に連結するとします。 ・適当なセルに「A1」、その右隣りのセルに「A2」と入力する。 ・その2つのセルを選択して、オートフィルコピーで「A50」まで連続データを作成する。 ・その50個の範囲を選択して、コピーする。 ・適当なテキストエディタ(メモ帳でも可)に貼り付ける。 ・その貼り付けたデータをそのまま全選択してコピーする ・適当なセルをダブルクリックして(編集モードにして)貼り付ける。 ・すると半角スペースで区切られた1行のデータとして貼り付く。 ・このセルを選択して、メニューの[編集]→[置換]で、 [検索する文字列]:「 」(半角スペース) [置換後の文字列]:「&」 として、[全て置換]する。 ・すると、「A1&A2&・・・・・&A49&A50」となるので、先頭に「=」を付けて[Enter]する。 これで、そのセルに、 「=A1&A2&・・・・・&A49&A50」 という数式が入り、実際に連結された結果が表示されると思います。 やり方を飲み込めば、まともに数式を手打ちするよりは簡単かと思います。

grizzly
質問者

お礼

ありがとうございました。参考になりました。

その他の回答 (4)

noname#176215
noname#176215
回答No.5

漢字と数値以外なら PHONETIC関数が使えますが =PHONETIC(A1:A50) 数値は 入力前に表示形式を[文字列]にしていた場合は 表示されます。

grizzly
質問者

お礼

ありがとうございました。参考になりました。

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.4

concatenate関数は範囲指定をさせてくれないようです。 そんな使用は予想していないのでしょう。 そこでユーザー関数を作ります。数行です。 ファンクション名のconcは適当に付けられます。 Function conc(a) s = "" Dim cl As Range For Each cl In a s = s & cl Next conc = s End Function シートのメニューでツール-マクローVBEをクリックでVBE画面になります。 そこでメニューの挿入ー標準モジュールをクリックする。 右半分の一番大きい白紙の画面部分に上記をコピーし貼りつけする。 シートに戻りセルへ=conc(A1:A6)と入れる。 結合された文字列が出ます。

grizzly
質問者

お礼

ありがとうございました。参考になりました。

noname#176215
noname#176215
回答No.2

A1:A50 をコピーしてメモ帳に貼り付け タブを編集で取り除いてから 全選択してコピー どこぞのセルの 数式バーに貼り付け でいかがでしょう。さすがにリンクは切れますけど。

grizzly
質問者

お礼

ありがとうございました。参考になりました。

  • gloomie
  • ベストアンサー率16% (24/146)
回答No.1

自分が知る限りですが、無いように思います。 すべて1つずつ記入していくしかないのでは? あと、A1:A50までって書かれていますが、引数って30個までですよね・・・?(Excel2000) もし、作業列を作っていいのであれば下記の方法はいかがでしょう? B列を作業列とします。 B2に=A1&A2 B3に=B2&A3 B3のセルをB50までフィルドラッグ。 最終的にすべて結合された文字を表示したいセルに=B50 B列は見苦しいかと思いますので非表示にしておけばいいと思います。

grizzly
質問者

お礼

ありがとうございました。参考になりました。

関連するQ&A