発展1講座第3章 - マクロの自動記録 並べ替え

この講座は有料講座です。
講座の購入後ご覧になれます。

ログインアカウントの新規作成

解説

Excel2003までのバージョンを使って、自動記録しながら「並べ替え」をしてマクロを生成していきます。生成された一行のマクロは、「_ 」で途中改行されていますので、前回までに習ったショートカットで直していきます。注意してほしいのは、自動記録で作ったマクロが「操作を完全に再現できるとは限らない」ということです。自動記録で生成されたマクロには、変更が必要な場合があるということを覚えていてください。

この教材についての過去の質問・感想

11486 : ゲストさんのコメント (2019-06-28 16:28:41)

コメントありがとうございます。
まだPC操作能力が未熟なところがあるので、演習を通じて鍛えていけたらいいなと思っております。

是非2007以降の並び替えの動画もみたいです。
宜しくお願いします。


11485 : 小川慶一の回答 (2019-06-27 22:44:45)

ゲストさん:

コメントありがとうございます。

エクセル2007以降のバージョンでの並べ替えについてはテキストを参照してください。hatten1_text.pdfです。

エクセル2007以降のバージョンでの並べ替えについて解説した動画もあったはずなのですが...。
今、探したのですが、オンライン講座内に見当たらないです。
早期に復活させたいと思います。

ご理解いただいているものと思いますが、エクセル2007以降では全体の流れは、以下のとおりです。
1. シートに登録された並べ替え条件をすべてクリア(初期化)
2. 新たに並べ替え条件を追加していく
3. 並べ替えを実行


マクロの勉強には、知力(頭)と同時に、腕力(PC操作能力)もかなり必要です。

エクセル2003の場合の自動記録で生成される並べ替えマクロの件は、これはこれで有意義なので、(エクセル2003はサポート終了しており、入手困難な状況ではありますが)動画は残しておこうと思います。

このくらいの分量のコードでも「長い一文にしてからちぎる」という操作を安定してできるようになると、あとあと自動記録で得られたコードの解析が容易になります。

ひきつづき、よろしくお願いいたします。


> 2003年と2007年のバージョンで並び替えの自動記録を行うとマクロの構文も違ってくることが勉強できました。
> 私は2007年で自動記録をしたのですが、2007では、並べ替えの設定と並べ替えの実行で処理が別れていることを学びました。
> 2003よりもより丁寧な記述が行えると思いました。
>
> やはり、小川先生の仰るように長い1文に直してからちぎるやり方でやったので理解が早かったです。


11483 : ゲストさんのコメント (2019-06-27 16:31:43)

2003年と2007年のバージョンで並び替えの自動記録を行うとマクロの構文も違ってくることが勉強できました。
私は2007年で自動記録をしたのですが、2007では、並べ替えの設定と並べ替えの実行で処理が別れていることを学びました。
2003よりもより丁寧な記述が行えると思いました。

やはり、小川先生の仰るように長い1文に直してからちぎるやり方でやったので理解が早かったです。


10939 : 小川慶一の回答 (2019-01-17 08:15:09)

tyuさん:

お返事、遅れました。

指示後については、マインドマップに記載のものもそうですが、あとは、慣れてくると、自分で判別できます。
発展編フォローアップ演習でも、実際に指示語を書き直すワークが入ります。そこでもまた感覚を鋭敏にしていってください。

> ネットや市販マクロ本に目を通すと、"危ないワード"を使って解説されているのですが

何をどういう順番で教えるか?というのは、それぞれですね。



> とてもわかりやすいです。
> 自動記録を使った際の「xlGuess」とか指示語「Selection,Activecell,・・・」など”危ないワード"は、今後の学習でも出てきますか?危ないワード集はありますか? 
> ネットや市販マクロ本に目を通すと、"危ないワード"を使って解説されているのですが、このままコピペして使うと論理エラーの温床となりそうでコワイです。コワイと感じられる知識がついたのは大きな収穫です。
>


10924 : tyuさんのコメント (2019-01-13 20:11:29)

とてもわかりやすいです。
自動記録を使った際の「xlGuess」とか指示語「Selection,Activecell,・・・」など”危ないワード"は、今後の学習でも出てきますか?危ないワード集はありますか? 
ネットや市販マクロ本に目を通すと、"危ないワード"を使って解説されているのですが、このままコピペして使うと論理エラーの温床となりそうでコワイです。コワイと感じられる知識がついたのは大きな収穫です。


