
Excel以下のシート1~3のシートから、シート4へ開催期間が早い順で並べたいのですが、どのような関数を使用すればよいのかわからず教えていただけませんか。どうぞ宜しくお願いいたします。
シート1、(B4~名前)、(C4~開催日)、(F4~概要)※今後も予定が決まり次第追記予定
シート2、(B5~名前)、(C5~開催日)、(F5~概要)※今後も予定が決まり次第追記予定
シート3、(B4~名前)、(C4~開催日)、(F4~概要)※今後も予定が決まり次第追記予定
シート4、(A2~日付早い順)、(B2~名前)、(C2~概要)※今後も予定が決まり次第自動で追加

No.5ベストアンサー
- 回答日時:
NO.3の場合同日日付が多数あるとエラーになるパターンがありましたので、作成し直しました。
一般数式です。少々短くなりました。<考え方>作業列に日付情報と行№情報とSheet№情報を含んだ数値を作成
①各シートのH列に作業列を作成
シート1はC4+(ROW()/100000)+0.000001
シート2はC4+(ROW()/100000)+0.000002
シート3はC4+(ROW()/100000)+0.000003
<例>C4セルが6/1の場合 44713.000041
整数部は2022/6/1のシリアル値
小数点第1位~5位までは行№
小数点第6位はSheet№
データ行まで下へコピペ
②開催日を抽出
シート4のA2
=IFERROR(SMALL(Sheet1:Sheet3!H:H,ROW(A1)),"")
③氏名(2列目)を抽出(ADDRES関数(開催日の小数点に含まれる行№とSheet№)でセル番地取得)
シート4のB2
=IFERROR(INDIRECT(ADDRESS(--MID(TEXT(A2,"#.00000"),FIND(".",TEXT(A2,"#.00000"))+1,5),2,,,"sheet"&RIGHT(TEXT(A2,"#.000000"),1))),"")
④概要(6列目)を抽出
シート4のC2
=IFERROR(INDIRECT(ADDRESS(--MID(TEXT(A2,"#.00000"),FIND(".",TEXT(A2,"#.00000"))+1,5),6,,,"sheet"&RIGHT(TEXT(A2,"#.000000"),1))),"")
②③④をデータ行分下へコピペ
No.4
- 回答日時:
№3です。
①の数式を変更します。(1000人まではOK!)シート1はC4+(ROW()/10) ⇒ シート1はC4+(ROW()/1000)
シート2はC5+(ROW()/100)⇒ シート1はC4+(ROW()/10000)
シート3はC4+(ROW()/1000) ⇒ シート1はC4+(ROW()/100000)
No.3
- 回答日時:
各シートに作業列を作成し、かつローテクで大変長い数式です。
手順は
①開催日をユニーク(各シート間やシート内に同一日付が存在する前提)にするため各シートのH列に作業列を作成
シート1はC4+(ROW()/10)
シート2はC5+(ROW()/100)
シート3はC4+(ROW()/1000)
データ行まで下へコピペ
②開催日を抽出
シート4のA2
IFERROR(SMALL(Sheet1:Sheet3!H:H,ROW(A1)),"")
(SMALL関数は串刺し範囲指定がOK!)
③氏名を抽出(列全体参照だと処理が重いので100行までを対象とした)
シート4のB2
CONCATENATE(
IFERROR(INDIRECT(ADDRESS(MAX(N(IF($A2=Sheet1!$H$1:$H$100,ROW(Sheet1!$C$1:$C$100)))),2,,,"sheet1")),""),
IFERROR(INDIRECT(ADDRESS(MAX(N(IF($A2=Sheet2!$H$1:$H$100,ROW(Sheet2!$C$1:$C$100)))),2,,,"sheet2")),""),
IFERROR(INDIRECT(ADDRESS(MAX(N(IF($A2=Sheet3!$H$1:$H$100,ROW(Sheet3!$C$1:$C$100)))),2,,,"sheet3")),"")
)
Ctr+Shift+Enterで確定入力
④概要を抽出(列全体参照だと処理が重いので100行までを対象とした)
シート4のC2
CONCATENATE(
IFERROR(INDIRECT(ADDRESS(MAX(N(IF($A2=Sheet1!$H$1:$H$100,ROW(Sheet1!$C$1:$C$100)))),6,,,"sheet1")),""),
IFERROR(INDIRECT(ADDRESS(MAX(N(IF($A2=Sheet2!$H$1:$H$100,ROW(Sheet2!$C$1:$C$100)))),6,,,"sheet2")),""),
IFERROR(INDIRECT(ADDRESS(MAX(N(IF($A2=Sheet3!$H$1:$H$100,ROW(Sheet3!$C$1:$C$100)))),6,,,"sheet3")),"")
)
Ctr+Shift+Enterで確定入力
※開催日(H列)がどのシートに存在するか不明なので、シート毎に検索し、
CONCATENATE関数で連結(存在しないシートはエラーなので””(ブランク)が
返るので存在したシートの値だけになる)
⑤③と④の数式をデータ行分下へコピペ
※①②は一般数式 ③④は配列数式(CSE)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルで”入力シート”の文字書式の変更を”出力シート”で同じ文字書式で印刷したいです。VBA希望 4 2023/04/24 11:07
- Excel(エクセル) ②Excel 簡単にシートコピーしたら前日の残高と日付を変更させたい→マクロの記録でエラーが出ます 8 2022/07/16 20:40
- Visual Basic(VBA) 2つの条件に合うセルにデータを転記したい 4 2022/12/02 11:05
- Visual Basic(VBA) ExcelのVBAを使い、複数シートの同一箇所を、同一条件にて一括でソルバーを回す方法について 1 2022/04/23 11:49
- Excel(エクセル) 複数のブックをひとつのブック(複数のシートにまとめる)場合にシートとの順番について 5 2022/12/28 20:47
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- Excel(エクセル) 列を自動で追加したい 3 2022/07/11 12:58
- Visual Basic(VBA) 特定の文字を含むシートだけマクロ処理をしたい 1 2023/05/22 01:43
- Visual Basic(VBA) 顧客ごとに違う点検案内を作成するマクロ 4 2022/09/16 05:34
- Excel(エクセル) エクセルの条件付き書式 個人シートを参照して集計シートに色付けしたい 1 2023/06/22 00:39
このQ&Aを見た人はこんなQ&Aも見ています
-
【Excel関数】別シートに日付順でデータを抽出する方法
Visual Basic(VBA)
-
複数のシートの日付データを、別のシートで並び替え
その他(Microsoft Office)
-
入力後に日付順になるように自動で並び替えしたいのです。
Excel(エクセル)
-
-
4
複数のシートで散在するデータを日付順にナンバリングする方法
Excel(エクセル)
-
5
エクセルで日付順で抽出
Excel(エクセル)
-
6
Excelでの並べ替えを全シートまとめて処理したい
Excel(エクセル)
-
7
Excelで2つの表を1つにまとめるには?
Excel(エクセル)
-
8
エクセルの表で条件(日付別)にあてはまる行を 別シートに順番に抽出されるような関数を教えてください
Excel(エクセル)
-
9
エクセルの関数について教えてください
Excel(エクセル)
-
10
Excel 複数シートから条件にあったデータを抽出したい
Excel(エクセル)
-
11
日付が未入力の際はゼロか、空白にしたい
その他(Microsoft Office)
-
12
excelで、空白を除いてデータを抽出する方法について
Excel(エクセル)
-
13
本日の日付とマッチした列の値を抽出
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで複数のシートをフォ...
-
フォルツァ バッテリーを外して...
-
括弧があるとHYPERLINKで飛べな...
-
XR250BAJAのシートのはずし方を...
-
建築模型、カーブの作り方
-
軍事車などが覆っている、シー...
-
車のシートがへたってきました...
-
カッティングシートの上からア...
-
原付 レッツシート開け方
-
ホンダジョルノのイス シート...
-
水の染み込んだバイクのシート...
-
リアシート無しで運転してたら...
-
飛行機の座席について 3列シー...
-
エスティマのコンソールボック...
-
TEINのFLEXZに関しての質問です...
-
バイクのシートに傷
-
ホワイトボードの復活
-
はじめまして。古いクレアスク...
-
エクセルVBA:他シートを選択す...
-
95年式 Audi A6について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで複数のシートをフォ...
-
括弧があるとHYPERLINKで飛べな...
-
原付 レッツシート開け方
-
BRIDEのシート張り替えってでき...
-
電車のシートって何でこんな暑...
-
ポケットにミシンでワッペンを...
-
エクセルVBA 4行飛ばしで転記す...
-
車のシートがへたってきました...
-
フォルツァ バッテリーを外して...
-
IHクッキングヒーターの操作パ...
-
Excel複数シートから日付と文字...
-
シートベルトの固定解除
-
中学生です。体育館の床に敷く...
-
リアシート無しで運転してたら...
-
癒着してしまったテレビの液晶...
-
台所流しの水音を小さくしたい
-
マジェスティ(4HC)のシート下...
-
水の染み込んだバイクのシート...
-
Excel VBA シート名変更時、重...
-
Google スプレッドシート:FILT...
おすすめ情報
Belltreeriverさん
詳細本当にありがとうございます!EXCEL初心者なので細かく教えていただき感謝です。
現在使用しているシートがGoogleスプレッドシートなのですが、
>②開催日を抽出
>シート4のA2
>=IFERROR(SMALL(Sheet1:Sheet3!H:H,ROW(A1)),"")
上記内
(Sheet1:Sheet3!
の3シートを選択すると式としては無効となってしまいます。
Googleスプレッドシートの仕様なのかなんなのかがわからず、、
もしGoogleスプレッドシートで3シートをうまく選択して式をアクティブにすることをご存じでありましたらご教示いただけませんでしょうか。
厚かましいご質問ですみませんが、もしご存じでしたら回答いただければありがたいです。