エクセルの関数について教えてください

このQ&Aのポイント
  • エクセルの関数について詳しく教えてください。
  • シート1の特定の範囲にデータが入力された場合、そのデータの一部をシート2に表示する方法を教えてください。
  • 未入力のセルは対象外とし、シート2には表示しないようにしたいです。
回答を見る
  • ベストアンサー

エクセルの関数について誰か教えてください。

エクセルの関数について誰か教えてください。 シート1のI3からP550までのセルに、記号や文字などのなにかデータの入力があれば、そのデータ入力があった横のセル1行全部のデータをシート2のA4のセルに表示させる方法を教えてください。 例えば横のセル3のI3からP3のセルどれかに何かデータ入力があれば、横のセル3のA3からP3までのデータをシート2に順に表示。横のセル4のI4からP4のセルどれかに何かデータ入力があれば、横のセル4のA4からP4までのデータをシート2のセル3のデータの下に順に表示させていきたいのです。 シート1のI3からP550までのセルにデータ入力がないものは対象外として、シート2にも表示はしない形にしたいのです。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

こんばんは! 参考になるかどうか判りませんが・・・ かなり無理矢理って感じの方法になります。 ↓の画像のようにSheet1に作業用の列(表)を使わせてもらっています。 Sheet1のQ3セルに =IF(COUNTA(I3:P3)=0,"",ROW(A1)) R3セルに =IF(OR($Q3="",COUNTA($I3:$P3)<COLUMN(A1)),"",INDEX($I3:$P3,,SMALL(IF($I3:$P3<>"",COLUMN($A:$H)),COLUMN(A1)))) これは配列数式になってしまいますので、 この画面から数式をR3セルに貼り付け後、F2キーを押すか、数式バー内で一度クリックします。 編集可能になりますので、Shift+Ctrl+Enterキーで確定します。 数式の前後に{ }マークが入り配列数式になります。 そして、R3セルのフィルハンドルで列方向にY3セルまでオートフィルでコピーします。 Q3~Y3セルを範囲指定し、Y3セルのフィルハンドルで下へオートフィルでコピーします。 これで、空白以外の行に行番号が・元データが左詰めで表示されるはずです。 このデータを元にSheet2に表示させるようにします。 Sheet2のA4セルに =IF(COUNT(Sheet1!$Q$3:$Q$550)<ROW(A1),"",INDEX(Sheet1!$R$3:$Y$550,SMALL(Sheet1!$Q$3:$Q$550,ROW(A1)),COLUMN(A1))) (これは配列数式ではありません) として、列方向と行方向にオートフィルでコピーすると 画像のような感じになります。 以上、長々と書いた上に、少し手間がかかる方法ですが 参考になれば幸いです。 他に良い方法があれば読み流してくださいね。m(__)m

その他の回答 (2)

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.2

作業列をシート1に設けて対応するのが判りやすいでしょう。 例えばシート1のR3セルには次の式を入力して下方にオートフィルドラッグします。 =IF(COUNTIF(I3:P3,"*")=0,"",MAX(R$2:R2)+1) 次にシート2のA4セルには次の式を入力してP4セルまでオートフィルドラッグしたのちに下方にもオートフィルドラッグします。 =IF(COUNTIF(Sheet1!$R:$R,ROW(A1))=0,"",IF(INDEX(Sheet1!$A:$P,MATCH(ROW(A1),Sheet1!$R:$R,0),COLUMN(A1))=0,"",INDEX(Sheet1!$A:$P,MATCH(ROW(A1),Sheet1!$R:$R,0),COLUMN(A1))))

bom_baye
質問者

お礼

何とか解決いたしました。ありがとうございました。

noname#204879
noname#204879
回答No.1

Sheet2!A3: =IF(COUNTA(Sheet1!$I3:$P3),IF(Sheet1!A3="","",Sheet1!A3),"")

