エクセル操作方法について

エクセル操作方法で、分からない為教えてくださいm(._.)m

シート①
A B C
1
2
3


シート②
A B C
1
2
3

エクセルのシート①と②があり、
シート②にシート①のA1とB1がシート②でも
一致すればC1を自動的に反映させるにはどうしたらいいですか?
(シート②のC列に自動的に反映させたいです。
シート①のA1とB1がシート②のA1とB1でも一致したらC列に反映させたいです。一致しない場合は空欄でいいです)
よろしくお願い致します

質問者からの補足コメント

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

      補足日時:2017/05/15 17:09

A 回答 (2件)

No.1です。



>sheet1のC1の値をsheet2でも表示させたいです!Vlookup関数では無理でしょうか?

もしかして、Sheet1にA列・B列にSheet2のA列・B列データと一致する行がある場合
その行のC列のデータを表示させたい!というコトでしょうか?

VLOOKUP関数は範囲指定した一番左側の列が「検索値」になりますので、
作業用の列をSheet1のA列に挿入すれば可能です。

今回は作業列を使用しない方法にしてみました。
Sheet2のC1セルに
=IF(COUNTIFS(Sheet1!A$1:A$1000,A1,Sheet1!B$1:B$1000,B1),INDEX(Sheet1!C$1:C$1000,SUMPRODUCT((Sheet1!A$1:A$1000=A1)*(Sheet1!B$1:B$1000=B1),ROW(A$1:A$1000))),"")

としてフィルハンドルで下へコピーではどうでしょうか?m(_ _)m
    • good
    • 0

こんにちは!



>一致すればC1を自動的に反映させるにはどうしたらいいですか?
とはSheet1のC1セルのコトですよね?

一例です。Sheet2のC1セルに
=IF(COUNTBLANK(A1:B1),"",IF(AND(Sheet1!A1=A1,Sheet1!B1=B1),Sheet1!C1,""))

という数式を入れフィルハンドルで下へコピーではどうでしょか?

※ 「Sheet1」は実際のシート名にしてください。m(_ _)m
    • good
    • 1
この回答へのお礼

ありがとうございます!
sheet1のC1の値をsheet2でも表示させたいです!Vlookup関数では無理でしょうか?m(._.)m

お礼日時:2017/05/15 18:28

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

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

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

QエクセルのワークシートAの1列目(A列)の日付と、ワークシートBの1列

エクセルのワークシートAの1列目(A列)の日付と、ワークシートBの1列目(A列)の日付を一致させて1つのワークシートに纏める方法を探しています。

2つの時系列データがあるのですが、データA(為替データ)とデータB(株式データ)のデータ管理方法が下記のように異なっています。

データA(為替データ)・・・1週間のうち6日間(月曜から土曜まで)
データB(株式データ)・・・1週間のうち5日間(月曜から金曜まで)

おのおのワークシートのA列に日付が入っています。

データAは月曜から土曜までなので、1週間に6行要します。データBは月曜から金曜なので1週間に要するのは5行です。従って、単純にこの2つのデータを張り合わせるだけでは(データBをデータAのシートに張り合わせた時)、1週間に要する行数が違うので1行ずつずれてしまいます。

1週間に要する行数の違いだけでなく、マーケットが休みの日はデータそのものがないため日付が存在しません。(マーケットの休みもおのおの別の日でバラバラです。)

これらの理由により、ただ単に張り合わせるだけだとずれが広がるばかりです。

そこでデータAの日付とデータBの日付を認識して一致させる関数を教えて欲しいと思います。

データAの構成はA1=日付、B1=始値、C1=高値、D1=安値、E1=終値で、データBの構成も同じです。
データAのF1にデータAのA1と同じ日付のデータBの行を貼り付るように設定したいと思っています。

説明が分かり辛い場合は補足しますので、その際はご指摘下さい。

宜しくお願いします。

エクセルのワークシートAの1列目(A列)の日付と、ワークシートBの1列目(A列)の日付を一致させて1つのワークシートに纏める方法を探しています。

2つの時系列データがあるのですが、データA(為替データ)とデータB(株式データ)のデータ管理方法が下記のように異なっています。

データA(為替データ)・・・1週間のうち6日間(月曜から土曜まで)
データB(株式データ)・・・1週間のうち5日間(月曜から金曜まで)

おのおのワークシートのA列に日付が入っています。

データAは月曜から土曜までなので、1...続きを読む

Aベストアンサー

誤記がありましたね。ごめんなさい。

シートCのA2に
2010/1/1
を置いて下向けにえいやっとオートフィルドラッグ,365日の日付を並べておいて
B2:為替
=IF(COUNTIF(為替!$A:$A,$A2),VLOOKUP($A2,為替!$A:$E,COLUMN(B2)),"")
を右に下にコピー。
F2:株式
=IF(COUNTIF(株式!$A:$A,$A2),VLOOKUP($A2,株式!$A:$E,COLUMN(B2)),"")
を右に下にコピー。

