sheet1のセルA列にB列とC列の値が当てはまった値を表示したいのですが。
-Sheet1-
A    B    C
P1   ピンク   大
P2   ピンク   小

範囲はSheet2のA列からC列です。
-Sheet2-
A   B   C
P1  ピンク  大
P2  ピンク  小
B1  ブルー  大
B2  ブルー  小

例えば、=Vlookup(A1,'sheet2!A:C,2,false) と Vlookup(A2,'sheet2!A:C,3,false) を合わせたい。

上手く説明出来ていませんが、宜しくお願い致します。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

質問の意味がわからないのですが、推測で回答します。



Sheet2を図のようにして

Sheet2には、例えばA1セルに
=B1&C1


Sheet1には、例えばA1セルに
 =VLOOKUP(B1&C1,Sheet2.$A$1:$D$4,4,FALSE)
「Vlookup複数検索」の回答画像1
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QGmailでの複数アカウント

教えてください。
Gmailで1つアカウント取得しました。
そのアカウントで複数のサブアド?を取得することはできるのでしょうか?

○○○@gmail.com
の場合
○○○.△△△@gmail.com

△△△.○○○@gmail.com
のような△△△の部分をつけて複数アドレスを作れる聞きました。

どうすればよろしいのでしょうか?教えてください。

どうぞよろしくお願いいたします。

Aベストアンサー

確かにその通りなのですが、あれはあまり意味がないのです。
何故意味がないかというと、
本来サブアドレスであれば、指定した文字列のアドレスへ送信しない限りメールを送信できないですね?
ところが、上記の場合、○○○であっても○○○.△△△であっても送信できてしまうので、例えばAさんに○○○.△△△のアドレスを教えたとしても、Aさんがこの仕組みを知っていて、○○○で送信してしまう事が起こりえるからなのです。
複数のアドレスが欲しいのなら、新たにGmailのアカウントを取得して下さい。通常利用の範囲内なら複数アカウントの取得はGoogle側でも認めています(サポートからの回答です)。

Q同一値集合ソースの複数コンボボックスでプルダウンメニューに既入力値を再表示させない

まだ6ヶ月程度のAccess初心者です。データ入力上の誤入力を避けたいのですが方法がわからず悩んでいます。初心者で、未だ基本的な理解ができていないためだと思いますが、どなたか解決法をご教授いただければありがたく存じます。
 1つのフォーム上に複数のコンボボックスを用意して、同じ値集合ソース(テーブル)を参照して入力をしようとしています。
 このとき、まず、コンボボックス1に、参照しているテーブルから”DATA1”という値を入力したとき、次のコンボボックス2のプルダウンメニューには、先の”DATA1”を表示しないように、SQLステートメント:クエリビルダの抽出条件を設定しようと考えています。
 このフォームにはコンボボックスを全部で4つ用意して、順次入力の都度、入力済みのデータはプルダウンメニューに表示しないようにし、重複を避けたいというのが目的です。
 
 コンボボックス2の値集合ソースとして設定する際に、SQLステートメント:クエリビルダの抽出条件に記載したものは次のようなものです。

<>[Forms]![フォーム1]![コンボボックス1]  And  <> [Forms]![フォーム1]![コンボボックス3]  And  <>[Forms]![フォーム1]![コンボボックス4]

 ほかのコンボボックス3~4にも、自分以外のコンボボックスと重複させないつもりで、それぞれ抽出条件を入力しました。

 さて、実際にこれで動かしてみると、1回目はうまくいって喜んだのですが、入力値をDeleteして再入力を試みたところ、リストボックスが何も表示されない状態になり、悩んでいます。
 何か設定上で不足している、あるいは論理上で考え違いをしているのだと思いますが、何とか解決したいと切に思っています。何卒よろしくお願いします。

まだ6ヶ月程度のAccess初心者です。データ入力上の誤入力を避けたいのですが方法がわからず悩んでいます。初心者で、未だ基本的な理解ができていないためだと思いますが、どなたか解決法をご教授いただければありがたく存じます。
 1つのフォーム上に複数のコンボボックスを用意して、同じ値集合ソース(テーブル)を参照して入力をしようとしています。
 このとき、まず、コンボボックス1に、参照しているテーブルから”DATA1”という値を入力したとき、次のコンボボックス2のプルダウンメニューには、先の...続きを読む

Aベストアンサー

