質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Q&A

解決済

5回答

996閲覧

[01][03]とセルが2つの検索方法の調査方法を知りたい

ma2hiro

総合スコア159

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

0グッド

0クリップ

投稿2021/04/06 09:41

編集2021/04/16 05:10

お世話になっております。

excelは初心者のため基本的な質問失礼いいたします。

2つのセル[01][03]がありテーブルのシート内で[01][03]を検索したい場合は
excelではどのようにすれば良いのか調査方法をご助力頂けないでしょうか????

なんかそのままCtrl+Fでやっても2つのセルの並びでは検索出来なさそうなのです……

VBAでやっても良い気がしますがもしかして簡単な方法があるかもと思い
上記お問い合わせいたします。

何かご存知な方はコメント頂けますようお願い申し上げます。

【追記】

【シートA】

店所 事業 場所 01   01  東京 01   02  お台場 02   01  大阪 :

と【シートB】

社員番号 店所 事業 氏名 0000   01  01  ほげ太郎 0123 02 01 ふが美

とのデータを整形して【シートC】

社員番号 場所    氏名 0000 【前のFocus】 ほげ太郎 0123 【フォーカス】 ふが美

とのデータを作成しようとしております。

【フォーカス】部分にフォーカスがある場合どのような
式になるか伺ってよろしいでしょうか?

使用する関数等ご助力頂ければ幸いです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答5

0

質問文がよくわからないのでまとはずれでしたらすみません。

まず「店所」でヒットするかどうか(0か1か)を空いたセルに計算します。例えば「01」なら東京とお台場はヒットします(1)が大阪はヒットしません(0)。

次に「事業」でヒットするかどうか(上記と同じ)を空いたセルに計算します。例えば「01」なら東京と大阪はヒットしますがお台場はヒットしません。

さらに、「店所」でヒットしたかどうかと「事業」でヒットしたかどうかを掛け算します。そうすると「店所」が「01」かつ「事業」が「01」のものは東京だけとなります。

また、この方法は配列数式を使えば1つのセルで計算できます。

投稿2021/04/19 16:02

vann_2921

総合スコア190

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ma2hiro

2021/04/20 00:34

vann_2921さん コメントありがとうございます。 ``` ユーザー 場所 ほげ太郎 【Focusココ】 ``` ``` 店所 事業 場所 01  01 東京 ``` ``` ユーザー 店所 事業 ほげ太郎 01   01 ``` との3つの表があった場合で【Focusココ】にある場合に 【東京】としたいので仰っている事を参考にさせて頂きます。 コメントありがとうございました。
guest

0

ベストアンサー

質問からシートBが複数行あることは分かりませんでしたので、一人の場所を絞り出すやり方のみ説明しました。手掛かりとしては、COUNTIF関数、MATCH関数とINDEX関数の連携ですので、創意工夫してみてください。
INDEX+MATCH関数で複数条件にANDで一致したデータを抜き出す方法が参考になると思います。

投稿2021/04/16 05:55

seastar3

総合スコア2285

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ma2hiro

2021/04/19 01:24

seastar3様 本当に度々ありがとうございます。 質問が稚拙で大変失礼しました。 紹介していただいたURLを参考にしてやってみようと思います。 コメントありがとうございました。
ma2hiro

2021/04/20 05:29 編集

seastar3様 ご紹介された参考URLの通りにやってみようと実装していましたが 一点のみどうしても解決出来ない事があるため伺ってよろしいでしょうか? ``` {=MATCH("01"&"02",シートA!B:B&シートA!C:C,0)} ``` の値は取得出来たので ``` {=MATCH(G9&H9,シートA!B:B&シートA!C:C,0)} ``` とすると【#N/A】となってしまいました…… シートの値を指定するにはMATCHの&では”G9”などと指定出来ないのでしょうか? 何という語句でググれば良いのか不明なためご助力頂ければ幸いです。 あとコチラが解決すれば出来そうなのです…… もしよろしければご返答頂ければ幸いです。
ma2hiro

2021/04/20 05:45

と思いましたが表の方の値がない部分を参照にしていただけのようです…… なんとか出来そうですっURLのご紹介ありがとうございましたっm(_ _)m
ma2hiro

2021/04/20 07:05

