[[20100329113327]] 『マクロでデータ抽出』(のびた) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『マクロでデータ抽出』(のびた)
 WinXP Excel2002

 フィルタオプションの設定を使ったマクロを設定したのですがデバックが出て
 しまってうまく使えません。

 今作っているマクロは
 Aというシートを元にB・Cへ必要なデータを抽出すると言うマクロです。
 Bのシートは条件通りにデータが抽出されるのですがCのシートに移ると
 デバックを起こしビジュアルベーシックを見るとAのシートの範囲が黄色く色が
 ついています。

 1つの表を元に複数のシートへのデータ抽出はマクロでは不向きなのでしょうか?

 ちなみに手作業での抽出はうまく行くのですが・・・・

 実際のコードとエラー内容を提示してくれませんか?
 (独覚)

 独覚さんよろしくお願いします。
 いつもでバックが出る部分は★マークを付けた部分です。

    Sheets("kwzweb (2)").Select
    Sheets("kwzweb (2)").Name = "リスト"
    Sheets.Add
    Sheets("リスト").Select
    Sheets("リスト").Move Before:=Sheets(2)
    Sheets("Sheet1").Select
    Sheets("Sheet1").Name = "住宅"
    Sheets("リスト").Select
    Rows("1:2").Select
    Selection.Copy
    Sheets("住宅").Select
    Range("A1").Select
    ActiveSheet.Paste
    Rows("2:2").Select
    Application.CutCopyMode = False
    Selection.ClearContents
    Columns("B:I").Select
    Selection.ColumnWidth = 4
    Columns("J:J").Select
    Selection.ColumnWidth = 15
    ActiveWindow.ScrollColumn = 2
    ActiveWindow.ScrollColumn = 3
    ActiveWindow.ScrollColumn = 4
    ActiveWindow.ScrollColumn = 5
    ActiveWindow.ScrollColumn = 6
    ActiveWindow.ScrollColumn = 7
    ActiveWindow.ScrollColumn = 8
    ActiveWindow.ScrollColumn = 9
    ActiveWindow.ScrollColumn = 10
    Range("R2").Select
    ActiveCell.FormulaR1C1 = "住宅"
    ActiveCell.Characters(1, 2).PhoneticCharacters = "ジュウタク"
    Range("R3").Select
    ActiveWindow.ScrollColumn = 11
    ActiveWindow.ScrollColumn = 12
    ActiveWindow.ScrollColumn = 13
    ActiveWindow.ScrollColumn = 14
    ActiveWindow.ScrollColumn = 15
    ActiveWindow.ScrollColumn = 16
    ActiveWindow.ScrollColumn = 17
    Columns("X:X").Select
    Selection.ColumnWidth = 16
    Columns("Z:AA").Select
    Selection.ColumnWidth = 11
    Range("A1").Select
    Sheets("住宅").Select
    Sheets("住宅").Copy After:=Sheets(3)
    Sheets("住宅 (2)").Select
    Sheets("住宅 (2)").Name = "集合"
    ActiveWindow.ScrollColumn = 2
    ActiveWindow.ScrollColumn = 3
    ActiveWindow.ScrollColumn = 4
    ActiveWindow.ScrollColumn = 5
    ActiveWindow.ScrollColumn = 6
    ActiveWindow.ScrollColumn = 7
    Range("R2").Select
    ActiveCell.FormulaR1C1 = "集合"
    ActiveCell.Characters(1, 2).PhoneticCharacters = "シュウゴウ"
    Range("A1").Select
    Sheets("住宅").Select
    Sheets("リスト").Columns("A:AB").AdvancedFilter Action:=xlFilterCopy, _
        CriteriaRange:=Range("A1:AB2"), CopyToRange:=Range("A5"), Unique:=False
    Rows("1:4").Select
    Range("A4").Activate
    Selection.Delete Shift:=xlUp
    Range("A1").Select
    Selection.AutoFilter
    Range("K2").Select
    ActiveWindow.FreezePanes = True
    ActiveWindow.ScrollColumn = 12
    ActiveWindow.ScrollColumn = 13
    ActiveWindow.ScrollColumn = 14
    ActiveWindow.ScrollColumn = 15
    ActiveWindow.ScrollColumn = 16
    Columns("R:R").Select
    Selection.Delete Shift:=xlToLeft
    Range("R1").Select
    ActiveWindow.ScrollColumn = 17
    ActiveWindow.ScrollColumn = 18
    Range("V1").Select
    Range("A1:AA890").Sort Key1:=Range("V2"), Order1:=xlAscending, Header:= _
        xlGuess, OrderCustom:=23, MatchCase:=False, Orientation:=xlTopToBottom, _
        SortMethod:=xlPinYin, DataOption1:=xlSortNormal
    Range("R1").Select
    Range("A1:AA890").Sort Key1:=Range("R2"), Order1:=xlAscending, Header:= _
        xlGuess, OrderCustom:=17, MatchCase:=False, Orientation:=xlTopToBottom, _
        SortMethod:=xlPinYin, DataOption1:=xlSortNormal
    Sheets("集合").Select
  ★Sheets("リスト").Columns("A:AB").AdvancedFilter Action:=xlFilterCopy, _
        CriteriaRange:=Range("A1:AB2"), CopyToRange:=Range("A5"), Unique:=False
    Rows("1:4").Select
    Selection.Delete Shift:=xlUp
    Range("A1").Select
    Selection.AutoFilter
    Range("K2").Select
    ActiveWindow.FreezePanes = True
    ActiveWindow.ScrollColumn = 12
    ActiveWindow.ScrollColumn = 13
    ActiveWindow.ScrollColumn = 14
    ActiveWindow.ScrollColumn = 15
    ActiveWindow.ScrollColumn = 16
    ActiveWindow.ScrollColumn = 17
    ActiveWindow.ScrollColumn = 18
    Columns("R:R").Select
    Selection.Delete Shift:=xlToLeft
    Range("V1").Select
    Range("A1:AA305").Sort Key1:=Range("V2"), Order1:=xlAscending, Header:= _
        xlGuess, OrderCustom:=23, MatchCase:=False, Orientation:=xlTopToBottom, _
        SortMethod:=xlPinYin, DataOption1:=xlSortNormal
    Range("R1").Select
    Range("A1:AA305").Sort Key1:=Range("R2"), Order1:=xlAscending, Header:= _
        xlGuess, OrderCustom:=17, MatchCase:=False, Orientation:=xlTopToBottom, _
        SortMethod:=xlPinYin, DataOption1:=xlSortNormal
    Sheets("住宅").Select
End Sub

 のびた 11:58


 別の方法でマクロを組み直しました。

 とりあえず自分で解決しました。

 のびた 14:42


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.