10423 : 小川慶一の回答 (2018-08-16 12:12:05)

受講生 さん:

最近のエクセルのバージョンではこの問題は起こりにくいですが、それでも気にはしておきたいところ。

> 「Header:=xlGuess」はそのまま放置しない
> かならず「xlYes」データの先頭行はタイトルにする
> か   「xlNo」データの先頭行もデータとする
> に書き直す。
> 小文字で書いて、正しいスペルかもチェックすること。
>
> 「xlGuess」は、「小人ちゃんに任せる」という意味。
> 恐ろしい。


10402 : 受講生さんのコメント (2018-08-14 12:11:29)

「Header:=xlGuess」はそのまま放置しない
かならず「xlYes」データの先頭行はタイトルにする
か   「xlNo」データの先頭行もデータとする
に書き直す。
小文字で書いて、正しいスペルかもチェックすること。

「xlGuess」は、「小人ちゃんに任せる」という意味。
恐ろしい。


4286 : 山田 将之さんのコメント (2015-05-17 16:00:19)

原則として、Sortメソッドの「Header:=xlGuess」はそのまま放置しないで、必ず、「xlYes」か「xlNo」と指定してください。
「xlYes」は、データ範囲の先頭行に「タイトル行」を選択、「xlNo」は、データ範囲の先頭行に「データ」を選択した場合に相当します。

問題の「xlGuess」は、データ範囲の先頭行を「タイトル行」とみなすか、「データ」とみなすかを、実行のたびに「小人ちゃんに任せる」という意味です。
実行するたびに、データの先頭行の判断を変えられては、期待する結果を得ることができなくなります。
自動記録で生成されたマクロには、変更が必要な場合があるということを覚えていてください。

これはとてもいいことを学びました。ありがとうございます。


2167 : 小川慶一の回答 (2014-08-24 12:08:10)

匿名 さん:

コメントありがとうございます。
可読性が高いと、そのままメンテナンス性も高まります。
可読性を維持するためにやることはそんなにありません。実は慣れるとかなりパターン化されています。

>可読性について、しっかり考える機会となりましたので、とてもおもしろかったです。
>


2143 : 受講生さんのコメント (2014-08-24 11:35:17)

可読性について、しっかり考える機会となりましたので、とてもおもしろかったです。


3日がかりのその仕事、3分で終わらせる方法教えます。ガラパゴスタディーオンライン講座 ユーザー登録

