プロが教える店舗&オフィスのセキュリティ対策術

現在、

シートAにて
行に日付(365日)、列に数値で管理しております。

シートBにて
土曜日のみデータを抽出しようとしております。

行に土曜日のみの日付、列にシートAの数値を抽出。

初めの土曜日は、「=シートA !D48」
次の土曜日は、「=シートA !D55」

という形で入力し、この2つを複数選択しオートフィルをしてD48、D55、D62、D69、、、、、
としていきたかったのですがどうもうまくいきません。

失敗した結果↓
日付 「=シートA !D48」
日付 「=シートA !D55」
日付 「=シートA !D50」
日付 「=シートA !D57」

理想↓
日付 「=シートA !D48」
日付 「=シートA !D55」
日付 「=シートA !D62」
日付 「=シートA !D69」


このようにするには、どのようにすればよろしいでしょうか?


また、そもそもこのような形では無く、別の関数を使った方が楽な方法はあるのでしょうか?
お手数ですが、ご教授よろしくお願いします。

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

A 回答 (4件)

こんにちは!



>この2つを複数選択しオートフィルをして・・・
とありますが、D列以外の列が不明なので、
とりあえずD列だけでやってみました。
最初のセルはD48と決まっている訳ですね?

表示したいセルに
=INDIRECT("シートA!D"&48+7*(ROW(A1)-1))
または
=OFFSET(シートA!D$48,7*(ROW(A1)-1),,1)
という数式を入れ、フィルハンドルで下へコピーしてみてください。

※ 元データの配置が判って、どの列を表示したいのかが判れば
具体的なアドバイスができると思います。m(_ _)m
この回答への補足あり
    • good
    • 0

No.1です。



せっかく画像をアップされるのであれば、行・列番号も判るような画像の方がよかったのですが・・・

とりあえずやり方だけ。
「シートA」の日付列はシリアル値のようですので、
↓の画像のように「シートA」に作業用の列を設けます。
作業列C2セルに
=IF(AND(A2<>"",WEEKDAY(A2)=7),ROW(),"")
という数式を入れフィルハンドルでずぃ~~~!っと下へコピーしておきます。

そして「シートB」のA2セルに
=IF(COUNT(シートA!$C:$C)<ROW(A1),"",INDEX(シートA!A:A,SMALL(シートA!$C:$C,ROW(A1))))
という数式を入れ隣りのB2セルまでフィル&コピー!
A2セルの表示形式は「日付」にします。

最後にA2・B2セルを範囲指定 → B2セルのフィルハンドルで下へコピーすると
画像のような感じになります。m(_ _)m
「エクセルで別シートの特定曜日の数字のみ抽」の回答画像4
    • good
    • 0

[No.2補足]へのコメント、


「今ひとつ表示されなかった」が曖昧に過ぎる表現だし、貴方の「こういう感じ」が「どういう感じ」か理解できないので、コメントできません。
キャッチボールは好きでないので、文学的な曖昧表現は避けて、Excel に相応しい具体的な記述を望みます。
    • good
    • 0

=OFFSET(シートA!D$48,(ROW(A1)-1)*7,)

この回答への補足あり
    • good
    • 0

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