痔になりやすい生活習慣とは?

エクセルで、マクロを使わずに、やってみたいのです。
シフトの勤務表があります。
B4~B18に氏名が入ってます。
Cが、1日で AGが、31日です。
C4~AG4
C18~AG18
ここに、勤務予定が入ってます。
日(日勤) 準(準夜勤) 深(深夜勤) とかです。

ここで、別シートに、
準夜勤の氏名一覧表を、作りたいのです。
1日は
C4 C5 C6
ここに、氏名が出るようにしたいのです。

2日は、
D4 D5 D6 です。

最初に書きましたが、マクロは使えないので、(能力不足)
使わずにできる方法を、教えてください。
よろしくお願いします。

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

A 回答 (3件)

ご質問の内容を解決するには、以下の手順を行ってください。


sheet2が準夜勤の氏名一覧表となります。
1 sheet1にご説明のシフトの勤務表様式を作成する。
2 sheet2にへ氏名のB列を除いて、全く同じ様式を複写します。
※便宜上、以降の説明の中で、sheet1を(1)、sheet2を(2)とします。
3 (1)のB4~B18を範囲指定しておき、ツールバーの「挿入(I)」を
 クリックします。
4 挿入のドロップダウンメニューから「名前」を選択します。
5 名前のドロップダウンメニューから「定義」を選択します。
6 「名前の定義」というダイアログボックスが開きますので、
 一番上の入力欄に「B4~B18」に付ける名前を入力し、OKを
 クリックします。
 ※ここでは便宜的に、「氏名」と名付けます。
7 (2)を開きC4セルをクリックし、以下の計算式を入力します。
  =IF(Sheet1!C4="準",氏名,"")
8 C4の計算式をクリック&ドラッグで、C4~AG18の範囲に複写します。

  以上です。

 注1 IF文の論理式が偽の場合ですが、後で表を改良して、セルの
   値を調べる必要が出てくる場合もありますので、ZEROや空白
   (スペース)でなく、null("")を指定しておく方がBetterと
   思います。
 注2 IF文中の(1)のシート名ですが、計算式作成後にシート名を
   変更した場合、自動で計算式内のシート名も変更されます。
 注3 計算式の入力時、(1)シート名の入力はキーボードからタイプ
   しなくても、(1)のC4をクリックすれば自動的に挿入されます。 

この回答への補足

早々のご教授ありがとうございます。
さっそく、やってみました。
氏名が表示できるようになりました。

勤務者の氏名のピックアップが、やりやすくなりました。

無理を言うようですが、
準夜勤者が、3名と決まっています。
C4~AG18の範囲内に名前が出るのでなく、
C4~E18
この3行に 3名の名が出るようになると、
ピックアップせずに済みます。

このようにバージョンアップすることは、可能でしょうか?

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

補足日時:2008/05/10 10:58
    • good
    • 5
この回答へのお礼

勉強になりました。
詳しいご説明ありがとうございました。

お礼日時:2008/05/11 08:13

すみませんでした。


今、最初の質問を読み返したら、補足質問の内容が出てました。
最初から、このスペックだったんですね。
内容をよく確認せずに、簡単に回答してしまったようです。
失礼しました。
    • good
    • 0
この回答へのお礼

ありがとうございました。

お礼日時:2008/05/11 20:45

 3名の準夜勤者の氏名を、横に連続した3つのセルに表示したいとの


要望で良いですね?
 一般に、Excelのデータベース系関数(Lookup系 Dget etc.)はデータベースの
検査を行い、検査値が見つかった時点で、その検査を停止します。
  ※データの個数をCountする場合は除く
 このため、準夜勤者の氏名を検索し、最初の1名の氏名を見つけた
時点で、検査は終了してしまいます。
 以上のことから、Excelのデータベース系関数を用いてご要望の
内容を実現する事は難しいです。
 マクロを使用しないという前提で考えると、文字列操作系の関数を
複数+データ仮置用シート等を使用して機能を実現する事になると
思います。
 不可能ではありませんが、相当に面倒な作業ですね。
 20年位前に、BASICで似たような事をやった覚えが有りますが、
Excelの関数では、私も未経験です。
 もう少し時間を頂いて、整理してみたいと思います。
 回答の字数制限、800字以内で説明できるか、どうか…
 ところで補足質問の内容ですが、ご要望の様式は準夜勤者の氏名を