これでマーケットの開いてなかった日付がエラーになることもありませんので,追加のご質問も解消でしょうか。

QExcel2013 VBA A列とB列の文字をA列とB列とC列に移動させる方法

A列とB列に文字が入っているのですが、下記のようにA列とB列とC列に文字を移動させたいです。
(A列の数字は必ず奇数のA列に入っています。)
VBAのコードを教えて下さい。

例えば
A1 1  B1 cat
A2 空白 B2 猫
A3 空白 B3 dog
A4 空白 B4 犬
A5 2  B5 whale
A6 空白 B6 クジラ
A7 3  B7 rabbit
A8 空白 B8 ウサギ

とデータがある場合

A1 1  B1 cat  C1 猫
A2 空白 B2 dog  C2 犬
A3 2  B3 whale  C3 クジラ
A4 3  B4 rabbit C4 ウサギ

としたいです。

実際、データは、A5196まであります。

Aベストアンサー

No.1です。

>実際、データは、A5196まであります。

前回のコードは一つずつカット&ペーストしていますので
かなりの時間を要すると思います。
↓のコードに変更してみてください。

Sub Sample2()
Dim lastRow As Long
lastRow = Cells(Rows.Count, "B").End(xlUp).Row
Application.ScreenUpdating = False
With Range(Cells(1, "C"), Cells(lastRow, "C"))
.Formula = "=IF(MOD(ROW(),2)=1,B2,"""")"
.Value = .Value
.SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End With
Application.ScreenUpdating = True
MsgBox "完了"
End Sub

少しは短縮できると思います。m(_ _)m

No.1です。

>実際、データは、A5196まであります。

前回のコードは一つずつカット&ペーストしていますので
かなりの時間を要すると思います。
↓のコードに変更してみてください。

Sub Sample2()
Dim lastRow As Long
lastRow = Cells(Rows.Count, "B").End(xlUp).Row
Application.ScreenUpdating = False
With Range(Cells(1, "C"), Cells(lastRow, "C"))
.Formula = "=IF(MOD(ROW(),2)=1,B2,"""")"
.Value = .Value
.SpecialCells(xlCellTypeB...続きを読む

Qエクセルの関数を教えて下さい。 例 シート3 11月の売上集計 A 列 B列 C列 D列 1行 い

エクセルの関数を教えて下さい。

例 シート3 11月の売上集計
A 列 B列 C列 D列
1行 い ろ は
2行 りんご 3 2 4‥
3行 累計 15 12 13‥
4行 みかん 2 5 6‥
5行 累計 12 14 16‥
と売上の集計が続いています。
この時、2行目と4行目は手入力してます。
B3は=B2+10月シートB3となります。
C3はC2+10月シートC3となります。
5行目も同様です。
このシートをコピーして12月分を作った時、
B3は=B2+10月シートB3の10月を11月に
変更してます。
自動的に変更できる方法はないですか❓

Aベストアンサー

11月の
>シートをコピーして12月分を作った時、
>B3は=B2+10月シートB3の10月を11月に
>変更してます。
>自動的に変更できる方法はないですか❓
…と言う事ですか?
ならば月の数字をいじれば良いだけですので、CELL関数でシート名を取得して、それを加工しましょう。

 =CELL("filename",A1)
これで、このCELL関数が使われたシート名を含んだ文字列を取得できます。
 C:\Users\あさご\Documents\Excel_file\[売り上げとか.xlsx]12月の売上集計
のような値が返ってきますので、ファイル名の後ろにある「 ] 」の位置をFIND関数で見つけて、その次の文字から最後の文字までをシート名としてMID関数などで切り出し、
”月の売上集計”をSUBSTITUTE関数で削除する(空欄に置き換える)か、得られたシート名の先頭から「月」の文字の前の文字までを別途切り出す。
これで月の数字の部分を得ることができます。
あとはこの数字を足したり引いたりしてINDIRECT関数に入れて参照したいシート名にすればよいです。
1月には12月のシートを参照したいという事になるでしょうから、そのあたりも考慮して作りましょう。
(MOD関数を使うと良いかもしれない)

11月の
>シートをコピーして12月分を作った時、
>B3は=B2+10月シートB3の10月を11月に
>変更してます。
>自動的に変更できる方法はないですか❓
…と言う事ですか?
ならば月の数字をいじれば良いだけですので、CELL関数でシート名を取得して、それを加工しましょう。

 =CELL("filename",A1)
これで、このCELL関数が使われたシート名を含んだ文字列を取得できます。
 C:\Users\あさご\Documents\Excel_file\[売り上げとか.xlsx]12月の売上集計
のような値が返ってきますので、ファイル名の後ろ...続きを読む

Qシート2とシート3のA,B,Cの列の文字列と一致する行の特定の項目をリンクさせる方法