[フィールド名]<>[Forms]![フォーム1]![コンボボックス1]
は、[コンボボックス1] が空白の場合に
True でも False でもなく Null になります。
Null と ある値の And 演算の結果は Null になります。
(VBE のヘルプで「And 演算子」を調べてください。)
よって、1つでも未入力のコンボボックスがあると
抽出条件に 「Null」 と書いたのと同じことになってしまいます。

これを回避するには、空白の場合に Null にならないように
Nz 関数を使います。

<>[Forms]![フォーム1]![コンボボックス1]

<>Nz([Forms]![フォーム1]![コンボボックス1] ,"")
のようにしてください。

Nz 関数についてもヘルプで調べてください。

なお、入力するたびに、コンボボックスのリストが変化するように、
下記のような、再クエリの処理が必要なのは、言うまでもありません。
念のため。

Private Sub コンボボックス1_Enter()
  Me.ActiveControl.Requery
End Sub

[フィールド名]<>[Forms]![フォーム1]![コンボボックス1]
は、[コンボボックス1] が空白の場合に
True でも False でもなく Null になります。
Null と ある値の And 演算の結果は Null になります。
(VBE のヘルプで「And 演算子」を調べてください。)
よって、1つでも未入力のコンボボックスがあると
抽出条件に 「Null」 と書いたのと同じことになってしまいます。

これを回避するには、空白の場合に Null にならないように
Nz 関数を使います。

