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

シートAに今年度と昨年度の比較表を作成しています。

シートB~シートEに各項目ごとの昨年度のデータが1月から12月まで記録されています。
記録は、各シートのセルD3~O3までに1月、2月、3月・・・と月があり、
D4~O58までに各項目の詳細項目データが記録されています。

仮にシートAのセルB5に2月と入力し、ボタンクリックで各シートの昨年度の2月の
データE3~E58までを、昨年度の各シートのデータ入力の最後尾セルP3~P58に
抽出し、シートAに反映したいのですが、マクロでの抽出は可能でしょうか?。

A 回答 (2件)

>昨年度の各シートのデータ入力の最後尾セルP3~P58に抽出



一旦、各シートの最後尾に抽出した後に、シートAに反映したいようですが、その理由は何ですか?
各シート最後尾への抽出さえできれば、その先はご自分で対応できるということでしょうか?
    • good
    • 0

>シートAに反映したいのですが


この部分の説明がないので、各シートのP列に入れる部分だけです。

シートAのB5セルは、書式をユーザー定義で 0"月" として数値だけを入力して下さい。
標準モジュールです。

Sub Sample()
Dim tuki As Variant
Dim sh As Worksheet
Application.ScreenUpdating = False
tuki = Worksheets("SheetA").Range("B5").Value
If tuki = "" Then
MsgBox "月が入力されていません"
Exit Sub
End If
For Each sh In Worksheets
With sh
If .Name <> "SheetA" Then
.Activate
.Range(Cells(3, 5), Cells(58, 5)).Copy Destination:=.Range("P3")
End If
End With
Next sh
Application.ScreenUpdating = True
Worksheets("SheetA").Select
End Sub
    • good
    • 0
この回答へのお礼

ご教示ありがとうございました。
希望通りにできました。
活用させていただきます。
また、よろしくお願いいたします。

お礼日時:2016/02/23 16:49

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