本講座の動画一覧

  1. 【動画1】 発展1講座イントロダクション - 使用するファイル、PDFの確認
    【動画1】 発展1講座イントロダクション - 使用するファイル、PDFの確認 未習得
  2. 【動画2】 発展1講座イントロダクション - デバッグ イミディエイトウィンド
    【動画2】 発展1講座イントロダクション - デバッグ イミディエイトウィンド 未習得
  3. 【動画3】 発展1講座第1章 - オープニング 第1章1
    【動画3】 発展1講座第1章 - オープニング 第1章1 未習得
  4. 【動画4】 発展1講座第1章 - オープニング 第1章2
    【動画4】 発展1講座第1章 - オープニング 第1章2 未習得
  5. 【動画5】 発展1講座第1章 - データの「型」1
    【動画5】 発展1講座第1章 - データの「型」1 未習得
  6. 【動画6】 発展1講座第1章 - データの「型」2
    【動画6】 発展1講座第1章 - データの「型」2 未習得
  7. 【動画7】 発展1講座第1章 - 変数の初期値
    【動画7】 発展1講座第1章 - 変数の初期値 未習得
  8. 【動画8】 発展1講座第1章 - ハンガリアン記法
    【動画8】 発展1講座第1章 - ハンガリアン記法 未習得
  9. 【動画9】 発展1講座第1章 - 変数宣言の強制1
    【動画9】 発展1講座第1章 - 変数宣言の強制1 未習得
  10. 【動画10】 発展1講座第1章 - 変数宣言の強制2
    【動画10】 発展1講座第1章 - 変数宣言の強制2 未習得
  11. 【動画11】 発展1講座第1章 - 総称オブジェクト型
    【動画11】 発展1講座第1章 - 総称オブジェクト型 未習得
  12. 【動画12】 発展1講座第1章 - 固有オブジェクト型
    【動画12】 発展1講座第1章 - 固有オブジェクト型 未習得
  13. 【動画13】 発展1講座第1章 - バリアント型
    【動画13】 発展1講座第1章 - バリアント型 未習得
  14. 【動画14】 発展1講座第2章 - オープニング 第2章
    【動画14】 発展1講座第2章 - オープニング 第2章 未習得
  15. 【動画15】 発展1講座第2章 - コレクション
    【動画15】 発展1講座第2章 - コレクション 未習得
  16. 【動画16】 発展1講座第2章 - コレクション(インデックス)
    【動画16】 発展1講座第2章 - コレクション(インデックス) 未習得
  17. 【動画17】 発展1講座第2章 - コレクション(インデックス)の具体例
    【動画17】 発展1講座第2章 - コレクション(インデックス)の具体例 未習得
  18. 【動画18】 発展1講座第2章 - プロパティ 従属要素のオブジェクト
    【動画18】 発展1講座第2章 - プロパティ 従属要素のオブジェクト 未習得
  19. 【動画19】 発展1講座第2章 - プロパティ 上位のオブジェクト
    【動画19】 発展1講座第2章 - プロパティ 上位のオブジェクト 未習得
  20. 【動画20】 発展1講座第2章 - プロパティ 同レベルのオブジェクト
    【動画20】 発展1講座第2章 - プロパティ 同レベルのオブジェクト 未習得
  21. 【動画21】 発展1講座第2章 - プロパティ 値として表現できるデータ
    【動画21】 発展1講座第2章 - プロパティ 値として表現できるデータ 未習得
  22. 【動画22】 発展1講座第2章 - プロパティ Offset
    【動画22】 発展1講座第2章 - プロパティ Offset 未習得
  23. 【動画23】 発展1講座第2章 - プロパティ Offsetの使い方
    【動画23】 発展1講座第2章 - プロパティ Offsetの使い方 未習得
  24. 【動画24】 発展1講座第2章 - End プロパティの使い方
    【動画24】 発展1講座第2章 - End プロパティの使い方 未習得
  25. 【動画25】 発展1講座第2章 - メソッド1
    【動画25】 発展1講座第2章 - メソッド1 未習得
  26. 【動画26】 発展1講座第2章 - メソッド2
    【動画26】 発展1講座第2章 - メソッド2 未習得
  27. 【動画27】 発展1講座第3章 - マクロの自動記録 イントロダクション
    【動画27】 発展1講座第3章 - マクロの自動記録 イントロダクション 未習得
  28. 【動画28】 発展1講座第3章 - マクロの自動記録 オートフィルタ1
    【動画28】 発展1講座第3章 - マクロの自動記録 オートフィルタ1 未習得
  29. 【動画29】 発展1講座第3章 - マクロの自動記録 オートフィルタ2
    【動画29】 発展1講座第3章 - マクロの自動記録 オートフィルタ2 未習得
  30. 【動画30】 発展1講座第3章 - マクロの自動記録 フォントの設定
    【動画30】 発展1講座第3章 - マクロの自動記録 フォントの設定 未習得
  31. 【動画31】 発展1講座第3章 - マクロの自動記録 カラーインデックス
    【動画31】 発展1講座第3章 - マクロの自動記録 カラーインデックス 未習得
  32. 【動画32】 発展1講座第3章 - マクロの自動記録 アンダースコア
    【動画32】 発展1講座第3章 - マクロの自動記録 アンダースコア 未習得
  33. 【動画33】 発展1講座第3章 - マクロの自動記録 途中改行1 入力支援機能
    【動画33】 発展1講座第3章 - マクロの自動記録 途中改行1 入力支援機能 未習得
  34. 【動画34】 発展1講座第3章 - マクロの自動記録 途中改行2
    【動画34】 発展1講座第3章 - マクロの自動記録 途中改行2 未習得
  35. 【動画35】 発展1講座第3章 - マクロの自動記録 並べ替え
    【動画35】 発展1講座第3章 - マクロの自動記録 並べ替え 未習得
  36. 【動画36】 発展1講座第3章 - マクロの自動記録 個人用マクロブック
    【動画36】 発展1講座第3章 - マクロの自動記録 個人用マクロブック 未習得
  37. 【動画37】 発展1講座第4章 - 論理演算子 イントロダクション
    【動画37】 発展1講座第4章 - 論理演算子 イントロダクション 未習得
  38. 【動画38】 発展1講座第4章 - 論理演算子 解説
    【動画38】 発展1講座第4章 - 論理演算子 解説 未習得
  39. 【動画39】 発展1講座第4章 - 構造文 イントロダクション
    【動画39】 発展1講座第4章 - 構造文 イントロダクション 未習得
  40. 【動画40】 発展1講座第4章 - For Each構文 イントロダクション1
    【動画40】 発展1講座第4章 - For Each構文 イントロダクション1 未習得
  41. 【動画41】 発展1講座第4章 - For Each構文 イントロダクション2
    【動画41】 発展1講座第4章 - For Each構文 イントロダクション2 未習得
  42. 【動画42】 発展1講座第4章 - For Each構文 イントロダクション3
    【動画42】 発展1講座第4章 - For Each構文 イントロダクション3 未習得
  43. 【動画43】 発展1講座第4章 - For Each構文 演習
    【動画43】 発展1講座第4章 - For Each構文 演習 未習得
  44. 【動画44】 発展1講座第4章 - For Each構文 伝票作成マクロ解説
    【動画44】 発展1講座第4章 - For Each構文 伝票作成マクロ解説 未習得
  45. 【動画45】 発展1講座第4章 - For Each構文 セルのコレクション
    【動画45】 発展1講座第4章 - For Each構文 セルのコレクション 未習得
  46. 【動画46】 発展1講座第4章 - For Each構文 カンニングペーパー
    【動画46】 発展1講座第4章 - For Each構文 カンニングペーパー 未習得
  47. 【動画47】 発展1講座第4章 - Do Loop構文 概要
    【動画47】 発展1講座第4章 - Do Loop構文 概要 未習得
  48. 【動画48】 発展1講座第4章 - Do Loop構文 マクロの流れ
    【動画48】 発展1講座第4章 - Do Loop構文 マクロの流れ 未習得
  49. 【動画49】 発展1講座第4章 - Do Loop構文 4つのパターン
    【動画49】 発展1講座第4章 - Do Loop構文 4つのパターン 未習得
  50. 【動画50】 発展1講座第4章 - Do Loop構文 マクロの強制終了
    【動画50】 発展1講座第4章 - Do Loop構文 マクロの強制終了 未習得
  51. 【動画51】 発展1講座第4章 - Exit For、Exit Do、Exit Sub
    【動画51】 発展1講座第4章 - Exit For、Exit Do、Exit Sub 未習得
  52. 【動画52】 発展1講座第4章 - Select Case 概要
    【動画52】 発展1講座第4章 - Select Case 概要 未習得
  53. 【動画53】 発展1講座第4章 - Select Case If文との比較
    【動画53】 発展1講座第4章 - Select Case If文との比較 未習得
  54. 【動画54】 発展1講座第4章 - Select Case 比較する条件の順番
    【動画54】 発展1講座第4章 - Select Case 比較する条件の順番 未習得
  55. 【動画55】 発展1講座第4章 - Select Case 複数条件の並べ方
    【動画55】 発展1講座第4章 - Select Case 複数条件の並べ方 未習得
  56. 【動画56】 発展1講座第4章 - Select Case 条件の範囲選択
    【動画56】 発展1講座第4章 - Select Case 条件の範囲選択 未習得
  57. 【動画57】 発展1講座第5章 - Sub プロシージャの分割と呼び出し
    【動画57】 発展1講座第5章 - Sub プロシージャの分割と呼び出し 未習得
  58. 【動画58】 発展1講座第5章 - Sub プロシージャを分割するメリット
    【動画58】 発展1講座第5章 - Sub プロシージャを分割するメリット 未習得
  59. 【動画59】 発展1講座第5章 - ステップアウト、ステップオーバー
    【動画59】 発展1講座第5章 - ステップアウト、ステップオーバー 未習得
  60. 【動画60】 発展1講座第5章 - モジュールレベル変数
    【動画60】 発展1講座第5章 - モジュールレベル変数 未習得
  61. 【動画61】 発展1講座第5章 - モジュールレベル変数の操作
    【動画61】 発展1講座第5章 - モジュールレベル変数の操作 未習得
  62. 【動画62】 発展1講座第5章 - モジュールレベル変数 変数の重複
    【動画62】 発展1講座第5章 - モジュールレベル変数 変数の重複 未習得
  63. 【動画63】 発展1講座第5章 - モジュールレベル変数 まとめ
    【動画63】 発展1講座第5章 - モジュールレベル変数 まとめ 未習得
  64. 【動画64】 発展1講座第5章 - モジュールレベル変数 アクセシビリティ設定
    【動画64】 発展1講座第5章 - モジュールレベル変数 アクセシビリティ設定 未習得

塾長 小川慶一

メニュー

コメント紹介

もっと見る

ページの先頭へ