エクセルで、複数のシートから条件にあうデータを抽出して新しいシートにデータを出力したいと思っています。つまり、クエリー機能をエクセル内部のシートに対して使いたいと思うのですが、適切な方法を教えて下さい。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2007/09/27 19:22:49
  • 終了:2007/10/04 19:25:03

回答(3件)

id:hayashi7 No.1

hayashi7回答回数95ベストアンサー獲得回数12007/09/28 23:36:45

id:fwix3503

回答有り難うございます。外部データベースではなく、エクセルの同一ファイルのシートに対するクエリーあるいはそれと同等の機能に関する情報を希望しています。

2007/10/01 13:25:45
id:minkpa No.2

minkpa回答回数4178ベストアンサー獲得回数552007/09/30 01:48:22

id:fwix3503

回答ありがとうございます。オートフィルター機能では、同一シート内での作業になります。新しいシートへの抽出はできません。シート間のリレーション機能も使えないので、不十分ですね。

2007/10/01 13:25:47
id:airplant No.3

airplant回答回数220ベストアンサー獲得回数492007/10/01 23:30:41

ポイント26pt

このような操作したいことありますよね。

同じ様式なら、私は全部のシートをくっつけて1つにしてから、フィルターしています。


だいぶ前に作ったマクロを参考までに掲載しておきます。

Sub すべてのシートを一つにまとめる()
'
' Call MoveNsheets2ONE()
' すべてのシートを一つにまとめる。様式は、1枚目のシートをベースにする
'
' IN:   シート全部→削除される
' OUT:  「集合シート」が1枚できる

'
    Dim iSheetCNT As Integer
    Dim sSaveSheet As String
    Dim i As Integer
    Dim iCurRow As Integer
    Dim iSaveRow As Integer
    Dim iSaveSheet As Integer
    
    sSaveSheet = "集合シート"
    iSheetCNT = Sheets.Count
    
    Sheets(1).Copy before:=Sheets(1)
    ActiveSheet.Name = sSaveSheet
    Cells.Select
    Selection.ClearContents
    Range("A1").Select
    iSaveSheet = 1
    iSaveRow = 1

    For i = 1 To iSheetCNT
        
        Worksheets(2).Select                'Copy元(常に2個目)
        Range("A1", ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Address).Select
        Selection.Copy
        iCurRow = Selection.Areas(1).Cells.Rows.Count
        
        Sheets(sSaveSheet).Select           'Copy先
        Range("A" & CStr(iSaveRow)).Select
        ActiveSheet.Paste
        
        Worksheets(2).Select                'Copy元削除(常に2個目)
        Application.DisplayAlerts = False
        ActiveWindow.SelectedSheets.Delete
        Application.DisplayAlerts = True
        
        iSaveRow = iSaveRow + iCurRow
    
    Next i
    Range("A1").Select

End Sub

http://www.google.co.jp

id:fwix3503

回答有難うございます。エレガントなマクロですね。大変参考になりますが、私のケースではシート間で列数や項目が異なっているため、そのままでは使えません。やはり、個別にマクロを組むしかないですかね。

2007/10/02 19:46:21

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません