• 締切済み

マクロ 並び替え エラーがでる

マクロの記録で以下のようなマクロを作りましたが、実行するとエラー91「オブジェクト変数またはブロック変数が設定されていません」とでます。どう直したらよいでしょうか? Sub Macro6() Columns("A:L").Select Selection.AutoFilter ActiveWorkbook.Worksheets("Sheet1").AutoFilter.Sort.SortFields.Clear ActiveWorkbook.Worksheets("Sheet1").AutoFilter.Sort.SortFields.Add Key:=Range _ ("A1:A497"), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:= _ xlSortNormal With ActiveWorkbook.Worksheets("Sheet1").AutoFilter.Sort .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With Range("B2").Select End Sub

みんなの回答

  • HohoPapa
  • ベストアンサー率65% (455/693)
回答No.2

どの行でエラーなのかわかりませんが、... 以下がより正解かも。 Columns("A:L").Select Selection.AutoFilter If ActiveSheet.AutoFilterMode = False Then Selection.AutoFilter End If ActiveWorkbook.Worksheets("Sheet1").AutoFilter.Sort.SortFields.Clear 以下省略

  • HohoPapa
  • ベストアンサー率65% (455/693)
回答No.1

Selection.AutoFilter このコードによって、実行の都度 フィルターのオフオンが切り替わってしまうためと思います。 現コードを生かすなら、次のように、 AutoFilterがオフならオンにすることで解決できると思います。 Columns("A:L").Select Selection.AutoFilter If Not Selection Is Nothing Then Selection.AutoFilter End If ActiveWorkbook.Worksheets("Sheet1").AutoFilter.Sort.SortFields.Clear  以下省略。

honeybeans
質問者

お礼

Selection.AutoFilterが2つはいっていたので、1つ目を消したら、できました。早々のご回答ありがとうございました。

honeybeans
質問者

補足

すみません、やってみたのですが、同じエラーがでてきます。

関連するQ&A