[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『どのシートでも使える様にするには?』(かず)
初歩的な質問ですいません。
Excel2010 WindowsXP
ユーザー設定の並べ替えで
最優先をB、E、D,A、C、Fの順で並べ替え作業をマクロの記録で実行したものです。
("Sheet1") ですが
これを どのシートで使える様にするにはどうしたらいいのでしょうか?
すいません どなたか教えて下さい。よろしく御願いします。
************************************
' Macro18 Macro
' Selection.AutoFilter
ActiveWorkbook.Worksheets("Sheet1").AutoFilter.Sort.SortFields.Clear ActiveWorkbook.Worksheets("Sheet1").AutoFilter.Sort.SortFields.Add Key:=Range _ ("B2:B20"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _ xlSortNormal ActiveWorkbook.Worksheets("Sheet1").AutoFilter.Sort.SortFields.Add Key:=Range _ ("E2:E20"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _ xlSortNormal ActiveWorkbook.Worksheets("Sheet1").AutoFilter.Sort.SortFields.Add Key:=Range _ ("D2:D20"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _ xlSortNormal ActiveWorkbook.Worksheets("Sheet1").AutoFilter.Sort.SortFields.Add Key:=Range _ ("A2:A20"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _ xlSortNormal ActiveWorkbook.Worksheets("Sheet1").AutoFilter.Sort.SortFields.Add Key:=Range _ ("C2:C20"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _ xlSortNormal ActiveWorkbook.Worksheets("Sheet1").AutoFilter.Sort.SortFields.Add Key:=Range _ ("F2:F20"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _ xlSortNormal With ActiveWorkbook.Worksheets("Sheet1").AutoFilter.Sort .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With Range("G2").Select End Sub
ActiveWorkbook.Worksheets("Sheet1") を ActiveSheet に変えてどうでしょうか。 (Mook)
実行時エラー1004
Rangeクラスの AUto Filter メゾットが失敗しました
と出ました
何がダメなのでしょうか?
Sub Macro18()
'
' Macro18 Macro
'
'
Selection.AutoFilter ActiveSheet.AutoFilter.Sort.SortFields.Clear ActiveSheet.AutoFilter.Sort.SortFields.Add Key:=Range _ ("B2:B20"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _ xlSortNormal ActiveSheet.AutoFilter.Sort.SortFields.Add Key:=Range _ ("E2:E20"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _ xlSortNormal ActiveSheet.AutoFilter.Sort.SortFields.Add Key:=Range _ ("D2:D20"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _ xlSortNormal ActiveSheet.AutoFilter.Sort.SortFields.Add Key:=Range _ ("A2:A20"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _ xlSortNormal ActiveSheet.AutoFilter.Sort.SortFields.Add Key:=Range _ ("C2:C20"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _ xlSortNormal ActiveSheet.AutoFilter.Sort.SortFields.Add Key:=Range _ ("F2:F20"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _ xlSortNormal With ActiveSheet.AutoFilter.Sort .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With Range("G2").Select End Sub' (かず)
エラーが出たのはどのコード? それと、Selection.AutoFilter で始まっているけど、当然、 ・オートフィルターが【設定されていない】シートをあいてにしているね? ・で、オートフィルターを設定したいセルを選択して実行しているね?
(ぶらっと)
推測も含めて、たぶん以下でいいんじゃない?
Sub Sample()
ActiveSheet.AutoFilterMode = False Range("A1").AutoFilter
With ActiveSheet.AutoFilter.Sort With .SortFields .Clear .Add Key:=Columns("B"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal .Add Key:=Columns("E"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal .Add Key:=Columns("D"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal .Add Key:=Columns("A"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal .Add Key:=Columns("C"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal .Add Key:=Columns("F"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal End With .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With
End Sub
(ぶらっと)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.