ちなみに ``` =INDEX(ma2事業所A!$D:$D,MATCH($G14&$H14,ma2事業所A!$B:$B&ma2事業所A!$C:$C,0),1) ``` みたいな感じでこのままだとN/Aと出るので セルをアクティブにして”Ctrl+Shift+Enter”で出来ましたっ 本当にありがとうございました。
guest

0

補足されたワークシートを元に自作のワークシートで検証してみました。
シートAのD2セルに

EXCEL

1=IF(COUNTIFS(A2,シートB!$B$2,B2,シートB!$C$2)>0,1,"")

といれ下の行に複写しておきます。
シートCのB2に

EXCEL

1=INDEX(シートA!$A$2:$D$11,MATCH(1,シートA!$D$2:$D$11,),3)

と入れてシートAの判定結果を参照すれば、最初に見つけた行の場所が取り出せるでしょう。
COUNTIF関数、MATCH関数とINDEX関数の連携などが有効です。

投稿2021/04/15 12:32

seastar3

総合スコア2285

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ma2hiro

2021/04/16 04:04

ありがとうございます。 出来ましたm(_ _)m COUNTIF関数、MATCH関数とINDEX関数を勉強して お伺いしないでも実装出来るようにします。
ma2hiro

2021/04/16 05:13

度々申し訳ございません。 解決かなと思っていたのですが =INDEX(シートA!$A$2:$D$11,MATCH(1,シートA!$D$2:$D$11,),3)                    ↑ ということでTOPに記載したように ほげ太郎だけではなく ふが美とした場合にも 大阪ではなく東京となってしまいます…… こちらを回避する方法は何か良い方法は無いのでしょうか? 本当に申し訳ないのですが上記お問い合わせいたします。
guest

0

指定条件をあるセルに抽出しておいて、
各データの端に

EXCEL

1=if(countifs(確認する範囲1,指定条件セル1,確認する範囲2,指定条件セル1 ・・・)>0,1,””)

と設定しておき、このセルが1のレコードを抽出する手法はどうでしょうか。
また指定条件がORの場合には、

EXCEL

1 countifs(確認する範囲1,指定条件セル1)+countifs(確認する範囲2,指定条件セル2)>0

とすることで、該当行が浮かび上がります。

投稿2021/04/08 02:54

編集2021/04/08 06:20
seastar3

総合スコア2285

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ma2hiro

2021/04/15 08:17

seastar3様 countifsの情報ありがとうございます。 こちらを用いてどうにかやってみようと四苦八苦したのですが 上手く出来ませんでした…… TOPに【追記】しましたが ```シートA 店所 事業 場所 01   01  東京 01   02  お台場 02   01  大阪 : ```` ```シートB 社員番号 店所 事業 氏名 0000   01  01  ほげ太郎 ``` とのデータを整形して ```シートC 社員番号 場所    氏名 0000 【フォーカス】 ほげ太郎 ``` とのデータを作成しようとしております。 countifsを用いて出来るのでしょうか? 本当に大変申し訳無いのですが上記ご助力頂ければ幸いです。
ma2hiro

2021/04/15 08:57

シートC に 店所 事業 の列を追加して =VLOOKUP(F3:G3,シートA!B:D,3) とVlookupで↑↑↑と店所 事業 とやって 場所を特定しようとしても 駄目だったので今回質問を作成しました…… countifsが使えそうなのですが使い方がイマイチ不明なのですが もう少しググって調べますっ
guest

0

フィルター機能で、複数の列で一致する値を指定すれば絞り込まれます。
フィルター機能を使うためには、結合セルがないことと、1行目に列名を設定する必要があります。

投稿2021/04/06 12:19

編集2021/04/07 01:32
seastar3

総合スコア2285

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ma2hiro

2021/04/07 07:13

seastar3様 コメントありがとうございます。 検索して出てきたものを表を用いて置換したいので フィルター機能でのは使えないのです…… 説明不足失礼しました。 うーん そういったのはexcelで無いのかな……
warabimochi

2021/04/10 11:28

一応フィルター掛かっている状態での一括置換は可能です。 「検索して出てきたものを表を用いて置換したいので フィルター機能でのは使えない」とのことですが、具体的には置換文字自体は複数あるということですか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問