エクセルについて

エクセルについて、検索値が2つあり(2つのセル)
別のシートにある2つのセルが一致した場合、
値を表示したいときどうしたらいいでしょうか…
一致していない場合は空欄でいいですm(._.)m

なるべく急ぎでお願い致しますm(._.)m

A 回答 (1件)

表にして見せた方が言葉でゴチャゴチャ書くより、一目瞭然になろうかと!

    • good
    • 0

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

このQ&Aを見た人はこんなQ&Aも見ています

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

Qセル範囲がすべて空欄の場合、合計値の回答欄が空欄になるエクセル関数は?

セル範囲がすべて空欄の場合、合計値の回答欄が空欄になるエクセル関数は?

A1~P20の範囲に数字(0含む)と空欄が混在しております。
各横軸で合計値を求め、A~Pまで全て空欄だった場合は、空欄にしたいのですが、
SUMだと「0」と表示されてしまいます。

なお、計算範囲のセルが0と表示されている場合は、結果「0」と表示してかまいません。

ISBLANKで1つ1つのセルを指定していく方法もあるのですが、式が長くなってしまいます。
=IF(AND(ISBLANK(A1),ISBLANK(B1),ISBLANK(C1)・・・・・・),"",SUM(A1:P1))

もう少し短い式で上記のような計算ができる関数はあれば教えてください。

Aベストアンサー

=IF(COUNT(A1:P1)=0,"",SUM(A1:P1))

Qエクセル もし、セルが空欄なら、その上のセルの値を入力する

エクセル2002を使用しています。

例えば、A列に順に数値が入っているのですが、ところどころ空欄です。
<こんな感じです。>
12
15
22

33
34


55
<ここまで>

数値は、連番ではありません。不規則です。約300行あります。
本当は、空欄の場所は一つ上のセル数値が入るのです。(連続して空欄になっているところも、一つ上の数値と同じ値が入るのです。)
<上の例を当てはめると>
12
15
22
22 ←
33
34
34 ←
34 ←
55
<ここまで>

こんな感じにしたいのです。
関数などで一つのセルに入力して、あとはフィルドラッグでコピーするなんていう便利な方法はありませんか?
すでに入力している数値が消えないようにしたいのです。

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

Aベストアンサー

とりあえず数値の範囲を選択
F5キーを押してセル選択で定数を選択(文字を除くなら数値のみチェック)
これで空白のセルが除外されます。
ここでコピーして張り付ければいいかと...

Qエクセル関数を使い、2つの条件にあった値(文字)を2つの条件にあったセルに返す。

こんばんは。
いつもお世話になります。
以下の関数に関してよい方法が見当たりませんでしたのでとぴにより質問をさせて頂きます。

{シート1}
A    B   C   D
生徒ID 算数 国語 社会
A001
A002
A003
...


{シート2}
A    B   C
生徒ID 教科 評価
A001  算数  C
A001  国語  B
A001  社会  A
A002  算数  B
A002  国語  A
A002  社会  C
...

やりたいこと。
{シート1}の生徒A001の算数のセルに{シート2}の2つの条件(A001,算数)にあう評価(A,B,C)を返したい。

以前、以下のような数式を教えて頂きました。
このときは評価(文字)ではなく数値を返すものなので達成できましたが文字にしてからエラーが出てしまいます。
-------
◆Sheet1のB2の式

B2=SUMPRODUCT((Sheet2!$A$2:$A$10=$A2)*(Sheet2!$B$2:$B$10=B$1)*Sheet2!$C$2:$C$10)
-------

ご指導頂きたく、どうぞ宜しくお願い致します。

こんばんは。
いつもお世話になります。
以下の関数に関してよい方法が見当たりませんでしたのでとぴにより質問をさせて頂きます。

{シート1}
A    B   C   D
生徒ID 算数 国語 社会
A001
A002
A003
...


{シート2}
A    B   C
生徒ID 教科 評価
A001  算数  C
A001  国語  B
A001  社会  A
A002  算数  B
A002  国語  A
A002  社会  C
...

