• ベストアンサー

マクロの記録がうまくいきません。マクロの記録→セルを押してWEBクエリ

マクロの記録がうまくいきません。マクロの記録→セルを押してWEBクエリを選択→データを取り込み→シートに表示されそれを日付順にセルの並び替えを選択→並び替えを確認→マクロの記録の停止の順でやっているのですが、マクロを実行するとデータは記録できているけど日付順の並び替えのみができていません。なぜでしょうか?何回記録しなおしても日付だけ並び替えされて記録されていません。ご教授お願いします。Windows 7 でExcel2007を使用しています。

質問者が選んだベストアンサー

  • ベストアンサー
  • web2525
  • ベストアンサー率42% (1219/2850)
回答No.2

確かに提示されたコードではうまく動作していないようですね 日付での並び替えの部分のみマクロの記録で作成しました Sub Macro1() Range("B4:F54").Select Selection.Sort Key1:=Range("B5"), Order1:=xlAscending, Header:=xlGuess, _ OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, SortMethod _ :=xlPinYin, DataOption1:=xlSortNormal End Sub 並び替えの部分だけ上記コードに置き換えてみてください

howai
質問者

お礼

ご教授ありがとうございました。マクロを組み合わせるということですね。解決したと同時に次に起こったとしても応用できると自信がつきました。ありがとうございました。

その他の回答 (1)

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.1

マクロの操作の前に取り込んだデータが日付手並び替えができるのでしょうか? それを確認することが必要でしょう。セルの中に日付の数値として取り込まれているのでしょうか?

howai
質問者

お礼

ありがとうございます。解決しました。

howai
質問者

補足

ご教授ありがとうございます。やっぱりうまくできません。ちなみにコードは以下です。 Sub データ() Range("B4").Select With ActiveSheet.QueryTables.Add(Connection:= _ "URL;http://table.yahoo.co.jp/t?s=998407.o&g=d", Destination:=Range("$B$4")) .Name = "t?s=998407.o&g=d_1" .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .BackgroundQuery = True .RefreshStyle = xlInsertDeleteCells .SavePassword = False .SaveData = True .AdjustColumnWidth = True .RefreshPeriod = 0 .WebSelectionType = xlSpecifiedTables .WebFormatting = xlWebFormattingNone .WebTables = "10" .WebPreFormattedTextToColumns = True .WebConsecutiveDelimitersAsOne = True .WebSingleBlockTextImport = False .WebDisableDateRecognition = False .WebDisableRedirections = False .Refresh BackgroundQuery:=False End With Range("B4:F54").Select ActiveWorkbook.Worksheets("Sheet4").Sort.SortFields.Clear ActiveWorkbook.Worksheets("Sheet4").Sort.SortFields.Add Key:=Range("B5:B54") _ , SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal With ActiveWorkbook.Worksheets("Sheet4").Sort .SetRange Range("B4:F54") .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With End Sub 何か間違っているところ、抜けている所もしくわ何か設定を変えないといけないところなどご指摘ありますでしょうか?

関連するQ&A

専門家に質問してみよう