戻る  □VBAのサロン  □ 使用方法  □ 新着記事  □ 新規に質問する!  □ トピック一覧  □ 検索  □ 過去ログ
[ 最新記事及び返信フォームをトピックトップへ ]
このトピック参照回数 :
左端の列に同じ値が複数ある場合の値の抽出方法

    [132509] 左端の列に同じ値が複数ある場合の値の抽出方法-

    ■親トピック/記事引用/メール受信=OFF■

    □投稿者/ らいむ -(2021/07/24(01:17))
    □U R L/

      お世話になります。

      下記の様に、左端の列(A列)に
      同じ値が複数ある場合に
      隣の列(B列)の値(文字列)を
      別のシート(Sheet2)の
      1つのセル(A1)に抽出する方法を教えて下さい。

      【Sheet1】
      A  B
      1 あいうえお
      2 かきくけこ
      3 さしすせそ
      1 たちつてと
      2 なにぬねの




      【Sheet2】
         A     B
      1 あいうえお  1
        たちつてと

      2 かきくけこ  2
        なにぬねの




      Sheet2も一覧になっており
      文字列の入るセル(A列)の隣のセル(B列)に
      1〜連番で番号が入っています。
      また、Sheet1のセル毎に改行をして表示したいです。

      VLOOKUPだと最初の「あいうえお」しか書き出せず
      COUNTIF等使用して、色々試してみましたが
      上手くいきません。

      どちらも最大200行くらいの一覧になるため
      ハンドでの作業ではかなり厳しい状況です。

      どうかご教授をお願い致します。

      OS:Windows10
      EXCEL:2013


      ++++++++++++++++++++
      OS      ⇒OTHER
      Version⇒OTHER
      ++++++++++++++++++++




    [132510] Re[1]: 左端の列に同じ値が複数ある場合の値の抽出方法-

    記事引用/メール受信=OFF■

    □投稿者/ らいむ -(2021/07/24(02:18))
    □U R L/

      1点説明が不足していることに気付いた為
      追加で書かせていただきます。

      他の空白セルにA列の数字を入れて
      抽出する方法なら出来たのですが
      私以外の方も使用するため
      極力負担や間違いを防ぐ方法で
      出来たらと思っています。

      理想としては、Sheet1にデータを入れたら
      自動でSheet2に一覧で表示される様に
      したいです。

      わがままを言って申し訳ございませんが
      宜しくお願い致します。


      ++++++++++++++++++++
      OS      ⇒OTHER
      Version⇒OTHER
      ++++++++++++++++++++




    [132513] Re[2]: 左端の列に同じ値が複数ある場合の値の抽出方法-

    記事引用/メール受信=OFF■

    □投稿者/ 半平太 -(2021/07/24(11:59))
    □U R L/
      これって、もし「1」が3つあったら、B列の文字列を3つつなげる、4つなら4つつなげるってことですよね?
      
      お使いのバージョン(2013)では、数式の対応は厳しいものがあります。
      ユーザー定義関数(マクロベース)を検討された方がいいのではないですか?
      
      もし、2つまでしかないなら、数式でやってもいいですけども・・
      




    [132517] Re[3]: 左端の列に同じ値が複数ある場合の値の抽出方法-

    記事引用/メール受信=OFF■

    □投稿者/ Mike -(2021/07/24(15:41))
    □U R L/
      【お断り】Excel 2019 での結果を示しました。
      
      Sheet1
        A   B   C  D  E F   G     H     I   J K L   M     N     O   P
      1 1 あいうえお  1.001  1 あいうえお たちつてと        1 あいうえお たちつてと
      2 2 かきくけこ  2.002  2 かきくけこ なにぬねの        2 かきくけこ なにぬねの
      3 3 さしすせそ  3.003  3 さしすせそ              3 さしすせそ
      4 1 たちつてと  1.004                     4 はひふへほ やいゆえよ わゐうゑを
      5 2 なにぬねの  2.005                     5 まみむめも
      6 4 はひふへほ  4.006  4 はひふへほ やいゆえよ わゐうゑを   6 らりるれろ
      7 5 まみむめも  5.007  5 まみむめも
      8 4 やいゆえよ  4.008        
      9 6 らりるれろ  6.009  6 らりるれろ
      10 4 わゐうゑを  4.010
      
      Sheet2
       A   B
      1 1 あいうえお
        たちつてと
      2 2 かきくけこ
        なにぬねの
      3 3 さしすせそ
      4 4 はひふへほ
        やいゆえよ
        わゐうゑを
      5 5 まみむめも
      6 6 らりるれろ
      
      Sheet1 において、
      D1: =A1+ROW()/1000、下方に(10行目まで)オートフィル
      F1: =IF(COUNTIF(A$1:A1,A1)=1,A$1:A$10,"")
        下方に(10行目まで)オートフィル
      G1: =IFERROR(IF($F1="","",INDEX($B$1:$B$10,MATCH(SMALL(IF($A$1:$A$10=$A1,$D$1:$D$10),COLUMN(A1)),$D$1:$D$10,0))),"")
       ̄ ̄【お断わり】上式は必ず配列(CSE)数式とし、右方にJ列まで、下方に10行目までオートフィル
      L1: =IFERROR(SMALL(Sheet1!F$1:F$10,ROW(L1)),"")
        下方に(10行目まで)オートフィル
      M1: =INDEX(Sheet1!G$1:G$10,MATCH($L1,Sheet1!$F$1:$F$10,0))
        右方にP列まで、下方に10行目までオートフィル
      
      Sheet2 において、
      B1: =TEXTJOIN(CHAR(10),,Sheet1!M1:P1)
         “折り返して全体を表示する”に設定したセル B1 を下方にオートフィル



      ++++++++++++++++++++
      OS      ⇒OTHER
      Version⇒OTHER
      ++++++++++++++++++++




    [132518] Re[3]: 左端の列に同じ値が複数ある場合の値の抽出方法-

    記事引用/メール受信=OFF■

    □投稿者/ らいむ -(2021/07/24(22:53))
    □U R L/

      半平太 様

      いつもお世話になっております。

      まさにその通りになります。
      自宅のPCで現在使用しているEXCELが2013でした。
      実際使用する会社のPCは2016になりますので
      2016で使用出来る関数なら動かせるかもしれません。

      月曜日に会社のPCで試してみたいと思っております。
      ややこしくてすみません。




    [132519] Re[4]: 左端の列に同じ値が複数ある場合の値の抽出方法-

    記事引用/メール受信=OFF■

    □投稿者/ らいむ -(2021/07/24(22:57))
    □U R L/

      Mike 様

      ご丁寧にありがとうございます。

      自宅のPCのEXCEL2013で試してみたところ
      Sheet1の関数は全てうまくいきましたが
      Sheet2の関数がエラーなってしまうため
      月曜日に会社PCのEXCEL2016で試してみたいと思います。

      また何かございましたら、月曜以降にご教授願います。




    [132520] Re[5]: 左端の列に同じ値が複数ある場合の値の抽出方法-

    記事引用/メール受信=OFF■

    □投稿者/ Chiquilin -(2021/07/26(08:53))
    □U R L/

      Excel2016ならアドインしなくても PowerQueryが使えるはずです。
      いちいち全部数式でやろうとするから混乱するんでしょう。

      Sheet1の範囲に名前定義かテーブル書式設定を入れる
      [データ]→[テーブルまたは範囲から]で PowerQueryエディタを開く

      列1で グループ化(列名「グループ」操作「すべての行」)
      カスタム列追加「=Text.Combine([グループ][列2], "#(lf)")」
      いらない列を削除して 読み込み




    [132521] Re[6]: 左端の列に同じ値が複数ある場合の値の抽出方法-

    記事引用/メール受信=OFF■

    □投稿者/ らいむ -(2021/07/30(14:24))
    □U R L/

      Chiquilin 様

      ご教授ありがとうございます。

      そのような方法もあるのですね。
      勉強になります。

      今後その方法も試してみたいと思います。
      ありがとうございました。




    [132522] Re[7]: 左端の列に同じ値が複数ある場合の値の抽出方法-

    解決!!ありがとうございました! / 記事引用/メール受信=OFF■

    □投稿者/ らいむ -(2021/07/30(14:28))
    □U R L/

      半平太 様
      Mike 様

      ご連絡が遅くなりましたが
      なんとか会社のPCを使用して
      自分の望んだ結果を得ることが出来ました。

      実際の項目に合わせて、少し訂正は必要でしたが
      無事に完成しました。

      ご教授いただき、ありがとうございました。

      また、機会がございましたら、宜しくお願い致します。



このトピック内容の全ページ数 / [0]

このトピックに書きこむ
Name/
E-Mail/

└>このツリーのレス記事をメールで受信しますか? YES/ NO/
Title/
URL/
Comment/ 通常モード->  図表モード-> (←の場合適当に改行を入れて下さい)
タグが使用できます。例 ⇒ <font color="blue">文字</font>
解決!!ありがとうございました! 解決       保留中です・・・ 保留        迷宮入りorほかあたって見ます・・ 迷宮入       すいませ〜ん。誰か〜! Help! ←※回答者専用
解決したらチェック       保留(コードテスト中など・・)         解決不可orレスが全く付かなくてほかのサイトに行くときなど・・
削除キー/
(半角8文字以内) 


- Child Forum -
Edit:ゆう-G