横に並べるということですね。
 この場合1日から31日の日付は縦に並ぶという事ですか?
 sheet1やsheet2の様式から変更して、このシートだけ日付と氏名の
縦横が入れ替わると相当面倒になります…
 縦に3名並べて横に日付の方が、よろしいかと思いますが。
 

この回答への補足

丁寧なご説明ありがとうございます。

ご指摘とおり 縦に3名並べます。

エクセルの関数として、最初に見つかった時点で、
検索をやめるという性質もよくわかりました。

800字以内で、ご説明できないことに関して、
私も初心者ですので、あまり難しことは、できませんので、

一度に書きだすのでなく、最初にピックアップしたシートを、
縦3行に書き出すようにやってみたいと思います。

どうもありがとうございました。

補足日時:2008/05/11 08:02
    • good
    • 0

このQ&Aに関連する人気のQ&A

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

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

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

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

Qエクセルで、勤務表から 日付別に勤務者と勤務形態を抽出して、別シートに抽出したい

Sheet 1 勤務表(4月)
    A     B     C      D…
        4/1      4/2    4/3 …

1 赤星     早1    夜勤入り  夜勤明け …
2 関本    遅1    早1    早1   …
3 新井    休     遅1    早2   …
4 金本    夜勤入り  夜勤明け  休    …
5 ブラぜル  夜勤明け 休     遅1   …
6 桜井    休     早2    遅2   …
7 鳥谷    早2    遅2    早3   …
8 狩野    遅2    早3    休    …
9 藤川    早3    休     夜勤入り …

以上のような、勤務表、(各列には、日付、各行には、従業員の名前が9人)が、あり、毎日、早番 3種類、遅番 2種類、夜勤入り 1人、夜勤明け 2人、休み、のデータが入っています。(ずれていたら、すいません)
これを、Sheet 2以降に、日付ごとに、出勤している従業員名と、そのとなりのセルに、その従業員の勤務種別を抽出して、表示したいのです。しかも、夜勤入り、夜勤明け、休みは表示させたくありません。)例えば、こんな感じです。

Sheet 2   Sheet 3    Sheet 4
(4月1日)    (4月2日)    (4月3日)
赤星 早1     関本 早1  関本  早1
関本 遅1     新井 遅1  新井  早2
鳥谷 早2     桜井 早2   ブラぜル 遅1
狩野 遅2     鳥谷 遅2   桜井  遅2
藤川 早3     狩野 早3    鳥谷  早3 

いろいろとムシのいい話を書いて申し訳ありませんが、当方vbaの初心者で、このような場合、何から手を付けて良いのか分からず、困っております。どうか、なにとぞ、ご教授下さい。

Sheet 1 勤務表(4月)
    A     B     C      D…
        4/1      4/2    4/3 …

1 赤星     早1    夜勤入り  夜勤明け …
2 関本    遅1    早1    早1   …
3 新井    休     遅1    早2   …
4 金本    夜勤入り  夜勤明け  休    …
5 ブラぜル  夜勤明け 休     遅1   …
6 桜井    休     早2    遅2   …
7 鳥谷...続きを読む

Aベストアンサー

回答No3です。
ごめんなさい。肝心の式の表示が抜けておりました。
A15セルには次の式を入力し、下方にオートフィルドラッグします。
=ROW(A3)
B15セルには次の式を入力し右方向にオートフィルドラッグしたのちに下方向にもオートフィルドラッグします。
=IF((IF(B3="早1",1,0)+IF(B3="早2",1,0)+IF(B3="早3",1,0)+IF(B3="遅1",1,0)+IF(B3="遅2",1,0))=0,"",MAX(B$14:B14)+1)

Qエクセルで勤務表の出勤者を抜き出したい。 日付 名前 5/16 5/17 5/18 5/19 田中

エクセルで勤務表の出勤者を抜き出したい。

日付
名前 5/16 5/17 5/18 5/19
田中 出勤 休 出勤 休
鈴木 休 出勤 休 出勤
佐藤 出勤 出勤 出勤 休


と言う表があって別のシートに日付を入れると
出勤となっている人の名前を引っ張ってくる様にしたいのですがどうすれば出来ますか?
あまり詳しくないので細かく教えて下さい。

5/16 田中 佐藤

Aベストアンサー

こんにちは!

