初めての質問です。
分かりにくかったら、聞いてください。
画像も添付しましたのでご参照ください。
以下質問です。
エクセルのデータが2つのSheetに存在しています。
SheetA 下記のようなデータ一覧が存在しているとします。
列A 列B 列C
NO. 地名 都道府県所在地
1 愛知 名古屋
2 大阪 大阪
3 福岡 福岡
・
・
・
また、SheetBにSheetAの列AのNO.の項目の一部のデータのみが
存在しています。
列A
NO.
3
・
・
SheetAのデータ一覧から、SheetBのNO.のデータ(行)のみを抽出して
SheetCへ出力したいのですが、どのような方法が考えられるでしょうか。
実際のデータは500くらいの商品データのエクセルが1つあり(上でいうSheetB)、
メーカの商品データ約20000のデータ(上でいうSheetA)の中から、価格などを
常にメンテナンスしないといけないのですが、弊社で取り扱っている商品は
決まっていて(SheetB)NO.データは存在しているので、20000データから
抽出して弊社用の500データに絞り込めれば、作業がとても楽になります。
今は、1品ごとに検索しながら抽出しています。
1人で経営している小さな個人商店なので、こんなことも出来ないのですが、
ご回答のほど、どうぞよろしくお願いいたします。
A 回答 (5件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
こちらはベストアンサー以外のアンサーですが、参考になると思います。
http://oshiete.goo.ne.jp/qa/4968820.html
No.2
- 回答日時:
まず、SheetA、Bともに、A列のデータが数字であること、昇順で並んでいることが条件になります。
文字も混在していたり、並び方がランダムでも可能な方法はありますが、少し面倒になりますので、まずは今回の方法を理解されてから、色々とお調べになる方が理解しやすいと思います。
SheetCのA列にはSheetBのA列を参照します。「=Sheet2!A2」という数式をA2セルに入力するかマウスで指定するかして、ドラッグすると楽でしょうね。
SheetCのB列以降は、A列を検査値としてVLOOKUP関数で導出します。
B列には、=VLOOKUP(A2,Sheet1!A:C,2,FALSE)
C列には、=VLOOKUP(A2,Sheet1!A:C,3,FALSE)
と入力してみてください。
関数そのものの意味とか、それぞれの項目の意味は、VLOOLUPで検索されると、分かりやすいHPが色々と出てくると思います。意味が分からないと間違ったことをしてしまいがちですから、その点はご注意ください。
SheetAに入るべきデータが変わった時には、SheetAだけにデータを貼りつけると、関数などは変えなくても、変更後のデータを抽出します。
ただ、SheetCのデータを、他に色々と使われるなら、別のシートかファイルに値に直して貼り付けておく方が、サイズも小さくて扱いやすいですし、間違った処理をすることもないと思います。
No.3
- 回答日時:
シートAでは1行目に項目名が有り2行目から下方にデータが入力されているとします。
シートBの1行目はシートAと同じ項目名が入力されているとします。項目名は必ず入力してください。
B2セルには次の式を入力して右横方向にオートフィルドラッグしたのちに下方向にもオートフィルドラッグコピーします。
=IF(OR($A2="",B$1=""),"",IF(COUNTIF(SheetA!$A:$A,$A2)=0,"",IF(VLOOKUP($A2,SheetA!$A:$X,COLUMN(B2),FALSE)=0,"",VLOOKUP($A2,SheetA!$A:$X,COLUMN(B2),FALSE))))
No.5
- 回答日時:
SheetAやSheetBのデータを変更する際に、セルの切取りや削除、挿入、貼付けを行っても作動不良とはならず、且つ、SheetBのA列に入力されているものと同じデータが、SheetAのA列の中に存在しない場合には、「該当無し」と表示する方法です。
今仮に、「NO.」と入力するセルが、どのシートにおいてもA1セルであるものとします。
まず、SheetCのA1セルに次の数式を入力して下さい。
=IF(INDEX(SheetB!$A:$A,ROWS($1:1))="","",IF(COUNTIF(SheetA!$A:$A,INDEX(SheetB!$A:$A,ROWS($1:1))),VLOOKUP(INDEX(SheetB!$A:$A,ROWS($1:1)),SheetA!$A:A,COLUMNS(SheetA!$A:A),FALSE),"該当無し"))
次に、SheetCのA1セルをコピーして、SheetCにおいてデータを表示させる全てのセルを含むのに充分なだけ広いセル範囲に貼り付けて下さい。(例えば、下の添付画像の場合は、SheetAに3列×10行目の範囲にデータがあるので、SheetCのA1~C10を上回る範囲に貼り付けて下さい)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelマクロ 差分抽出の方法が知りたいです。 2 2023/03/07 13:25
- Visual Basic(VBA) VBAで、1つのエクセルで、2つのシートからもう1つのシートに条件のある転記コードを教えてください。 1 2023/03/16 18:07
- Excel(エクセル) エクセルで沢山のレコードの最後に追記するには? 7 2023/04/10 13:27
- Excel(エクセル) VBAで同フォルダ内の別ブックを開かず参照して条件の一致する行の指定セルを抽出するには? 1 2022/07/21 19:29
- Excel(エクセル) VBAで、シート間の転記するコードを教えてください。 4 2023/03/26 10:43
- Excel(エクセル) 単価シートから単価をエクセル関数で自動取得する方法 1 2023/07/02 22:00
- Excel(エクセル) Excelの関数でこんな処理ができますか 1 2023/02/08 13:46
- Visual Basic(VBA) VBAで大量データの処理 3 2022/11/15 21:53
- Excel(エクセル) Excelマクロの差分抽出のコードを教えていただきたいです。 2 2023/03/14 11:40
- Access(アクセス) Accessのクエリの結果を、既存のエクセルに追加したい 2 2022/07/31 22:44
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ITに関して無知で少し気になる...
-
情報技術系の23歳の専門1年です...
-
何で素晴らしくコーディング能...
-
(SIer志望)入社後の「研修」に...
-
動画クリエイターからシステム...
-
SESでハズレ現場を引いた場合 S...
-
なぜシステムエンジニアたちは...
-
(長文・工学部)院進か就職か
-
データサイエンティストとwebエ...
-
大手テクノロジー企業で働いて...
-
データサイエンス職で、メガベ...
-
システムの自動マクロってどん...
-
就職について
-
システムでエンジニアの仕事を...
-
システム開発やDX推進を前職で...
-
なぜ誰でもできるプログラマー...
-
職業が フリーランスIT系(顧客...
-
データサイエンティストは高学...
-
未経験エンジニアの年収
-
「テザリング」の意味を素人に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
システムエンジニアの仕事でSES...
-
現在、夜中の3時。俺が働いてい...
-
なんでこんな事も知らないの攻...
-
「テザリング」の意味を素人に...
-
業務知識どうやって吸収してい...
-
エンジニアの方に質問です。 自...
-
情報技術系の23歳の専門1年です...
-
なぜ誰でもできるプログラマー...
-
フロントエンドエンジニアが評...
-
営業職からIT業界に転職
-
未経験エンジニアの年収
-
何で素晴らしくコーディング能...
-
なぜシステムエンジニアたちは...
-
SES企業の面談について
-
IT素人が全然関係ない部署から...
-
日東駒専レベルの大卒で 25歳、...
-
for文すら一年前に書けなかった...
-
AWSへの就職難易度は高いですか...
-
システムエンジニアとして期待...
-
システム開発やDX推進を前職で...
おすすめ情報