やりたいこと。
{シート1}の生徒A001の算数のセルに{シート2}の2つの条件(A001,算数)にあう評価(A,B,...続きを読む

Aベストアンサー

例データ Sheet1 A1:C10
生徒ID教科評価
A001算数C
A001国語B
A001社会A
A002算数B
A002国語A
A002社会C
A003算数B
A004国語D
A005社会D
Sheet1に(下記A、B、C、Dは式の結果答えも出た様子)
生徒ID算数国語社会作業列
A001CBA0
A002BAC3
A003BDD6
式を簡単にするため、作業列はどこか秋列に作る(ここではF列とする)
式は=MATCH(A2,Sheet2!$A$2:$A$100,0)-1
意味は生徒IDの初出(開始)行のB1からの隔たり行数を出している。
ーー
B2に
=OFFSET(Sheet2!$A$2,$F2+MATCH(B$1,OFFSET(Sheet2!$B$2,$F2,0,100,1),0)-1,2)
B2no式をB列下方向に生徒数分、b2:B4の式を右方向に科目数分
式を複写する(+ハンドルを引っ張る等)
結果
上記の通り。
作業列はF列の式をB2の式にネストして、、組み込めば不要となるのは
ご存知でしょうが、理解のため、そのままにします。
ーー
やっているのはMATCH関数で生徒IDや科目命をみつけている。
ただし(B2以下でなく)その生徒IDの開始行以下で科目名を探さないといけないので、その分修正しているので複雑化している。

例データ Sheet1 A1:C10
生徒ID教科評価
A001算数C
A001国語B
A001社会A
A002算数B
A002国語A
A002社会C
A003算数B
A004国語D
A005社会D
Sheet1に(下記A、B、C、Dは式の結果答えも出た様子)
生徒ID算数国語社会作業列
A001CBA0
A002BAC3
A003BDD6
式を簡単にするため、作業列はどこか秋列に作る(ここではF列とする)
式は=MATCH(A2,Sheet2!$A$2:$A$100,0)-1
意味は生徒IDの初出(開始)行のB1からの隔たり行数を出している。
ーー
B2に
=OFFSET(Sheet2!$A$2,$F2+MATCH(B$1,OFFSET(She...続きを読む

Q★EXCEL VBA★2つのシートで一致しているセルに値を代入したい

表題の件で、苦戦しています。
まず2つのシートがありまして下記のようになっています。

1シート目
No 内容
1 おはよう
2 こんにちわ
3 こんばんわ
(コントロール1:オプションボックス A or B or C)
(コントロール2:実行ボタン)

2シート目(更新後)
No グループ 内容
1 B    
2 B    
3 B    
1 C   おはよう
2 C   こんにちわ
3 C   こんばんわ

★やりたいこと
1シート目でコントロール1を「C」としてコントロール2の実行ボタンをおした際、2シート目のグループを検索し一致した「No」&「グループ」の箇所にそれぞれの「内容」を代入する。
また「A」はALL扱いとして、グループは無視し、一致した「No」の箇所に
それぞれ「内容」を代入する。

以上です。ぜひとも宜しくお願いします。

Aベストアンサー

#1です。

提示されたコードを読んでも解らない部分があり、意味が違うかも知れません。
こちらで試したテスト環境を書きますので、試す場合は同様の環境で試して見て下さい。

1)シート名 Sheet1 の A1:B4 に下記リストがあり、1行目はタイトル行とする。

  No 内容
  1 おはよう
  2 こんにちわ
  3 こんばんわ

2)シート名 Sheet2 の A1:C7 に下記リストがあり、1行目はタイトル行とする。

  No グループ 内容
  1 B    
  2 B    
  3 B    
  1 C    
  2 C    
  3 C    

3)シート名 Sheet1 には コントロールツールボックスの CommandButton が1つと OptionButton が3つある。
  CommandButton1 の Click イベントを下記のようにする。

Private Sub CommandButton1_Click()
Dim op As String, r As Range, fr
 'OptionButton は GroupName が同じとする
 If Me.OptionButton1.Value Then op = "A"
 If Me.OptionButton2.Value Then op = "B"
 If Me.OptionButton3.Value Then op = "C"
 With Worksheets("Sheet2")
   '取り合えず実行するたびに C列 をクリアする
   .Range("C2", .Range("A65536").End(xlUp).Offset(0, 2)).Clear
   'Sheet2をA2からループ
   For Each r In .Range("A2", .Range("A65536").End(xlUp))
     'Sheet1(Me)のA列に完全に一致する値があるかを検索
     Set fr = Me.Columns("A").Find(what:=r.Value, lookat:=xlWhole)
     If Not fr Is Nothing Then
      '見つかった場合、op の状態によって転記方法を分ける
      Select Case op
      Case "A"
        '同じなら全部転記
        r.Offset(0, 2).Value = fr.Offset(0, 1).Value
      Case "B", "C"
        '条件に合う場合のみ転記
        If r.Offset(0, 1).Value = op Then
         r.Offset(0, 2).Value = fr.Offset(0, 1).Value
        End If
      End Select
     End If
   Next r
 End With
End Sub

#1です。

提示されたコードを読んでも解らない部分があり、意味が違うかも知れません。
こちらで試したテスト環境を書きますので、試す場合は同様の環境で試して見て下さい。

1)シート名 Sheet1 の A1:B4 に下記リストがあり、1行目はタイトル行とする。

  No 内容
  1 おはよう
  2 こんにちわ
  3 こんばんわ

2)シート名 Sheet2 の A1:C7 に下記リストがあり、1行目はタイトル行とする。

  No グループ 内容
  1 B    
  2 B    
  3 B    
...続きを読む

Qエクセルで、2つの条件に一致する値を返す方法 教えてください

ABCDEF
1日付分数
2AさんBさんCさんAさんBさんCさん
33/22/123/1591010
43/42/123/15233
53/42/123/15303030
63/32/123/15112
73/42/123/15354
83/42/123/15292929

上記の表より 列A,B,Cは日付 列D,E,Fは分数です
・3行目のG列にD3:F3の範囲で最小値であり、A3:C3の範囲で最新の日付(最大値)である時の 日付を表示したい。
G3のセルを下に引っ張り各行ごとに値を表示したいです。
関数(式)を教えてください。

Aベストアンサー

=MAX(IF(D3:F3=MIN(D3:F3),A3:C3))
と記入してコントロールキーとシフトキーを押しながらEnterしてみます。
セルの書式を日付にセットするのを忘れずに。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング

おすすめ情報