仕事で困っていることがあります。まず、excel 2013 ブックでシート1に雛形、そしてシート2に伝票台帳、そしてシート3に伝票ごとの売上げが記入されています。また、シート1の雛形に入力し、コマンドボタンをクイックすると、シート2、シート3へ自動転記されるようにしています。シート2はA1:K1まではそれぞれ、伝票種別(A1),伝票番号1(B1),伝票番号2(C1),日付(D1),取引先(E1),商品名(F1),個数(G1),売価(H1),金額(I1),部門(J1),入金日(K1)が記入され、それぞれその下の行から記入されるようになっています。シート3はA1:G1まではそれぞれ、伝票種別(A1),伝票番号1(B1),伝票番号2(C1),日付(D1),取引先(E1),合計金額(F1),入金日(G1)が記入され、それぞれその下の行から記入されるようになっています。そこで本題になるのですが、今、現在は入金されたときにシート3の入金日に日付を入れればシート2に入金日がリンクされるようにコピーしてリンクさせているのですが、非常に手間がかかっています。VBA等でシート3のH1あたりにコマンドボタンを作ってボタンを押せばリンクさせる方法はないでしょうか。まだ、VBAに関しては初心者なので教えて頂けないでしょうか。可能かどうかもわからない初心者で非常に困っております。よろしくお願いします。

仕事で困っていることがあります。まず、excel 2013 ブックでシート1に雛形、そしてシート2に伝票台帳、そしてシート3に伝票ごとの売上げが記入されています。また、シート1の雛形に入力し、コマンドボタンをクイックすると、シート2、シート3へ自動転記されるようにしています。シート2はA1:K1まではそれぞれ、伝票種別(A1),伝票番号1(B1),伝票番号2(C1),日付(D1),取引先(E1),商品名(F1),個数(G1),売価(H1),金額(I1),部門(J1),入金日(K1)が記入され、それぞれその下の行から記入されるようになっています。シー...続きを読む

Aベストアンサー

「雛形」(入力用のシートのことでしょう)を使うという話から、おそらくシート2とシート3の各行が正確に対応しているのであろうと思います。ならば:

シート2のK2に
=if(Sheet3!G2="","",Sheet3!G2)
と書き込む。これは、シート3のセルG2が表示している値を、シート2のセルK2にも表示する(ただし、シート3のセルG2が空欄の場合には、シート2のセルK2を空白にしておく)という式です。なので、シート3のG2の値を変更すれば、即座に自動的にシート2のK2の値も変更されます。

 さて、シート3のセルK2から下へうーんと沢山のセルを選択しておいて「下方向へコピー」をやりますと、シート2のセルK3には
=if(Sheet3!G3="","",Sheet3!G3)
シート2のセルK4には
=if(Sheet3!G4="","",Sheet3!G4)
という風に、選択した部分にも式が自動的に書き込まれますんで、これで出来上がり。

QA列とB列が一致するものをC列に合計する場合の関数

エクセル2010を使用しています。
★1のデータA列とB列が一致するものは計算してC列に合計し、
★2のデータにしたい場合の関数を教えて下さい。

初歩的なことですがすみませんどなたかよろしくお願いします。

Aベストアンサー

こんばんは!

>★2のデータにしたい場合の関数を教えて下さい。
というコトですので、一例です。
元データはSheet1にあり、Sheet2に表示させるとします。

↓の画像のようにSheet1に作業用の列を2列設けます。
作業列1のD2セルに
=IF(COUNTBLANK(A2:B2),"",A2&"_"&B2)

作業列2のE2セルに
=IF(OR(D2="",COUNTIF(D$2:D2,D2)>1),"",ROW())

という数式を入れ → D2・E2セルを範囲指定 → E2セルのフィルハンドルでずぃ~~~!っと下へコピーしておきます。

そしてSheet2のA2セルに
=IFERROR(INDEX(Sheet1!A:A,SMALL(Sheet1!$E:$E,ROW(A1))),"")
という数式を入れ隣のB2セルまでフィル&コピー!

C2セルに
=IF(A2="","",SUMIFS(Sheet1!C:C,Sheet1!A:A,A2,Sheet1!B:B,B2))
という数式を入れ、A2~C2セルを範囲指定 → C2セルのフィルハンドルで下へコピー!

これで画像のような感じになります。

※ 作業列が目障りであれば遠く離れた列にするか
非表示にしてください。m(_ _)m

こんばんは!

>★2のデータにしたい場合の関数を教えて下さい。
というコトですので、一例です。
元データはSheet1にあり、Sheet2に表示させるとします。

↓の画像のようにSheet1に作業用の列を2列設けます。
作業列1のD2セルに
=IF(COUNTBLANK(A2:B2),"",A2&"_"&B2)

作業列2のE2セルに
=IF(OR(D2="",COUNTIF(D$2:D2,D2)>1),"",ROW())

という数式を入れ → D2・E2セルを範囲指定 → E2セルのフィルハンドルでずぃ~~~!っと下へコピーしておきます。

そしてSheet2のA2セルに
=IFERROR(INDEX(Sheet1!A:A,SM...続きを読む


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

人気Q&Aランキング

おすすめ情報