• ベストアンサー

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

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

  • howai
  • お礼率72% (62/85)

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

  • ベストアンサー
  • 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

  • エクセル2007でのマクロの記録

    マクロ初心者です。しょうもない質問で申し訳ありません。 エクセル2007で並び替えをマクロに記録させても並び替えが実行できません(エクセル2003は可能でした)。 例えば・・・マクロの記録を実行→B4セルから下に10~1の数字を入力→その後並び替えボタンをクリックし、昇順で1~10に並び替える→マクロの記録を停止。確認のため、シート2でマクロを実行。数字は入力されるが、並び替えがおこなわれません(T_T) エクセル2007では並び替えのマクロは記録できないのでしょうか??それとも不具合ですか?もし簡単に出来る方法等があるなら教えて頂ければ幸いです。 お手数をおかけしますが、どなたかご回答を頂けると幸いです。

  • 記録したマクロを実行するボタン

    シート1にマクロを実行するボタンを 作成したいと思います。 マクロは、シートに2にアクセスdbのクエリデータを 外部データの取り込み実行でインポートする よう記録しています。 シート1のボタンに記録したマクロを 貼り付けると、エラーメッセージで 「とりこみ先の範囲は、クエリテーブルが 作成された同じワークシートにありません」 と出ました。 同じワークシートでないとクエリ実行ボタンは 作れないのでしょうか?? よろしくお願いいたします。

  • エクセルのマクロ記録について

    エクセル2007でマクロ1の記録を行い「更新」ボタンにマクロ1を設定しています。Sheet1からSheet12迄の入力データを「更新」ボタンクリックで 削除するように記録しています。 Sheet1からSheet12をシート保護した場合マクロ1は実行エラーになり 各シートを保護解除すると正常に実行します。 Sheetがまたがるマクロの記録はシート保護をするとだめなのでしょうか? 各Sheet共入力セル以外をロックしたい為、シート保護をかけようと思います。

  • エクセルwebクエリについて

    エクセルwebクエリについて WEBクエリを使って、データを新しいワークシートに摘出することはできるのですが、それをマクロなどで連続して行うことはできるのでしょうか? 具体的には、Aラインに摘出元(ターゲット)のURLが数百から千数百個並んでおり、それら1つずつを新しいワークシートに摘出したいと考えています。 環境はWIN XP excel2000 を使用しています どうか、ご教授願います

  • セルから取得したURLをwebクエリで取り込むには?

    Excelのwebクエリに関する質問です。 sheet1のセルA1に書かれたURLをwebクエリでテキストデータのみを取り込みたいです。 結果はsheet2のセルA1に出します。 次にsheet1セルA2のURLをsheet3のセルA1に取り込みます。 以上の様なことを数十ページ行いたいと思います。 sheetは始めはsheet3までしかありませんので、 随時自動で追加されると助かります。 VBAの知識がなく、こちらで相談させていただくことになりました。

  • マクロの記録に入力規則設定セルの選択が記録されない

    "AAA"と"BBB"と言うExcelファイルがあり、"AAA"はsheet1のA2セルを入力規則で(1)~(4)まで選択できるようにしています(リスト"(1)~(4)"はA1~D1セルに入力)。この選択を行うことで、同シートにあるグラフが(1)~(4)のデータを切り替え表示するようにしています。又"BBB"のファイルにも、sheet1のA2セルを入力規則で、ア~オ(リスト"ア~オ"はAA1~AA5セル)まで選択できるようにしており、この選択切り替えで同シートにあるグラフがア~オのデータを表示するようにしています。 通常は、この9種のデータグラフを、入力規則を設定したセルの値を切り替えることで、状況確認を行っています。只、会議用の資料としては、毎回グラフを切り替え、9種類のグラフをコピーし、別のファイル"会議用データ"に図形の貼り付けて作成している状況です。 この一連の作業をExcelのマクロの記録で行わせようと思い、"会議用データ"ファイルのsheet1にボタンを用意し、sheet2に9種のデータグラフを図形貼りけする操作を記録させました。ところが、"AAA"と"BBB"の入力規則を設定したセルで値を切り替える作業がマクロに記録されず、旨く動作しません。どのようにすれば旨く動作するかご教授願います。私はVBは全く解りませんので、『記録されたマクロの何処の部分に、この命令文を追加しなさい!』等、補足説明入りでご教授いただければ助かります。

  • エクセルのマクロについて

    エクセル2010でのマクロについて、教えてください。 「全体を選択」→「昇順で並び替え」というマクロはどのように書けばできますか? マクロの記録でやると、そのシートでしか使えないマクロになってしまいますが、 データ量も違う色々なシートで使用したいのです。よろしくお願いします。

  • Excel2007のWebクエリとマクロについてです。

    Excel2007のWebクエリとマクロについてです。 初投稿です。わかりづらい質問で申し訳ないのですが、気になる点があればすぐに補足しますのでよろしくお願いします。 気象庁のサイトから過去の気象データをWebクエリで参照しています。 下のサイトから1日分のデータをWebクエリを使って抜き出しました。(Excel2007) 1年分のデータ(365日分)を同じように抜き出したいのですがクエリで同じ操作をするのは面倒に感じています。 マクロのボタンなどで時間を短縮して参照する方法があれば教えてください。 www.data.jma.go.jp/obd/stats/etrn/view/hourly_s1.php?prec_no=73&prec_ch=%88%A4%95Q%8C%A7&block_no=47887&block_ch=%8F%BC%8ER&year=2009&month=01&day=1&view=p1 上記のyear=2009&month=01&day=1の部分を変化させて2009/01/1~2009/12/31までのデータをExcelに貼り付けたいです。

  • webからデータを取り込み記録し、グラフを作りたい

    Excel 2010 マクロについて質問です。 初めてマクロを使ってみるのですが、やり方が分かりません。 具体的にはwebページから価格のデータを1日1回取り込み、価格の推移をグラフにしたいのです。 取り込むデータのURlはこちら。 http://www.keitai-map.jp/ この機種ごとの価格データをExcelのマクロで作り、毎日更新されるデータを記録し値段の推移をみたいのです。 データの取り込み自体はwebクエリで取り込めましたが、この先がわかりません。 マクロにお詳しい方、教えて頂けないでしょうか?

  • Excelで外部ファイルの取り込み(データの更新)をマクロ化したい

    C:\data のdataフォルダの中に「20060709.dat」「20060710.dat」「20060711.dat」・・・というようにファイル名に日付が入ったファイルがあります。 例えば、(データ)→(外部データの取り込み)で"sheet2"に「20060709.dat」を読み込んでいるとしします。 この時に"sheet1”のセルA1に「20060710」と入力してマクロボタンをクリックすると"sheet2"に「20060710.dat」を(データ)→(データの更新)で読み込むというような作業をマクロで自動化することは可能なのでしょうか? 可能であれば教えて頂きたいのですが。どうぞよろしくお願いします。 ちなみにマクロに関しては(自動記録)で作ったマクロを少しいじる程度の知識しかありません。Excel2000を使用しています。 以上、どうぞよろしくお願い致します。

専門家に質問してみよう