• ベストアンサー

Excel 値の入っているものを抽出して連結

Excel2013を使用しています。 行に値の入っているセルのみを別セルにひとまとめにしたいのです。 イメージのBからE列の値をF列に抽出して連結させる関数をお教えください。

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

  • ベストアンサー
  • ushi2015
  • ベストアンサー率51% (241/468)
回答No.3

こんにちは ちょっと、適当ですが、 Function 連結(r As Range) As Variant   Dim i As Long   If r.Rows.Count = 1 Then     For i = 1 To r.Columns.Count       連結 = 連結 & r(i).Value     Next   End If End Function こんな感じのユーザー定義関数を作って、セットして引数に1行分のセル範囲を 設定して、下方にフィルコピーなんて、どうですか?

utdx019
質問者

お礼

ushi2015さん、ありがとうございました。 普段利用しないユーザ定義関数の作成方法が少し難易度高かったですが、おかげさまでお教えいただいた方法で対応できました。 その他多くの方からご回答をいただき、合わせてお礼申し上げます。

その他の回答 (4)

  • bunjii
  • ベストアンサー率43% (3589/8248)
回答No.5

>イメージのBからE列の値をF列に抽出して連結させる関数をお教えください。 >列がサンプルイメージは4列程度ですが、実際は500列ぐらいあり、手動で設定するのは時間がかかりすぎます。 作業用Sheetを使用することをお薦めします。 提示のシート名をSheet1とし、作業用シート名をSheet2と仮定してSheet2!B2へ次の数式を設定します。 =A2&” "&Sheet1!B2 Sheet2!B2を右へ必要数コピーします。(提示画像のデータ範囲の場合はSheet2!E2セルまで) 尚、Sheet2!は行方向のコピーも必要かと思います。 Sheet2!B2セルをコピーでクリップボードへ記憶させて貼り付け先を一括で選択すれば一挙に貼り付けできますのでコピー&ペーストの労力は容易と思います。 次に、提示画像のデータ範囲の場合はSheet1!F2セルへ次の数式を設定します。 =SUBSTITUTE(TRIM(Sheet2!E2)," ",",") Sheet1!F2セルを下へ必要数コピーします。

utdx019
質問者

お礼

ありがとうございました。

  • mt2015
  • ベストアンサー率49% (258/524)
回答No.4

作業用シートを使うこんな方法は如何でしょう。 値の区切りには半角スペースを使います。 図を見てください。 Sheet2を作業用シートとして使います。 Sheet2のB2セルに以下の式を入れ、Sheet1のデータが入っている範囲(今回の場合B2:E4)にコピーします。 =A2&" "&Sheet1!B2 準備ができたら今度はSheet1です。F2セルに以下の式を入れ、下にコピーします。 =TRIM(Sheet2!E2)

utdx019
質問者

お礼

ありがとうございました。

  • OKWavex
  • ベストアンサー率22% (1222/5383)
回答No.2

1列だけをセルに&の計算式を入れて、そのセルを列の分だけコピー 空白分は後から結果文字列を編集して空白を除く式を入れればいい

utdx019
質問者

お礼

ありがとうございました。

  • ushi2015
  • ベストアンサー率51% (241/468)
回答No.1

こんにちは 普通に、F2に =B2&C2&D2&E2 でいいのでは?

utdx019
質問者

お礼

早速ご回答をいただきお礼申し上げます。 気付きませんでした、たしかに&で連結できますね。 列がサンプルイメージは4列程度ですが、実際は500列ぐらいあり、手動で設定するのは時間がかかりすぎます。範囲指定ができて、空白を除いて連結できる方法はないでしょうか。 よろしくお願いいたします。