関連するQ&A

  • エクセルの関数をおしえて

    こんにちは いつもお世話になっています エクセルの関数について教えてください。 例えば、A列の、あるセルに商品名を入れるとB列の同行セルに、その商品名に対応した特定のデータを入力するにはどうすればいいでしょうか。商品名と、それに対応したデータは別シートにあり、それを呼び出すような形にしたいのです。つまり、A1に「abc」と入力したら、自動的にB1に、「abc」に対応した特定のデータが入力されるようにしたいのです。A列のどこに入力しても、そのセルの横のセルに対応データを表示させたいのです。 関数名だけでもかまいません。よろしくお願いします

  • エクセル関数について教えてください

    エクセル関数についてご教授ください。 添付図のようなデータ入力シートがあり入力者は山田、太田、斉藤の3名が入力します。 今、山田さんが7/29日の数学の列の10:40-12:10行のセルに「伊藤」と入力し、太田さんが同日のEnglishの列の13:00-14:30行のセル に「伊藤」と入力し、さらに斉藤さんが同日の国語の列の14:40-16:10行のセルに「伊藤」と入力した場合にsheet2(シート名:伊藤)の表に図で示すようなデータを自動で入力させたいと考えています。 sheet1の日付は横に1週間分あります。同様にSheet2(伊藤)にも同じ日付で1週間分あります。 このようなことは可能でしょうか? エクセル関数初心者で非常に困っています。 どうかご指導いただきたいです。

  • エクセル(excel)の計算式(関数)について

    エクセル(excel)の計算式(関数)でよいアイディアがありましたら教えてください。 1行目は項目行です。 セルA1から右に15列=セルO1まで、 a | b | c | d | e | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 と入っています。 2行目からデータとして、 セルA2から右に5列=セルE2まで、 4 | 2 | 2 | 1 | 1 と入力したとします。(データ例(1)) あるいは、 セルA3から右にセルE3まで、 6 | 3 | 0 | 0 | 0 と入力したとします。(データ例(2)) 1つのデータの5個の数字のルールは2つで、 「合計で10以下である。」 「左から順に小さくなるか、同じ数字となる。」 です。 (目的は、) このとき、F列からO列にかけて、 データ例(1)のケースでは、 a | a | a | a | b | b | c | c | d | e データ例(2)のケースでは、 a | a | a | a | a | a | b | b | b | と表示されるように、 つまり、項目行の下にある数だけ、その列の1行目の記号を 1(F列)から右に向かって順に埋めていくような、 F列からO列までの2行目以下に入れる適当な計算式(関数)は ないでしょうか。 拙い説明で申し訳ありません。どなたかよい考えをお持ちの方がいらっしゃいましたらと存じます。 どうぞよろしくお願い致します。

  • excelの関数について

    excelの関数について sheet1、sheet2の二つのシートがあり sheet1のA1セルにsheet2のA1セルのデータを呼び出すために、 次のような式をsheet1のA1セルに入力した =sheet2!A1 通常だと表示が変更されるかと思いますが、表示が変更されず・・・ dataを呼び出すことができません。 四苦八苦して「上書き保存」ボタンを押すことで表示が更新されて呼び出すことが出来ることが 確認できました。 これはexcelファイルの破損でしょうか? もしくは、excelファイルの設定の問題でしょうか? 誰か教えてください

  • Excelでこのようなときはどんな関数にすればよいでしょうか

    同じブック内で以下のような2シートがあるときに、 (シートA)    A   B    C    1  あい  123  りんご 2  うえ  456  みかん   3  おか  789  イチゴ (シートB)    A   B    C    1  あい  123  めろん 2  えお  456  みかん   3  おか  789  イチゴ 横に並んだ3項目が同じものにだけ、(シートB)のセルに色を付けたいのです。 (上記の例だと、3行目が3項目とも一致しているということです) 色は横3つのセルにつけられなければ、A列のセルだけでも構いません。 (上記の場合、色をつけたいのはシートB「おか」のセル) 列を増やすなど、処理用のデータが必要でも非表示にすればいいので その点は構いません。 関数や条件付書式などで、なんとかなりますでしょうか?

  • エクセル関数について

    エクセルの関数についてなのですが、例えば「セルA3」に「セルB2」の値を表示させるには「=(B2)」と「セルA3」に表示させてます。別のSheetの値も表示できるのでしょうか?例えば「Sheet1.Range("A3")」の値をSheet2のA1に表示させたい場合Sheet2のA1にはどのような関数を入力していけばよいのでしょうか?VBAは使わずに表示したいのですが。関数はまだほとんど使ったことがないので分かる人いたら教えてください。よろしくお願いします。

  • エクセルの関数で

    仮に 1 3 5 7 9 2 4 6 8 10 というような表があるとします(数字は各セルごとです) 別シートのある箇所に「1」と入力すると、その横にセルごとに 3 5 7 9 と表示され、1の箇所に2と入力すると2 4 6 8 10と 表示させるにはどうすれば良いのでしょうか?関数で出来るのでしょうか。 宜しく御願いします。

  • エクセル 関数を使っての自動転記について

    ネットでいくつか検索してみましたが、こちらの検索方法が悪かったためかヒットしなかったので 改めてこちらで質問させて頂きます 今回の質問内容ですが、例えばの話シートAのA列の1行目に1組、2行目に2組、3行目3組と入力してあり、それがシートBのA列にも同じく1組、2組、3組・・と同じように表示したいというものです それだけでしたらイコールを使えば良いのですが、さらにシートAの1組、2組、3組と追加でその下の4行目に4組と入力した場合、シートBにも自動で3組の下の行に4組と入力されるようにしたいというものです (例えばの話なので1行目の文字がりんご、2行目の文字がみかんといったように数字以外になる事ももちろんあります) OFFSET関数やCOUNTA関数を使って、シートAの空白以外のセルを数えて、そのセル数分だけ シートBにデータが表示されるようにしたいのですが具体的な関数の組み合わせが分かりません 不明な点御座いましたら追記にてお答えしますのでお分かりになる方がいらっしゃいましたら ご教授の程お願いします

  • Excelの関数に関して教えて下さい

    パソコンはWindos98です。 ExcelのAシートに     A列    B列    C列    D列    (品名) (ロット) (容量)  (数量) 1行 みかん   123   100g  3 2行 りんご   456   100g  4 3行 ピーチ   789   120g  2 とある場合に新たなBシートの A1のセルに「りんご」と入力した場合に A1 品名 A2 ロット A3 容量 A4 数量 Aシートの2行目のデータをBシートのそれぞれの欄に 自動的に入るという関数はありますでしょうか? ちなみにAシートのりんごのデータは2行目にくるか 3行目にくるかは分からないのでどこの行に入力しても Bシートに反映されるというようにしたいのです。 補足もしますのでどうか宜しくお願いします。

  • エクセルのカウント関数について教えて下さい

    おはようございます エクセルのカウント関数について教えていただきたいです。 A1セルに 「A10セル~Aデータ最終行の範囲に 入力されている数値を数えて表示」 させる式を入力したいのです。 COUNTの範囲として 「(RANGEで)A10からAデータ最終行を取得」しても エラーがでてしまいました。 良い方法がありましたがお教えください

専門家に質問してみよう