↓の画像のように元データはSheet1にあり、Sheet2のB1セル以降1行目に表示するとします。
Sheet2のA1セルに日付を入力するとし、
Sheet2のB1セルに
=IFERROR(INDEX(Sheet1!$A1:$A100,SMALL(IF(OFFSET(Sheet1!$A1:$A100,,MATCH($A1,Sheet1!1:1,0)-1)="出勤",ROW($A1:$A100)),COLUMN(A1))),"")

配列数、Ctrl+Shift+Enterで確定! → B1セルのフィルハンドルで右へコピーすると
画像のような感じになります。m(_ _)m

Qエクセルで出勤表から出勤者の名前を出したいのですが。

エクセルで出勤表から出勤者の名前を出したいのですが。

介護施設に勤務しています。A~E(職員名とする)までの5人が勤務しているとします。今ここに、縦がA~E、横が月日のエクセルの表(表1とする)があるとします。
仮に6月1日はA,B,Cの3人が出勤で表の該当セルに○が入力されています。6月2日はB,D,Eが出勤で同様に○が入力されています。こんな感じで月末までの勤務表が出来ているとします。

ここで別のシートに「今日の出勤者」として当日の出勤者を表(表2)に出したいと思っています。
私が望んでいるのは、表1の希望の月日をクリック、もしくは入力すると、自動で表2のセルにその日の出勤者だけの名前が返せればいいのですが・・・。
本日の出勤者として本部に名前入りの表をあげないといけなく、これまでは表1から該当日の○を数えては、その職員名を手書きで書いて送っていました。この煩雑な作業を効率化したいと思っています。
よろしくご教授お願いいたします。

Aベストアンサー

日付をクリックした場合に実行する場合は以下のようなマクロを使用します。
使用した表と実行結果は画像の通りです。
このプログラムの場合1行目をクリックした場合に実行されます。
もしマクロで行うのであれば試してみてください。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim i As Integer
Dim iRowNo As Integer
iRowNo = 1
If Target.Row = 1 And Target.Column <> 1 Then
Worksheets("Sheet2").Columns(2).Clear
For i = 2 To 6
If Cells(i, Target.Column).Value = "○" Then
Worksheets("Sheet2").Cells(iRowNo, 2).Value = Cells(i, 1).Value
iRowNo = iRowNo + 1
End If
Next
End If
End Sub