関連するQ&A

  • エクセル連結解除時、全てのセルに値

    エクセルでの質問です。 複数の連結セルがあり、それぞれ別の値が入っています。 その複数の連結セルを一括で全て連結解除した際、空白セルが出来ないように連結解除する方法はありますか。 つまりAという値が入っていた結合セル(5行×1列)には、連結解除で5行×1列全てにAという値が、Bという値が入っていた結合セル(8行×1列)には、連結解除で8行×1列全てにBという値がはいるようにしたいです。 条件は列は1列で同じ列です。 行は連結セルによって、5行だったり12行だったりまちまちです。これらを一気に連結解除し、全ての セルに値を入れたいです。 確か以前に出来たと思うのですが、どうしてもやり方が思い出せません。 確か連結解除した後にジャンプ→セル選択だったような。ここからが思い出せません。 どうかよろしくお願いします。

  • エクセルで数字が入ったセルの値を抽出

    任意1行中のある1列にFALSEと1列だけ数字が入っています(下図参照)。その数字を抽出する関数があれば教えて下さい。 下図の例では、Fの列にB2:E2の範囲の数字「10」を抽出したいのです。マクロを組めば可能なのですが、セルに入力する関数等で簡単に実現できればと思います。 アドバイス宜しくお願いします。

  • excelのデータ抽出

    縦軸の条件と横軸の条件からデータを抽出する方法を教えてください。 以下のような表があります。    A  B   C   D   E  ・・・・ 1    0.5  2.5  3.1  5.5 2 40   2  5   10  3 3 55 4 35 1行およびA列の値を別セルに入力して、クロスするデータを出したいのですが、例えば別セル(1)に40と入力し別セル(2)に5.5と入力すれば、別セル(3)に3と抽出したいです。 また、出来れば別セル(2)に入力する値が表にない場合、入力した値より大きな値で一番近い値を読み取れればベストなんですか。 例えば別セル(2)に5.4と入力した場合には5.5の列を抽出 なにか良い方法はありますか? よろしくお願い致します。

  • エクセルにバーコード出力

    以下の様なリストを作成し、別シートのA1セルに、バーコードで"11"と読み込むと 同じA1セルに"E"を表示することは可能でしょうか? (同様に"22"と読み込むと"F"を表示、"33"を読み込むと"G"を表示) 別セルに表示することは出来ますが、同じセルに表示をすることに困っています。 名前の管理・関数などを応用したやり方があると助かります。 (マクロやアクセスは使ったことがありませんので) 【リスト】    A列 B列 1行 11  E 2行 22  F 3行 33  G ※Excel2010を使用 よろしくお願いします。

  • エクセルで、データのある行だけを抽出したい。

    エクセルのSheet1にデータが入っており、セルが空白でない行のデータのみを、Sheet2に抽出したいと思っています。 Sheet2にあらかじめ関数を入れておく方法にしたいため、関数について教えてください。 タイムテーブルで予定を管理するような表で、A~Hまでにデータが入っています。 予定を入れる際にはE列には必ず入力をするため、E列が空白でない行のみを抽出したいです。 A|B|C|D|E|F|G|H 月|日|時間|… 11|22|10:00|… 11|22|10:30|… 時間枠は10:00~17:00の30分刻みで、1日15行使用するので、1年で5475行まで使用します。 1行目はタイトル行なので、データは2行目から入力しています。 フィルタオプションで抽出する方法や、それをマクロで登録しておく方法は分かったのですが、あとから予定を追加することがあるため、マクロを実行する度にデータが置き換わると困ってしまいます。 また、抽出したSheet2のI列以降には備考などを入力したいため、やはり後から列がずれると困るため、A~H列に関数を入れておく方法で実行したいと思います。 よろしくお願いいたします。

  • EXCELで範囲内にある値を検索してA列の値を返す

    タイトル通りなのですが、OSはXPでEXCEL2000を使用しています。 シート内ですが 1.A列には文字列が入っています。200行まで空白は無いです。 1.B列からL列の200行までに数字がランダムに入っています。 2.数字は1~500までです。 3.行によってはL列まですべてのセルに値が入ってません。  数字の入っていないセルは空白です。 4.数字の重複はありません。 やりたいことは 別のシートのA列に1~500までの数字を入れ、B列に上記範囲の中からその数字を検索して、その行のA列の値を返したいのですが、出来ません。 どの関数を組み合わせれば出来るのでしょうか? vlookupの検索範囲は1列だけなのでダメでした。 よろしくお願いします。

  • excelで条件に一致するデータ全てを抽出する方法

    現在、エクセル2003を使用しています。 A列・B列・C列にデータが入力されています。 ただし、空白セル(空白行)もあります。 A列に“@Name”とデータ入力がある場合 同じ行のC列の値を抽出したいと思います。 A列に@Nameは複数ありますが、C列の値は それぞれ違いますので、データの集計先はF列に 全て抽出をしたい。 なにか良い方法(VBAや関数)がありましたら 教えてください。

  •  エクセル関数式により、ある値が二つの値の間にある条件の時に抜き出す方

     エクセル関数式により、ある値が二つの値の間にある条件の時に抜き出す方法。  初めまして。よろしくお願いします。  例) A B C D E F 1赤 2 5 1 2青 9 2 3 青 3黄 1 9 4 黄 4緑 3 4 2 5黒 8 4 9 6紺 2 5 4 紺 7橙 5 1 6 8 9  D列にある値がB列にある値とC列にある値の間に有る場合、A列に有る値をE列に抜き出す(例では2行目、3行目、6行目のDの値がBCの値の間に有るためにEのセルにAの値を表示される)関数式を教えていただきたく、よろしくお願いします。

  • Excel(2000)で行毎にセルをみて、値を返す

    例えば、以下のようなデータがあったとして、各行毎に左から見た結果、最初にデータがあったセルの列の1行のセルの値を各行のG列に返したい。 ______A__B__C__D__E__F__G__ 1行_ア__イ__ウ__エ__オ__カ____ 2行_1__3__5__2__4__1__ア__ 3行_____2__5__1__5__4__イ__ 4行_____________2__8__2__エ__ 5行_____2______2__1__4__イ__ 6行_________5______2______ウ__ G列に結果。 例えば、G3のセルに何らかの関数を入れて、A3~F3を左から見た結果、B3に2というデータがあるので、その列の1行であるB1の値、イをG3に返すといったないようです。 _ は、スペースをとるためのものです。 実際のデータは500行あり、各行の検索する列数は23列あります。 よろしくお願い致します。

  • 値の抽出

    Excelでマクロを使って値の抽出をしたいのですが、自分ではうまくいきません。どうかお力をお貸し下さい。 A1セル:品番 A2セル:DDH0020 A3セル:DDH0030 A4セル:DDH0040 A5セル:DDH0050 … A30セル:DDH0150 B1セル:品名 B2セル:ゴウハン 13*20.0X 56X807 U B3セル:ゴウハン 13 20.0X 56X845 U B4セル:ゴウハン 13 20.0X 85X1257 U B5セル:ゴウハン 13 20.0X 56X1280 U … B30セル:ゴウハン 13*20.0X 232X1897 U このような形で30行目まであります。 この内のB列の数字部分(2行目であれば)、20と56と807を抜き出し C2セル:20,D2セル:56,E2セル:807 (3行目であれば) C3セル:20,D3セル:56,E3セル:845 (4行目であれば) C4セル:20,D4セル:85,E4セル:1257 と表示させたいのです。 ご面倒おかけしますが、どうかご回答をお願いします。

専門家に質問してみよう