<>[Forms]![フォーム1]![コンボボックス1...続きを読む

QGoogleChromeでのGmailの複数アカウント新着チェック

GoogleChromeでのGmailの複数アカウント新着チェック

FirefoxにはGmail Managerというアドオンがあり、Gmailの複数アカウントの新着メールをチェックする事ができますが、GoogleChromeにも複数アカウントをチェックできる拡張機能は存在するのでしょうか?Google Mail Checkerという拡張機能は見つけたのですが、どうやら一つのアカウントしかチェックできないようで…。ご存じの方おられましたら、よろしくお願い致します。

Aベストアンサー

#1です。

次は、Firefoxなどの内容について書込み内容のあるブログ(時々、自分勝手な内容有り)ですが、Chromeのマルチアカウントについての記事を紹介しています。
http://beau.g-com.ne.jp/mon-extension-memo10_07-4.html#memo10716b

これにると、6月14日の記事で、1つのウィンドウで複数のアカウントが使えるようGoogleがテスト中との内容がありますから、まだ未対応と思います。

なお、Ctrl+Shift+Nでのシークレットモードのウィンドウを別に開けば、可能なようです。

QVLOOKUP関数で条件に合う数値が複数ある場合

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

VLOOKUP関数で

        点数 名前
        50    A
        85    B
        50    C
        90    D
        50    E

のような場合、50点で表引きするとAしかとれません。
点数からひっぱりたく(点数、名前)で(名前、点数)の並びではありません。
このカテゴリの回答者の方には、いつも的確で助かっております。
仕事でまたまた詰まっています。
よろしくおねがいします。

Aベストアンサー

 今仮に、A1セルに「点数」、B1セルに「名前」と入力されていて、A2~A6に各点数が、B2~B6に各名前が入力されていて、
C1セルに点数を入力すると、
C2以下に、その点数の人の名前を並べて表示するものとします。

 その方法は、C2セルに次の数式を入力してから、C2セルをコピーして、C3以下に貼り付けて下さい。

=IF(ROWS($2:2)>COUNTIF($A:$A,$C$1),"",INDEX($B:$B,SUMPRODUCT(ROW($A$1:$A$6)*($A$1:$A$6=$C$1)*(COUNTIF(OFFSET($A$1,,,ROW($A$1:$A$6)-ROW($A$1)+1),$C$1)=ROWS($2:2)))))

 後は、C1セルに点数を入力すると、その点数と同じ行に入力されている名前が、C2以下の各セルに表示されます。

【例】
    A列  B列  C列
1行目  点数 名前  50
2行目  50  A  A
3行目  85  B  C
4行目  50  C  E
5行目  90  D
6行目  50  E

 今仮に、A1セルに「点数」、B1セルに「名前」と入力されていて、A2~A6に各点数が、B2~B6に各名前が入力されていて、
C1セルに点数を入力すると、
C2以下に、その点数の人の名前を並べて表示するものとします。

 その方法は、C2セルに次の数式を入力してから、C2セルをコピーして、C3以下に貼り付けて下さい。

=IF(ROWS($2:2)>COUNTIF($A:$A,$C$1),"",INDEX($B:$B,SUMPRODUCT(ROW($A$1:$A$6)*($A$1:$A$6=$C$1)*(COUNTIF(OFFSET($A$1,,,ROW($A$1:$A$6)-ROW($A$1)+1),$C$1)=ROWS($2:2)))))

 後は、C...続きを読む

QGmailの複数のアカウントを一括管理したい

Gmailのアカウントを複数もっていて、それを使い分けています。
Thunderbirdで読むときはすべてのアカウントを一括して送信日順などでソートして読めるのですが、iPhoneだとそうもいきません。

そこで、1つのGmailのアカウントに複数のGmailアカウントを受信するような方法はありませんか?

単純に転送させてもいいのですが、理想としては
例えばアカウント1、アカウント2、アカウント3があったとして、管理用アカウントAがあった場合、アカウントAでメールを読んで既読になったメールはアカウント1、2、3でもそれぞれ既読となるようにして欲しいのです。

このような管理は無理なのでしょうか?

Aベストアンサー

既成のソフトでは無理だと思います。
可能性があるとxしたら、全てのメールをIMAPで受信する方法ですけど、この場合、殆どのメールソフトはアカウント毎に受信トレイを作りますので。
かといってPOPで受信するのでは既読未読の制御ができないです。
あんまり欲張ると難しいと思います。
Thunderbirdで満足されているなら、Portable版をうまく使ったら良いのではないかと思います。

QSQLでの複数列が重複してる行の削除(SQLite)

こんにちは。
複数の列で重複した列がある場合の行削除のクエリが思い付きません。

A表 A    B   C   D
  ==== === === ====
1 ああああ 100 200 ABCD
2 いいいい 200  90 ASKB
3 うううう 300 800 ALTE
4 ええええ 400 200 ABCD

B表
  ==== === === ====
1 ああああ 100 200 ABCD
2 ああああ 400 100 ABCD

このとき、A表とB表を比較し、B,C,D列で重複したデータをB表から削除した行を表示したいのです。

ほしいデータは

B表
  ==== === === ====
2 ああああ 400 100 ABCD

です。よろしくお願いします。

Aベストアンサー

別解をひとつ提示。(ANo.1でもいけると思います)

select B表.*
from B表
where not exists (
select A表.*
from A表
where A表.B = B表.B and A表.C = B表.C and A表.D = B表.D
);

QGmailを通して複数のフリーメール(Yahoo!)アカウントを使用し

Gmailを通して複数のフリーメール(Yahoo!)アカウントを使用し、さらにそれをメールソフト(Thunderbird)で閲覧・送受信して使っています。
わざわざこうやっているのは、迷惑メールのフィルタがGmailの方が強力だからなのですが、ひとつよく分からないことがあります。

メーラーのGmailの中の迷惑メールフォルダをクリックすると、当然ながら迷惑メールを読み込み始めます。それをゴミ箱に移動し、さらにゴミ箱を空にすると、迷惑メールが完全に削除されるはずですよね。
ところが、メーラーの「送受信」を使って各アカウントのメールを全て受信すると数千という数の迷惑メールが受信されてしまいます。

一体どうやれば迷惑メールを完全削除できるのでしょうか。

Aベストアンサー

#2です。

>こういう設定であっても、メーラーから削除すればサーバーからも削除されると思ったのですが、どうも違うようですね。

Gmailの外部アカウントとして、YahooのアカウントをPOP受信で設定されて、その際にYahooのサーバーに残すように設定されていたら、ThundrebirdにYahooのPOPアカウントを設定されていたら、Yahooのアカウントにとっては、新着メールですから受信します。
メールソフトように何日後に削除の設定がないですから。

コピーを残さないようにした場合の問題は、Thunderbirdでは、Gmailのサーバーの定期的なアクセスでチェックされてGmailのサーバーに受信されたメールは、ThunderbirdのYahooのアカウントで受信チェックをしても、受信できないことが当然にあるということです。
迷惑メール以外のメールも同じ扱いになりますから。

しかし、GmailのIMAPアカウントで迷惑メールや真正なメールを処理・受信されているのでしたら、ThunderbirdのIMAPアカウントは、メッセージをダウンロード※できますから、GmailのIMAPアカウントからのコピー操作で、Yahooのアカウントトレイにも保存出来ます。
※GmailのIMAPアカウント設定にある「同期とディスク領域」にある詳細ボタンから、トレイを指定できます。

例えば、ThunderbirdのIMAPアカウントは、メッセージフィルターが効きますから、Gmailの受信時に必要なメールをThunderbird上のYahooのアカウントトレイにコピーのアクションを使ったらよいです。

複数のPCで確認される必要があるのでしたら、サーバーにある送受信トレイなどと、どのPCでも同期できるIMAPが当然で、ThunderbirdにPOPアカウントの設定をしても意味がなく、あくまでGmailの外部アカウントの設定の問題ですね。

考え方として、Thunderbird上のYahooのアカウントは送信時に使用すると考えれば良いわけで、その送信済みのメールもGmailのIMAPアカウントの適当なトレイにコピーしたら、Gmailのサーバーですべて管理できます。

#2です。

>こういう設定であっても、メーラーから削除すればサーバーからも削除されると思ったのですが、どうも違うようですね。

Gmailの外部アカウントとして、YahooのアカウントをPOP受信で設定されて、その際にYahooのサーバーに残すように設定されていたら、ThundrebirdにYahooのPOPアカウントを設定されていたら、Yahooのアカウントにとっては、新着メールですから受信します。
メールソフトように何日後に削除の設定がないですから。

コピーを残さないようにした場合の問題は、Thunderbirdでは...続きを読む

Q複数行を含む列を含むCVSファイルをインポートし、フォームで改行を反映させて表示したい

電子メールのデータ(日付、タイトル、本文等)をコンマ区切りのCVSファイルに出力し、それをマイクロソフトAccess2003(windowsXP環境)にインポートしました。

本文は複数行あるのでCVSファイル内では""で囲んであります。
インポート後のテーブル表示では、複数行の文字列として格納されていることを確認しております。
例えばメモ帳などにコピー&ペーストすると改行を含んだ形で元の電子メールデータの本文が正しく表示されます。

しかし、これをAccessのフォーム機能にて表示すると、複数行の文字列が一行に変換されて表示されてしまいます。

最終的にやりたいことは、メールデータをCVS形式でAccessのテーブルにインポートし、それを1メール1フォームの形式で表示し、各メールに対して自由記述あるいはチェックボックス等を使ってフラグ付けをしながら次々にページをめくるようにして読んでいきたいということです。

現在のところテーブルへのインポートまでは成功していると認識しておりますが、肝心のフォーム表示にて本文が一行化されてしまい非常にみにくくて作業効率が悪い状態でなんとかならないかと考えています。

電子メールのデータ(日付、タイトル、本文等)をコンマ区切りのCVSファイルに出力し、それをマイクロソフトAccess2003(windowsXP環境)にインポートしました。

本文は複数行あるのでCVSファイル内では""で囲んであります。
インポート後のテーブル表示では、複数行の文字列として格納されていることを確認しております。
例えばメモ帳などにコピー&ペーストすると改行を含んだ形で元の電子メールデータの本文が正しく表示されます。

しかし、これをAccessのフォーム機能にて表示すると、複数行の文字列...続きを読む

Aベストアンサー

>インポート後のテーブル表示では、複数行の文字列として格納されていることを確認しております。
正しく改行されてフィールドに保存されていればフォームのコントロールにも改行されて表示されるはずなのですが。
Chr(13)だけインポートされている状態だと・(キャリッジリターンのみ)になり改行できません。Chr(13) & Chr(10)を含めてインポートするとか。
フォームのコントロールに表示したときにコントロール内に・があるようならユーザー関数を作ってクエリ上で改行に変換すれば表示できます。
標準モジュールに下記をコピーしてください。(コピーすればMyRaplaceという関数として使えます。)

Option Compare Database
Option Explicit
Function MyRaplace(VarExpression As Variant _
, StrFind As String _
, StrReplace As String _
) As Variant
If IsNull(VarExpression) Then
MyRaplace = Null
Else
MyRaplace = Replace(Expression:=VarExpression _
, Find:=StrFind _
, Replace:=StrReplace _
, Compare:=vbTextCompare)
End If
End Function
そしてクエリに
本文1:MyRaplace(テーブル名.本文,"・",Chr(13) & Chr(10))
で変換後にコントロールのソースを本文1にするか
フォームのレコードソースに本文を持っていれば本文を表示したいコントロールのソースに
=MyRaplace(本文,"・",Chr(13) & Chr(10))
で変換し改行することができます。

>インポート後のテーブル表示では、複数行の文字列として格納されていることを確認しております。
正しく改行されてフィールドに保存されていればフォームのコントロールにも改行されて表示されるはずなのですが。
Chr(13)だけインポートされている状態だと・(キャリッジリターンのみ)になり改行できません。Chr(13) & Chr(10)を含めてインポートするとか。
フォームのコントロールに表示したときにコントロール内に・があるようならユーザー関数を作ってクエリ上で改行に変換すれば表示できます。
標準モジュ...続きを読む

Q複数アカウント利用時のGmail送信サーバー?

こんばんは。

Gmailのアカウントを複数使い分けています。
これをThunderbirdでPOP受信しています、受信は各アカウント問題ないのですが送信した際にGmailのSMTPサーバーが一つしか設定できない(試しにGmailSMTPサーバー(アカウント)を複数追加してみましたが内容が同じからか結局1つになってしまいます)ためそのサーバーに入力したアカウントから送ったことになってしまいます。Beckyなどを使えば各送信サーバーアカウントが設定できるので問題ないのですが通常使うメーラーをThunderbirdにしようと思っています。なんとか設定できるものなのでしょうか?

要約すると、Thunderbirdを使って違うアカウントだが同じSMTPサーバーを利用する場合(ユーザー名が必要なSMTPサーバーの場合)どれか一つのアカウントからしか送信できないのでしょうか?

ややこしい文章で申し訳ありません、意味がわかる方よろしくお願いいたします。

Aベストアンサー

下記URLが参考になるのではないでしょうか。
それぞれユーザー名も設定すれば、アカウントごとにSMTPを使い分けることができます。
http://thunderbird.geckodev.org/index.php?%CA%A3%BF%F4%A4%CESMTP%A5%B5%A1%BC%A5%D0%A1%BC%A4%CE%C0%DF%C4%EA

サーバー名が同じなので設定した段階では見分けにくい?ですが・・メール作成画面では「差出人」に各アカウントが表示されます。

QACCESSクエリで複数テーブルの値の結合について

現在、ACCESS2000で2つのテーブルの値を表示するクエリを作成中です。
テーブルは外部データよりインポートしています。

Aテーブル
KEY1 | KEY2 | 値1
--------------------------
00000001 | AAAAAAAA | 100
00000001 | BBBBBBBB | 200
00000002 | AAAAAAAA | 1000

Bテーブル
KEY1 | KEY2 | 値1
--------------------------
00000001 | AAAAAAAA | 500
00000002 | BBBBBBBB | 300


これを、
KEY1 | KEY2 | 値1
------------------------------------------------
00000001:00000001 | AAAAAAAA:AAAAAAAA | 100:500 ←(1)
00000001:NULL | BBBBBBBB:NULL | 200:NULL ←(2)
00000002:NULL | AAAAAAAA:NULL | 1000:NULL ←(3)
NULL:00000002 | NULL:BBBBBBBB | NULL:300 ←(4)

と表示したいのです。

INNER JOIN では、上記(1)しか表示されません。
また、LEFT JOIN では、(1)(2)(3)は表示されますが、(4)が表示されません。

SQLは下記です(INNER JOINを使用した場合)
SELECT [Aテーブル.KEY1] & ":" & [Bテーブル.KEY1] AS KEY1,
[Aテーブル.KEY2] & ":" & [Bテーブル.KEY2] AS KEY2,
[Aテーブル.値1] & ":" & [Bテーブル.値1] AS 値1
FROM Aテーブル INNER JOIN Bテーブル
ON ([Aテーブル].[KEY1]=[Bテーブル].[KEY1]) AND ([Aテーブル].[KEY2]=[Bテーブル].[KEY2]);


どなかた教えてください。お願いします。

現在、ACCESS2000で2つのテーブルの値を表示するクエリを作成中です。
テーブルは外部データよりインポートしています。

Aテーブル
KEY1 | KEY2 | 値1
--------------------------
00000001 | AAAAAAAA | 100
00000001 | BBBBBBBB | 200
00000002 | AAAAAAAA | 1000

Bテーブル
KEY1 | KEY2 | 値1
--------------------------
00000001 | AAAAAAAA | 500
00000002 | BBBBBBBB | 300


これを、
KEY1 | KEY2 | 値1
-------------------------...続きを読む

Aベストアンサー

#1です。
もしかしたら、unionクエリーの時点で、
重複データは、1元化されるかもしれません。
そうなれば、集計クエリーは必要なくなると思います。
すいません。確認してません。


人気Q&Aランキング

おすすめ情報