日付をクリックした場合に実行する場合は以下のようなマクロを使用します。
使用した表と実行結果は画像の通りです。
このプログラムの場合1行目をクリックした場合に実行されます。
もしマクロで行うのであれば試してみてください。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim i As Integer
Dim iRowNo As Integer
iRowNo = 1
If Target.Row = 1 And Target.Column <> 1 Then
Worksheets("Sheet2").Columns(2).Clear
For i = 2 To 6
If Cells(i, Target.Col...続きを読む

Q月のシフト表から当日のシフトを抽出したいです

VlookupとIF程度の関数しかわからないため困っております。
どなたかご教示頂けましたら助かります。
画像にあるように月のシフト表から別シートに当日のシフトだけを抽出したいです。
画像はサンプルなので数日分だけで人数は7名ですが、本来は1か月分で80名ほどです。
毎日、月シフトのシートから当日分のシフトをコピーして本日シフトのシートへ行列を入れ替えて貼付しています。
部署が16拠点あるので毎日各部署毎にコピーして貼付ける作業を16回しており時間を取られています。
これを自動で本日のシフトの表に表示したいというのが希望です。

Aベストアンサー

>Vlookupですと人の異動のたびにメンテが必要であきらめました。
どのような変更を行っていたか(問題点があったのか)実際に示されていないので
たぶん、大丈夫だろうくらいですが。

B14セルに
=INDEX($B$4:$H$10,MATCH(B13,$A$4:$A$10,0),MATCH($H$1,$B$2:$H$2,0))
右へオートフィル
添付図参照

Qエクセル シフト表から名前検索して他のシートに反映させたい

エクセルであるシートに、シフト表から「早番」の人を検索して、さらにその人の名前を反映させるにはどのような関数を入れれば良いのでしょうか?

右のシート②に()の中に反映させたいのですが・・・分かりづらくてすいません。
   
シート①シフト表         シート②
   1日 2日 3日      1日 早番 (松田)
松田 早番         →     遅番 (菅井)
菅井 遅番

Aベストアンサー

=IFERROR("("&INDEX(Sheet1!A:A,MATCH(B1,INDEX(Sheet1!B:D,,MATCH(A$1,Sheet1!B$1:D$1,0)),0))&")","")

Qエクセルのセルでシフト表を作っているのですが、それを別のシートに反映させたいのですが、どのようにすれ

エクセルのセルでシフト表を作っているのですが、それを別のシートに反映させたいのですが、どのようにすればよろしいのでしょうか?
A2〜A20まで人の名前が入っています。
B1から横に日付が入っています。
その日の担当で朝、昼、空白の人がいます。
休みの人は○、◎と有給と入っています。

シフト表だと一ヶ月分の表記なので見にくい為、貼り出し用に1日分だけを抽出したいのです。(1日分の朝担当の人の名前。空白の人の名前。休みの人の名前)

パソコンあまり詳しくないのですが、詳しい方回答お願いします。

Aベストアンサー

添付図参照
I1セルに日付
J2セルに
=IF(COUNTIF(INDEX($B$2:$G$20,,MATCH($I$1,$B$1:$G$1,0)),J$1&"")<ROW(A1),"",
INDEX($A$2:$A$20,SMALL(IF(INDEX($B$2:$G$20,,MATCH($I$1,$B$1:$G$1,0))=J$1,ROW($A$2:$A$20)-1),ROW(A1))))
[Ctrl]+[Shft] +[Enter] で確定、配列数式。{ }で挟まれる
右へ下へオートフィル
I:O列を切り取って貼り付け
適宜、範囲を変更してください
改行まではエラー処理なのでXL2007以降ならIFERROR関数使ってください
参考まで

Q月間勤務表から1日~31日までの各日付ごとに出勤している職員を書き出す方法

月間勤務表から週間勤務表をつくるのに、出勤している職員を抽出して自動かしたいので
手始めに1日~31日までの各日付ごとに職員を抽出する方法を考えたのですがVLOOKUPは使えなさそうなので何かほかの
方法はない物かと、模索していましたが行き詰ってしまいました。
皆様のお力おかしください。

添付した画像が私が使っているエクセルで作製した月間勤務表となります。名前の列に
8・5・7.5が記入してあるのが出勤という意味です、⑧は有給で研は研修と言う意味です。

抽出した名前は別シートに貼り付けたいと思っております。
説明の至らぬ点が多々あるとは思いますが、宜しくお願い致します。

Aベストアンサー

続けてお邪魔します。

>0と表示される個所が所々ありました・・・
「0」が表示されるのは対象セルが空白の場合にそのようになります。

ん~~~
お示しの画像の配置だとかなり厄介ですね。
画像を拝見して、「月間シフト貼り付け」シートのC列氏名は41行目までだと解釈しました。
かなり強引にやってみました。

Sheet2(日付ごと出勤名簿)のA2セルに
=IFERROR(INDEX(月間シフト貼り付け!$C$7:$C$41,SMALL(IF((月間シフト貼り付け!$C$7:$C$41<>"")*(NOT(ISNUMBER(FIND("計",月間シフト貼り付け!$C$7:$C$41))))*((月間シフト貼り付け!F$7:F$41=8)+(月間シフト貼り付け!F$7:F$41=5)+(月間シフト貼り付け!F$7:F$41=7.5)),ROW($A$7:$A$41)-6),ROW(A1))),"")

前回同様、配列数式なのでCtrl+Shift+Enterで確定し
フィルハンドルで列・行方向にコピーしてみてください。

※ 万一、C列氏名に 「計」が含まれる名前(たとえば「加計学園」など)のセルは無視されてしまいます。

※ 本来であればC列(名前列)には名前以外の項目を入れない方が簡単です。m(_ _)m

続けてお邪魔します。

>0と表示される個所が所々ありました・・・
「0」が表示されるのは対象セルが空白の場合にそのようになります。

ん~~~
お示しの画像の配置だとかなり厄介ですね。
画像を拝見して、「月間シフト貼り付け」シートのC列氏名は41行目までだと解釈しました。
かなり強引にやってみました。

Sheet2(日付ごと出勤名簿)のA2セルに
=IFERROR(INDEX(月間シフト貼り付け!$C$7:$C$41,SMALL(IF((月間シフト貼り付け!$C$7:$C$41<>"")*(NOT(ISNUMBER(FIND("計",月間シフト貼り付け!$C$7:$C$41)))...続きを読む

Qエクセルで出勤シフト表中の数字から別シートで名前入りの出勤表を作成したい

エクセル初心者です。
勤務は午前、午後、いずれも2名体制ですが、各自の都合があるので毎月出勤シフト表を組んでいます。午前と午後で勤務時間も違い、時折午前休みもあります。月の出勤日数(午前、午後の回数)や勤務時間の合計を出しやすいことからシート1のように、出勤する人には「1」を入力した月別勤務表を作成。ここからが本題です。
シート1で出勤することになった人(「1」を入力した人)を別シート2で名前を出したいです。シート2でプルダウンメニューを使えば名前が入ることは知っていますが、シート1の「1」の入力からシート2の名前を導き出す数式はありますか?

Aベストアンサー

数式を拝見しました。

おそらく最後のCOLUMN関数でB列を指定しているためだと思います。
このCOLUMN関数はSMALL関数「順位」(何番目か?)を求めている関数なので
B列を指定してしまうと「2番目」から表示されます。
(B1、B100、B1000でも列番号ですのですべて「2」となります)

表示したいのは配列数式が「TRUE」の行の小さい順から1番目と2番目ですので、
かならずA列から指定してやる必要があります。
お示しの数式ではおそらく2番目・3番目が表示されるのでは?

数式内の
>COLUMN(B2)
の部分を
>COLUMN(A1)
(もちろんCOLUMN(A2)でも問題ありません)
に変更したらどうなりますか?m(_ _)m

Q【EXCEL】シフト表から休みの日だけを抽出する方法をご教授ください。

いつも大変お世話になっています。
申し訳ありません。どなたかお力をお貸しください。

1ヶ月のシフト表から休みの日を抽出したいのです。
休みの日の記号は常に【X】です。(=Xを抽出したいのです)
出勤日の記号は英数字で、最大5桁まであります。

【拡大図】
  A  B    C      D      E      F
1 No 氏名  2009/4/1 2009/4/2  2009/4/3 2009/4/4   
2 123 山田   A      B     B      B
3 124 佐藤   A      B     B      X
4 125 田中   X       X     A      A
5 128 清水   C       B     X      A
6 025 上田   C       B     X      A

【縮小図】
A  B   C DEFGHIHIJKLMNOPORSTU
1  NO 氏名 日日日日日日日日日・・・・・・
2 123 山田 ABBBAXXAAAAAXXBBBBBXXAAAAAXXAA
3 124 佐藤 ABBXXAAAAAXXBBBBBXXAAAAAXXAABB
4 125 田中 BXXAAAAAXXBBBBBXXAAAAAXXAABBAA
5 128 清水 CBXABBBBXXXBBBBCCCCXAAAAAXXXAA
6 025 上田 CBXABBXBAAABBXBCXCCXAAAAAXXXAA

【やりたいこと】
※No(=社員No)、氏名、休みの日を別シートに表示したいのです。
※オートフィルタを使って、日毎に手動でやることは避けたいです。
   A  B   C
1  No 氏名 休日    
2  123 山田 2009/4/6
3  123 山田 2009/4/7
4  123 山田 2009/4/13
5  123 山田 2009/4/14
6  123 山田 2009/4/20
7  123 山田 2009/4/21
8  123 山田 2009/4/27
9  123 山田 2009/4/28  
10 124 佐藤 2009/4/4
11 124 佐藤 2009/4/5
12 124 佐藤 2009/4/11
13 124 佐藤 2009/4/12
  ・
  ・
  ・
  ・  
申し訳ありませんが、
どなたかご教示をお願いします。

いつも大変お世話になっています。
申し訳ありません。どなたかお力をお貸しください。

1ヶ月のシフト表から休みの日を抽出したいのです。
休みの日の記号は常に【X】です。(=Xを抽出したいのです)
出勤日の記号は英数字で、最大5桁まであります。

【拡大図】
  A  B    C      D      E      F
1 No 氏名  2009/4/1 2009/4/2  2009/4/3 2009/4/4   
2 123 山田   A      B     B      B
3 124 佐藤   A      B     B...続きを読む

Aベストアンサー

関数での答えを求めているレベルと思うが、こういう(形式で)
ーーー 日
氏名  データ
の3元になっている表を且つ(氏名・行単位で)重複が有る休日(データではX)を抜き出すのはむつかしい。
すんなりとやるにはVBAが簡単。
氏名ー日ーデータ(Xの行あり)
・・・
の形式なら、例えば「imogasi方式」(Googleで照会のこと)のようなやり方で何とかできる。
前者から後者の形式に関数で表を構築替えも難しい。
関数は第2番目、第3番目・・の該当列を見つける関数が無いからだ。
関数の回答が出るかどうか?
ーーーーーーーーーーーーー
質問者には現在は無縁だろうが、読者のこともありVBAで上げておく。
例データ
Sheet1
A-G列
1No氏名2009/4/12009/4/22009/4/32009/4/4
2123山田ABBB
3124佐藤ABBx
4125田中xxAA
5128清水CBxA
625上田CBxA
ーー
結果
Sheet2
A2:C6 C列は表示形式を日付にしておくこと。
124佐藤2009/4/4
125田中2009/4/1
125田中2009/4/2
128清水2009/4/3
25上田2009/4/3
ーーーー
コード
標準モジュールに
Sub test01()
Dim sh1, sh2 As Worksheet
Set sh1 = Worksheets("Sheet1"): Set sh2 = Worksheets("Sheet2")
d = sh1.Range("B65536").End(xlUp).Row '最下行
k = 2 'Sheet2で第2行から書き出し
For Each cl In sh1.Range("d2:G" & d) 'D2:Gx範囲の全セル検査
If cl = "x" Then 'xならSheet2へ書き出し
sh2.Cells(k, "A") = sh1.Cells(cl.Row, "B")
sh2.Cells(k, "B") = sh1.Cells(cl.Row, "C")
sh2.Cells(k, "C") = sh1.Cells(1, cl.Column)
k = k + 1
End If
Next
End Sub
で実行。
If cl = "x" Then のxは表のセルのxと半角全角など合わせること。

関数での答えを求めているレベルと思うが、こういう(形式で)
ーーー 日
氏名  データ
の3元になっている表を且つ(氏名・行単位で)重複が有る休日(データではX)を抜き出すのはむつかしい。
すんなりとやるにはVBAが簡単。
氏名ー日ーデータ(Xの行あり)
・・・
の形式なら、例えば「imogasi方式」(Googleで照会のこと)のようなやり方で何とかできる。
前者から後者の形式に関数で表を構築替えも難しい。
関数は第2番目、第3番目・・の該当列を見つける関数が無いからだ。
関数の回答が出る...続きを読む

Q【エクセル】表から条件に合ったデータを別シートに順番に抽出したい

エクセルの表である条件にあてはまる行を
別シートに順番に抽出されるような関数を教えてください。


シート1のB列にあるデータが"渋谷区"のとき
シート2のE74からE80くらいまでに
シート1のC列のデータを上から順に抽出されるようにしたいです。

【シート1】
A        B         C
1 東京都 渋谷区  PC
2東京都  港区  PC
3東京都 新宿区  マウス
4東京都 渋谷区  ペン
5東京都 渋谷区  モニタ



10

【シート2】

E
74 PC
75 ペン
76 モニタ



80 


【補足】
元の表(シート1)を編集することがあるので
自動的に反映されるよう、関数で作成できたらと思います。
シート2の構成上、抽出後のソートや、フィルタオプションは避けたいです。

わかりづらい文章で申し訳ございませんが
どなたかいいアドバイスがありましたら教えてください。
お礼は明日になってしまいますが、必ずご返答いたします。
よろしくお願いいたします。

 

エクセルの表である条件にあてはまる行を
別シートに順番に抽出されるような関数を教えてください。


シート1のB列にあるデータが"渋谷区"のとき
シート2のE74からE80くらいまでに
シート1のC列のデータを上から順に抽出されるようにしたいです。

【シート1】
A        B         C
1 東京都 渋谷区  PC
2東京都  港区  PC
3東京都 新宿区  マウス
4東京都 渋谷区  ペン
5東京都 渋谷区  モニタ



10

【シート2】

E
...続きを読む

Aベストアンサー

>E74に関数を入力し、その後関数をE80までドラッグすればよいのでしょうか?
いいえ。
1.
=INDEX(シート1!C1:C11,SMALL(IF(シート1!B1:B10="渋谷区",ROW(A1:A10),11),ROW(A1:A10)))&""
の数式を掲示板上でコピーします(シート名は合わせてください)
2. E74:E80セル範囲を選択します
3. 数式バーで[Ctrl]+[V]貼り付け
4. [Ctrl]+[Shift] +[Enter] でセルへの入力を確定させます

>その際、絶対参照や相対参照は必要でしょうか?
セルのコピーはしませんので不要です。
参考まで


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

人気Q&Aランキング