★★★ Access2000VBA・Excel2000VBA独学~習う人間の側から見た、「生徒さんや独学する人の成長を邪魔してくる」、4流以下のExcelVBA講師、4流以下のExcelVBA市販書籍著者、4流以下のライター、4流以下の編集者の特徴~もちろん僕はもっとバカでカス・クズだけど、この人たちも相当「程度」が「低い」。「日本のデータ管理を10年は遅らせてきた」人たち~
  
※まだ書きかけです。すみません。
※間違ってたらすみません。
※メモ書きなので、自分でも意味不明な箇所も多いです。ごめんなさい。

目次
 ★ はじめに
 ★ ExcelVBAの「4流以下の講師・4流以下の市販書籍著者・4流以下のライター・4流以下の編集者」の特徴・概要
 ★ ~「生徒さんや独学する人の成長を邪魔してくる」、4流以下のExcelVBA講師、4流以下のExcelVBA著者、
  4流以下のライター、4流以下の編集者の特徴~
    (01)「ヘルプとオブジェクトブラウザの読み方を初心者にもわかるように教えてください」と生徒さんや
      読者から聞かれても、30秒以内に的確な返答ができない。
    (02)「変数?そんなの全部Variant型でいいよ?今後もそんなに深くはやらなくていいよ?多少の違いくらい
      知っておけば。」と必ず言う。自著に書く。それを但し書き無しに、安易に、言う。書く。
    (03)そもそもコンピュータは、少数計算が苦手でよく計算ミスをすることを教えてくれない。コンピュータや
      マイクロソフトは「間違わない」前提ですべての話をする。
    (04)Excelがどういうときに小数計算ミスなどをするかを教えない。
    (05)オブジェクトモデルの階層構造の一覧図を見せない(Excel2000~2003のヘルプに記されている一覧図。)
    (06)「Range("A1")」という「階層構造などを省略しまくったエラーだらけになる書きかた」を、「なんの
      但し書き」や「補足説明もせずに」、平気で自分の著書や記事に「安易に」「何度も」書く・説明する。
    (07)階層構造を省略しない書き方を覚えるほうが、「急がば回れで上達が早まるし、自力でのエラー解決にも
      結びつく」・・・ということを教えない。
    (08)オブジェクト変数をしっかり教えずにWithでの書き方ばかり教える
    (09)Rangeオブジェクトはコレクションっぽい動きをする、ということすら教えない。
    (10)値やオブジェクトを返す自作関数の重要性を教えない。
    (11)「SQL」を教えない。自著等々で紙面が足りないのは理解できるとしても、存在すら教えない。
      「VBAと併用する良い道具/上達の方向性の1つ」としての紹介すらしない。
    (12)ExcelでSQLがどのように使えるかを教えない。自著等々で紙面が足りないのは理解できるとしても、
      存在すら教えない。「VBAと併用する良い道具/上達の方向性の1つ」としての紹介すらしない。
    (13)内部結合、外部結合を教えない。自著等々で紙面が足りないのは理解できるとしても、
      存在すら教えない。「VBAと併用する良い道具/上達の方向性の1つ」としての紹介すらしない。
    (14)Excelであっても、「シンプルなミニリレーショナルデータベース作成なら、割と簡単に・かつ・
      バージョン2000以降からできる」ということについてまるで教えない。
    (15)マクロの記録機能を、実用化できない。実用化サンプルを提示できない。
    (16)「マクロの記録なんてムダ」で(オブジェクト調査にしか役に立たなくて)、「いわゆる汎用的な
      プログラム」さえ書けば、「絶対に効率化・コスパアップが図れる」と思いこみ・決めつけている。
    (17)ピボットテーブルを「単なるちょっと便利なだけの出来合い集計機能」とだけしか認識していない。
      そしてそう自著に書く。但し書きもせずに。
    (18)グラフのVBA操作を詳しく教えない
    (19)グラフの話と関連して、問題の数値化、仮説と検証、選択と集中、などとからめた話は一切しない。
      そのメリットデメリットなどの話とか。
    (20)ADO、DAO、SQL、の合わせ技を教えてくれない
    (21)Microsoft QueryとQueryTableオブジェクトの違いについて教えてくれない
    (22)Access(mdbファイル)を使っての「クライアントサーバもどきシステム」を組んで運用もした経験が一度も
      なく、Access(mdbファイル)の「SQL Serverやオラクル等よりも強いところ」を経験したことがない。
    (23)AccessとExcelの違いについて疎い
    (24)Accessとの連携VBAに疎い
    (25)Access(mdbファイル)が壊れないようにする方法を知らない
    (26)Accessの速度低下防止方法を知らない(データベースの設計上の高速化と、クエリの高速化)

    ★★★ 補足01★ ExcelやWordの「マクロの記録」で書かれたプログラムと、ユーザーが手作業で
      書くプログラムとの違い(「マクロの記録」が汎用的にならない理由)
    ★★★ 補足02★ 『なんでもかんでも最初から全て「汎用プログラム」をつくれば絶対にコスパアップ
      できる』とは『限りません』

★ 『なんでもかんでも最初から全て「汎用プログラム」をつくれば絶対にコスパアップできる』とは『限りません』

  
  
※Shift+TABキー、もしくは、Homeキー、Homeキー+TAB数回、を押すと、目次付近に戻れます。
  
  
★ はじめに

僕自身、現在、ExcelVBAの独学中です。

正直、Excelのことなんて「基本操作すら」まだわかってないし、超バカでクズ・カス、なんですけど、ExcelVBAを学んでいくにつれて・・・、

・「講師や市販書籍著者・ライター・編集者を名乗るに値しない、3流にもなれない、4流以下のバカたち」

・「初心者の僕と比べても ” 本質の理解度 ” があんまり変わらない、あきれた、講師や市販書籍著者・ライター・編集者を名乗るに値しない4流以下のバカたち」

・・・の、「書くこと・言うこと・ふるまい」が少しずつわかってきたので・・・、

「こんな講師に習ったらバカを見る・お金をドブに捨てる。」
「こんな本や記事を信じすぎたら必ずドツボにはまるから注意。」

・・・という特徴を挙げていきたいと思います。

次項に挙げた、(01)~(2×)がそれです。

そのような人たちが、「データ管理の基礎のことを何も知らない・なんも考えない、4流以下の講師・4流以下の市販書籍著者・4流以下のライター・4流以下の編集者」たちです。

このひとたちが、「日本のデータ管理の基礎」「日本のデータ管理の現場」を10年は遅らせてきた、若い人たちの未来を潰してきた、その「元凶」だと思います。そして、今後の20年も、何も変わろうとせず、その悪しき習慣?をまき散らし続けるような気がします。

レジェンドさんだろうが、書籍を何冊書いていようが、関係ないと、僕自身、独学していて思いました。

いまも、そう感じています、というか、より強くなっています。

もちろん、「プログラマになるわけでもない」、かつ、「ビジネスパーソンがプログラミングを兼務する場合の目線で」、です。

僕自身が、そうだから。

独学する方はほんとうにご注意ください。

  
  

★ ExcelVBAの「4流以下の講師・4流以下の市販書籍著者・4流以下のライター・4流以下の編集者」の特徴・概要

基本、以降に挙げた、(01)~(2×)のような人たちです。

そのような人たちが、「データ管理の基礎やデータ管理のコスパのことを何も知らない・なんも考えない4流以下の講師・4流以下の市販書籍著者・4流以下のライター・4流以下の編集者」「ExcelVBA専門バカ」たちです。

特に、その中の項目のうち、(01)~(22)までは、ひとつでもあてはまったら、、私ら習う側の成長を邪魔する、データ管理の基礎や現場のコスパを考えない、4流以下のExcelVBA講師・4流以下のExcelVBA市販書籍著者・4流以下のライター・4流以下の編集者」「ExcelVBA専門バカ」「絆創膏テクニックバカ(絆創膏テクしか教えず、基礎を教えないバカ。物ごとの「本質を追求しようという意識」が芽生えすらしないバカ。)」だと判断していいと思います。

さらに、特に、(01)に該当する人間は「致命的」です。
僕だったらこんなバカからは絶対に習わないです。

本当は僕にはこんなこと書く資格がない・・・、それほどのクズ・カスでバカなのですが、でも似たようなバカでカスな講師や市販書籍著者・ライター(雑誌記事やWeb記事など)・編集者が増えてきて危機感を感じるので、「お若い方々の未来のために」あえて、書いておこうと思いました。
また、ぜひ、記事や書籍等を「有料で」作る方々は、もっと(例えば自らの無料サイトも含め)「データ管理目線」「コスパアップ目線」で、そういうものを書いてほしい、のでそのためにもと思います。
いい加減、「Excelの使い方やVBAの書き方」の「自慢」をする「低能」な行為はやめて、また、「Excel目線」なんかとっととやめて、「ソフトの垣根を超えた」「データ管理のコスト目線」「無駄なVBAを減らす方法目線・真のデータ管理コスト目線・SQL目線など」でモノを書いてほしいと思います。
今現状は、多くの講師や著者(=4流以下の講師や4流以下の市販書籍著者)がしてくるのは、『 ExcelVBAができる=すごい 』という価値観の話ばかりで、『 そもそもそんなデータの持ち方してるから無駄なVBAやワークシート関数が増えて 振り回されるんだよ。本来そんな無駄なVBA要らないだろ?ピボット+SQL(Microsoft Query)ですぐに答え出るだろ?コスト考えろよ。なんでもかんでもVBAが正義じゃないだろ?なんでもかんでも「汎用プログラム」が正義じゃないだろ?お前本当に講師かよ?Excelなんかどーでもいいから ” データ管理そのもの ” のこととか、 ” データ管理そのもののコスト・コスパのこと ” とか、これまでの人生の中で「1回でも考えたことあるのか?」マジで。いいかげん。』という話を全然しません・そういう話や疑問をぶつけることが全然できません。(4流以下だからそんなこと考えようとすらしていなくて・・・まあ4流以下だから自分のこと突っ込まれたくないから当然したくないでしょうから仕方ないんですが。)
「コスト考えたら汎用プログラム作るだけが真実じゃないだろ?プログラム書く人の習熟度や処理の頻度にもよるし。 ” 敢えて ” 、マクロの記録機能をうまく活用する・半活用する・” 半・汎用にとどめておく ” っていう方がコスパが上がることだって意外と少なくない。 ” マクロの記録はオブジェクト調査だけの機能 ” などと知ったかぶりの下らないマウント根性丸出しのバカなことばっかり言ってんじゃねーよ。僕らはプログラマになりたいわけじゃないんだから。営業や事務との兼任で仕方なくプログラム作ってるだけだから(もちろん基礎もしっかり学ぶことが前提だけど)。」という話もぜんっぜんしません。
また、「汎用プログラムを作れば100%絶対にコスパが上がる」というウソを流布します。現実には、そうはならないケースも少なからずあります。
ぶっちゃけ、
「汎用性の高いコードとやらで埋め尽くされた・でもモメまくって結局使われなかったシステムやプログラム」がどれだけあるのか?昔と比べて本当に減っているのか?
「汎用性の高いコードとやら」で作ったものの、本当の使用目的を100%達成できているのか?

そして、「データ管理の基礎」の話や「SQLを使ったデータ管理の基礎の話を先にすれば、無駄なVBAやワークシート関数が日本から少なくとも1/5~1/3くらいは減る。」
という話をぜんッぜんしてくれません。

※参考記事・・・『用語:ExcelやWordにおける「マクロ」とは?VBAと何が違う?(「ExcelやWord自身」は「マクロ」をどう判別・区別しているか?)Accessの場合は?

私のようなクズの思いあがり、どうかお許しください。
でも、そんな超クズでバカな僕でも、一言いいたくなるほど、「ExcelVBAの教育界は、腐った、酷い」状況のような気がしてなりません。
これまでの20年がこの体たらくだったので、今後の20年も、おんなじこと、テキトーに教えてられてるんだろうなあ・・・と肩を落としたくなります。

心配です。

お子さんがたが・・・。
  
  
※ちなみにですが、基本的には、『なんでもかんでも最初から全て「汎用プログラム」をつくれば絶対にコスパアップできる』とは『限りません』。
考えてみてください。昔から・・・、” 今もあいかわらず ” 、「作ったけども使われなかった不便なシステム」というゴミシステムが繰り返し生み出されています。
※参考記事『用語:ExcelやWordにおける「マクロ」とは?VBAと何が違う?(「ExcelやWord自身」は「マクロ」をどう判別・区別しているか?)Accessの場合は?

そして、それらは全部、「プロ」が作ったものです。全部、「汎用プログラム」です。
昔から「多少は減ったとしても無くなることが絶対にありません(実は減ってすらいないかも?複雑・高度になっている分、オーバースペックだったりでむしろ増えているかも?)。
そのことこそが「汎用プログラム・役に立たず」を、「証明」しています。
ExcelVBAにあてはめて考えれば、「マクロの記録」機能を利用して自動化・あるいは半自動化して「まずはそれを使い」、そのあとに、そこではじめて、使用頻度や機能追加要望などを加味して、「それを汎用化するべきかしないべきかを検討する」、というステップを踏まないと「汎用プログラム」は「ゴミ」と化す場合が意外とあります。(もちろん全部とは言いません。)
逆に、「マクロの記録を使ってデータの管理の ” コスパ ” のアップ」が図れるシーンが、「確実に」あります。そして「Excelをそこそこお仕事に使う人」なら、そのシーンが、実は、「少なくありません」。(特に個人レベルで使ったり、レイアウト関係の自動化などで。まだVBAの初心者のうちとか、そもそもVBAを全く知らない人とかも。)
「哀れなExcelVBAの専門バカ」の人たちは、そういうことや「コスパ」というものをまったく考えず、「すべてのシーンで」「無条件に」いきなり「汎用プログラム」を作ろうとします。そして「マクロの記録」機能をバカにします。
もっというと、「VBAを知っているだけ程度ごとき」で「おごり」、また、「データの持ち方の基礎やSQL 、ADO/DAO、QueryTableオブジェクト、ピボットVBA」すら知らない・教えない・広めようとしない「僕と同じド素人」のくせに、また、「そもそもデータ管理の基礎やSQLなどを知らず、Excelを紙と電卓の延長としてしか使えないくせに・その使い方しか知らないくせに」、エラそうに「安易に」よく考えもせず、「全部」汎用化しようとして「メンテしづらい無駄なVBAプログラム」を「量産」します。あるいは、そういう方法・手法を教えようとします。広めようとします。そして「使われない汎用プログラム」を作るのです。「使われないシステム」と同じです。使用頻度が低いのに汎用化したり・要望と遠いものを作ってしまったりして、結局、それを作った時間は全部パーです。
経営者目線で見れば、ある意味給料泥棒。『 汎用プログラム 』って偉そうに威張ったところで、パズルやって遊んでるに等しい。ばかばかしい。でも『 汎用プログラム 』って「見ただけ」だと大変そうだから経営者はわからない。騙される。WordやAccessのプログラムよりも、より、効率が悪く・質の低い・かつ無駄で本来は要らないプログラムがExcelでは増えることが多いのに見抜けない経営者がほどんどです。
僕みたいなド素人が見ても、SQLが一か所も使ってなかったり、マクロの記録の機能の部分活用が一か所もできてなかったら、その人は「コスパをまったく考えないことが明白な」ダメExcelプログラマーですぐに給料減らしてもいいくらい。

害悪以外のなにものでもありません。
「ゴミプログラムなんか作っとらんで、そんなゴミ作っとるあいだに、ほかの役に立つ仕事せんかい!お取引先の××君がマクロの記録機能で3分で作ってくれたヤツのほうがみんな使って効率が上がっとるやないかい!!」っていうケースだってあるのです。
自分で使うだけなら勝手にすればいいのですが、そうではなく、例えば「組織内で、他人に使わせる・彼らの習熟度によって変える必要性がある」という場合、「自動記録で作ったマクロを汎用的になるように即座に部分的に修正できる」、「作ったマクロをメニュー化できるよう教育する」、「汎用化するかどうかを判断するまでのテストプログラムという位置づけで、自動記録のマクロをそのまま使ったり、一部修正したものを活用」ということもコスパアップに十分つながります。)
そもそも、「自分は営業との兼任社内SEなので、いちいち、考えて作ってるヒマなんかない。」とか、「汎用マクロ作ったところで ”使いこなせない” ユーザー、マクロの記録機能で作ったこぢんまりしたプログラムのほうが、”ミスが少ない” ユーザーだっている」わけですから。

「そんなことない。慣れればこのくらいのコード、10分もあれば書ける」という4流以下の市販書籍著者などもいますが、「そうなるまでに、どんだけ時間かけて、どんだけ繰り返し練習しなけりゃならないかもちゃんと言え!このバカ!」と言いたく(痛く)なります。
「お前はそれが仕事なんだからやれて当然だろ?営業と事務の兼務の人間は本業があるからそうすぐには覚えられないんだよ!おまえ、そういう人間のコスパのことなんか真剣に考えたことねえだろ?!しかもプロが俺らド素人(初心者の読者)にマウントしてんじゃねーよ!恥ずかしいと思わないのか?プロならプロにマウントしろよ?
ドラムで言うとピーター・アースキン先生クラスの先生がとんでもないシンバルレガートやって「な?簡単だろ?」というのはカッコイイけど、2流3流がそういうマネしても見苦しいだけ!4流以下の講師ならなおさら!(しかも日本のExcelVBAのレジェンドさんたちって書籍を読む限りでは「初心者への教え方は」ぜんぜんイマイチだし)
人格の高いホンモノの講師さんは、そんなことは絶対に言わずに、でも、しっかりと、俺たちド素人を導いてくれる。そういう人を知っている。」と返しておきたいと思います。


そもそも、そういうことを言う人は、あろうことか、初心者に向かって「俺ってすごいだろ?10分で書けちゃうよ!」と「クソの役にもたたない自慢」をしたいだけなのです。
人間性が低すぎます。
ホント、「専門バカ」って「マウントしたがり」の「結局・自慢話ばっかり」で辟易しますよね、
「自慢したがりの、時代に取り残された一番嫌われる上司」と同じ。

  
=======================================
  

★ ~「生徒さんや独学する人の成長を邪魔してくる」、4流以下のExcelVBA講師、4流以下のExcelVBA著者、4流以下のライター、4流以下の編集者の特徴~

(01)「ヘルプとオブジェクトブラウザの読み方を初心者にもわかるように教えてください」と生徒さんや読者から聞かれても、30秒以内に的確な返答ができない。
100%、「難しいからあとでね」「まだ早いからあとでね」とお茶をにごし、絶対に教えてくれない。
インストラクタとしての自覚も使命感もないため、「初心者にどうやったら、ヘルプとオブジェクトブラウザをわかりやすく理解してもらえるか」という準備・訓練・試行錯誤 を普段からまったくしていない。当然そのテクニックも持ち合わせていないし、開発しようとも、これっぽっちもしない。
自分自身、オブジェクトモデルの階層構造の重要性を理解していないから。
そのため、「ヘルプとオブジェクトブラウザを読みこなすために最低限必要なこと」すら、リスト化できていない。

(02)「変数?そんなの全部Variant型でいいよ?今後もそんなに深くはやらなくていいよ?多少の違いくらい知っておけば。」と必ず言う。自著に書く。それを但し書き無しに、安易に、言う。書く。

(03)そもそもコンピュータは、少数計算が苦手でよく計算ミスをすることを教えてくれない。コンピュータやマイクロソフトは「間違わない」前提ですべての話をする。
(こういう人は「人間らしさ、アナログ感覚・感・勘」もバカにしているかもしれない・・・)

(04)Excelがどういうときに小数計算ミスなどをするかを教えない。
(僕もよく分かってないから知りたいです。)

(05)オブジェクトモデルの階層構造の一覧図を見せない(Excel2000~2003のヘルプに記されている一覧図。)

(06)「Range("A1")」という「階層構造などを省略しまくったエラーだらけになる書きかた」を、「なんの但し書き」や「補足説明もせずに」、平気で自分の著書や記事に「安易に」「何度も」書く・説明する。

(07)階層構造を省略しない書き方を覚えるほうが、「急がば回れで上達が早まるし、自力でのエラー解決にも結びつく」・・・ということを教えない。

(08)オブジェクト変数をしっかり教えずにWithでの書き方ばかり教える

(09)Rangeオブジェクトはコレクションっぽい動きをする、ということすら教えない。

(10)値やオブジェクトを返す自作関数の重要性を教えない。
それらがプロパティやメソッド、また、「名前付き引数」などの理解に通ずることとかも。「名前付き引数」はもともと「引数を持つ ” 関数 ” のもの」であって、プロパティやメソッドだけのものではない。ヘルプにもそう書いてあります。(カッコの有無でエラーになるかならないかも。参考URL→コンパイルエラーにならない関数の使い方――括弧の有無、複数の引数、Callステートメント、戻り値、名前付き引数と順番

(11)「SQL」を教えない。自著等々で紙面が足りないのは理解できるとしても、存在すら教えない。「VBAと併用する良い道具/上達の方向性の1つ」としての紹介すらしない。
(「データ管理」の「基礎」のことをそもそも知らない。Excelやプログラムそのもの、それ自体がムダ、というケースのことも考えない。)
※「Excelは表計算ソフト」を力説しながら、にもかかわらず、「VBAやワークシート関数よりも計算やリストアップに特化したSQL」や、また、ピボットやQueryTableオブジェクトの話(省力化の話・コスパアップの話)を一切しない、「その神経」が僕には全く理解できません。
特に「SQL」はExcelでも使えるのに、なぜ、存在すら隠すのか、なぜ、無駄なVBAや関数を書くことを教えるのか、僕には1ミリも理解できません。

(12)ExcelでSQLがどのように使えるかを教えない。自著等々で紙面が足りないのは理解できるとしても、存在すら教えない。「VBAと併用する良い道具/上達の方向性の1つ」としての紹介すらしない。

(13)内部結合、外部結合を教えない。自著等々で紙面が足りないのは理解できるとしても、存在すら教えない。「VBAと併用する良い道具/上達の方向性の1つ」としての紹介すらしない。

(14)Excelであっても、「シンプルなミニリレーショナルデータベース作成なら、割と簡単に・かつ・バージョン2000以降からできる」ということについてまるで教えない。

(15)マクロの記録機能を、実用化できない。実用化サンプルを提示できない。
マクロの記録機能を、「単なるオブジェクトの調査機能」としかとらえていない。
=「データ管理のコスパ」のことを考えていない。知ったかぶり。

(16)「マクロの記録なんてムダ」で(オブジェクト調査にしか役に立たなくて)、「いわゆる汎用的なプログラム」さえ書けば、「絶対に効率化・コスパアップが図れる」と思いこみ・決めつけている。
現実には、「いわゆる汎用的なプログラム」さえ書けば、「100%絶対に効率化・コスパアップが図れる」とは、「必ずしも言えない」。
むしろマクロの記録機能を半利用するだけのほうが「いわゆる汎用的なプログラム」を書く場合よりも、「効率化・コスパアップが図れる」場合も意外とある・・・と自著等で言わない。

(17)ピボットテーブルを「単なるちょっと便利なだけの出来合い集計機能」とだけしか認識していない。そしてそう自著に書く。但し書きもせずに。
もともと使用目的が異なるのにワークシート関数も妄信していて、「いつまでもピボットのままではいけないから関数で処理できないかを考えて」と「関数がさも優位であるかのように誤った説明を自慢げにしたり」、「ピボットを使ってはいけない」などと誤った知識を読者や生徒さんに植え付けようとする。そうで自著で書く。
ピボット使わないなら「SQL」を教えるのかと思えば、SQLのことすら知らない。紹介もしない。自著で。

(18)グラフのVBA操作を詳しく教えない

(19)グラフの話と関連して、問題の数値化、仮説と検証、選択と集中、などとからめた話は一切しない。そのメリットデメリットなどの話とか。

(20)ADO、DAO、SQL、の合わせ技を教えてくれない

(21)Microsoft QueryとQueryTableオブジェクトの違いについて教えてくれない
というか、違いがわからない。

(22)Access(mdbファイル)を使っての「クライアントサーバもどきシステム」を組んで運用もした経験が一度もなく、Access(mdbファイル)の「SQL Serverやオラクル等よりも強いところ」を経験したことがない。
※もちろん、データベースシステム(データベースエンジン)としては「SQL Serverやオラクル、MySQL等のほうが高機能で、何10倍も良い」に決まってますが、でもそれでも、Accessにも多少の強みがあります。
フォーム機能や帳票機能などです。
また、クライアント台数が少くて・かつ・ユーザー別セキュリティが無くてもいいなら、「簡易クライアントサーバシステムもどき」が、あきらかに「SQL Serverやオラクル、MySQL等よりも、何倍も早く・安く」構築できます。
小さな規模なら、各種「説明用・インタビュー用のプロトタイプ」の作成にも使えます。(フォーム・DB全体など)
その部分ではVB6でも勝てないような場面もあります。
そういうことを知らないと、そこから派生して、「だからこその、Excelでのコスパアップの勘所」がわからず、いたずらに「なんでもExcelで(あるいはSQLやその他の出来合い機能を使わずExcelVBAばかりで)やろうとして」、で、「無駄なExcelVBAプログラムやワークシート関数」を増やしてしまいます。
(逆になんでもAccessでやろうとする、これまた愚かな人もいますが・・・)
というか、自分が「無駄なExcelVBAプログラムやワークシート関数」を「今まさに書いている」、ということにすら気づけません。そういう生徒さんを量産してしまいます。
これは、特にAccessを使わずExcelとSQLなどを使って処理する場合にも通じてきます。

(23)AccessとExcelの違いについて疎い
大量データならアクセス、高速性ならアクセスなどと、どうでもいい「的ハズレ」な説明しかできない。

(24)Accessとの連携VBAに疎い

(25)Access(mdbファイル)が壊れないようにする方法を知らない

(26)Accessの速度低下防止方法を知らない(データベースの設計上の高速化と、クエリの高速化)

  
  
★★★ 補足01

★ ExcelやWordの「マクロの記録」で書かれたプログラムと、ユーザーが手作業で書くプログラムとの違い(「マクロの記録」が汎用的にならない理由)

~中略~
一般的に、(限定的ではない)汎用的で再利用しやすいプログラムを作るには、前項の(a)~(f)のような書き込み要素が「すべて」必要です。

しかし、ExcelやWordの「マクロの記録」によって自動的に書かれたVBAプログラムには、以下の要素しか自動的に書き込まれません。

(e)オブジェクト式とオブジェクトの5つの機能のうちの3つ(プロパティ、メソッド、ユーザーが入力した入力値)
(f)列挙(列挙型/列挙体?/Enum)
(g)列挙用の組み込み定数的なもの

次のものはスッポリと抜け落ちてしまっています。

(a)変数(一般的な変数やオブジェクト変数)、配列、定数
(b)演算子
(c)関数
(d)ステートメント(分岐処理、繰り返し処理、エラー処理、などの基本構文)
(e)オブジェクト式とオブジェクトの5つの機能のうちの2つ(イベント、階層構造自由往来機能、)

特に、(a)~(d)は汎用的かつ、再利用できる便利なプログラムには必要な書き込み要素です。
でも「マクロの記録」で書き込まれたプログラムは、この(a)~(d)がスッポリと抜け落ちてしまっています。
さらには、(e)も、「イベントや階層構造自由往来機能」は抜け落ちてしまっています。

以上のようなことから、「マクロの記録」で書き込まれたプログラムは、「限定的なプログラム」とならざるを得ません。

「”汎用プログラム作成”のための書き込み要素の抜け落ちが大きいため」、「限定的なプログラムとならざるを得ない・・・」ということです。

そのため、「マクロの記録は限定的にしか使えないから役に立たない」というエンドユーザーや、下手をすると講師もいるのですが、ただ、それは間違っています。

ユーザーの習熟度とコストを考えた場合、「マクロの記録」で作ったプログラム(Subプロシージャ)は、作り方・使い方次第では「戦力」に「十分」なりえます。(もちろん「オブジェクトについて調べるだけ」という消極的な使い方だけではなく。)

例えば、「セルの値を操作するマクロ」の場合は、確かに限定的になってしまって扱えないこともあります。でも、それでも、それをちょっと部分修正すればほぼ汎用的になって使える場面が増えるマクロだってあります。
ほかには、たとえば、セルの値をいじらない・・・、
・「セル書式を変更する」マクロ、
・「よく使うテキストボックスや矢印をフォント設定や境界線設定などを既に行った状態でワンクリックで表示させるマクロ、
・きまりきった「列変更+拡大縮小+列挿入+数式入力+セル設定+ウィンドウ固定等々30工程」などをワンクリックで実行してくれるマクロ
など、リボン(特にアドインタブにて)やクイックツールバーに「ボタン化」しておくと、とても便利です。
作表の準備のための操作や、作表に使う操作などをマクロ化&ボタン化しておけば、いちいち数段階のメニューをたどらずとも作業がしやすいです。
そういったプログラムを作るのに、「プログラムの中身をきれいにしたい」と、いちいち、Webでオブジェクトを調べてマクロ化・ボタン化するのはバカらしいです。時間コストと金額コストの無駄遣いです。そして実際「専門バカ」はそれをやってしまいます(そんなのあとから書き換えることなんて、あんましないのにね)。
そういうものを作るときこそ、「マクロの記録」機能の出番です。

「マクロの記録は役に立たない」と豪語している人は、こういうことを考えません。
「プログラムが書ける人間が偉い」と思っているのです。
思い込みと決めつけが激しいタイプの方ですね。
「別に汎用プログラムが書ける人が偉いんじゃなくて、低コストで問題が解決できる人のほうが偉い」んです。
「それについて、汎用プログラムが必要なら書く」「マクロの記録機能であってもコスパが良くて問題解決できるならそれでOK」、というだけのことなんですが、「汎用プログラムが必要のない・でもExcelでの自動化の要求されるシーン」にまで汎用プログラムを書こうとするのはこれまた「専門バカ」のやることです。
そしてそういうシーンは、Excel操作では意外と少なくないのです。
特に大きな説明シートや、Wordならマニュアルを書いたりするような場面では多いと思います。
(「マクロの記録」機能を使うことは、プログラミングがあまり分からない人でもできます。)

そのほか、「本当に汎用化するかどうか決めるまで、マクロの記録でつくったものや、それを半汎用にアレンジしたものでやる。プラス、一部、手作業で。それで今のところ十分。使用頻度の増加や場面(条件分岐)の増加が発生してから考えればいい。」、ということだってできます。
「コスト」のことを考えるなら当然そういう場面もあります。

「マクロの記録は役に立たない」と豪語している人は、そういうことも考えません。
結局は、
「役に立つように機能をコーディネイトする能力がない無能な人」
「使える機能の良さを見ようとせず、デメリットばかりほじくり出し、使えないと決めつける無能な人」、
「” 無知の知 ” ができない人」、あるいは
「試すことすらしない知ったかぶり」です。

こういう人は、同僚やお客様にもそういう態度をとる人だと思います。

そして、「コスト(時間コスト・金額コスト)」のことも全く考えません。

ご注意ください。
  
  

★★★ 補足02

★ 『なんでもかんでも最初から全て「汎用プログラム」をつくれば絶対にコスパアップできる』とは『限りません』


※ちなみにですが、基本的には、『なんでもかんでも最初から全て「汎用プログラム」をつくれば絶対にコスパアップできる』とは『限りません』。
考えてみてください。昔から・・・、” 今もあいかわらず ” 、「作ったけども使われなかった不便なシステム」というゴミシステムが繰り返し生み出されています。
※参考記事『用語:ExcelやWordにおける「マクロ」とは?VBAと何が違う?(「ExcelやWord自身」は「マクロ」をどう判別・区別しているか?)Accessの場合は?

そして、それらは全部、「プロ」が作ったものです。全部、「汎用プログラム」です。
昔から「多少は減ったとしても無くなることが絶対にありません(実は減ってすらいないかも?複雑・高度になっている分、オーバースペックだったりでむしろ増えているかも?)。
そのことこそが「汎用プログラム・役に立たず」を、「証明」しています。
ExcelVBAにあてはめて考えれば、「マクロの記録」機能を利用して自動化・あるいは半自動化して「まずはそれを使い」、そのあとに、そこではじめて、使用頻度や機能追加要望などを加味して、「それを汎用化するべきかしないべきかを検討する」、というステップを踏まないと「汎用プログラム」は「ゴミ」と化す場合が意外とあります。(もちろん全部とは言いません。)
逆に、「マクロの記録を使ってデータの管理の ” コスパ ” のアップ」が図れるシーンが、「確実に」あります。そして「Excelをそこそこお仕事に使う人」なら、そのシーンが、実は、「少なくありません」。(特に個人レベルで使ったり、レイアウト関係の自動化などで。まだVBAの初心者のうちとか、そもそもVBAを全く知らない人とかも。)
「哀れなExcelVBAの専門バカ」の人たちは、そういうことや「コスパ」というものをまったく考えず、「すべてのシーンで」「無条件に」いきなり「汎用プログラム」を作ろうとします。そして「マクロの記録」機能をバカにします。
もっというと、「VBAを知っているだけ程度ごとき」で「おごり」、また、「データの持ち方の基礎やSQL 、ADO/DAO、QueryTableオブジェクト、ピボットVBA」すら知らない・教えない・広めようとしない「僕と同じド素人」のくせに、また、「そもそもデータ管理の基礎やSQLなどを知らず、Excelを紙と電卓の延長としてしか使えないくせに・その使い方しか知らないくせに」、エラそうに「安易に」よく考えもせず、「全部」汎用化しようとして「メンテしづらい無駄なVBAプログラム」を「量産」します。あるいは、そういう方法・手法を教えようとします。広めようとします。そして「使われない汎用プログラム」を作るのです。「使われないシステム」と同じです。使用頻度が低いのに汎用化したり・要望と遠いものを作ってしまったりして、結局、それを作った時間は全部パーです。
経営者目線で見れば、ある意味給料泥棒。『 汎用プログラム 』って偉そうに威張ったところで、パズルやって遊んでるに等しい。ばかばかしい。でも『 汎用プログラム 』って「見ただけ」だと大変そうだから経営者はわからない。騙される。WordやAccessのプログラムよりも、より、効率が悪く・質の低い・かつ無駄で本来は要らないプログラムがExcelでは増えることが多いのに見抜けない経営者がほどんどです。
僕みたいなド素人が見ても、SQLが一か所も使ってなかったり、マクロの記録の機能の部分活用が一か所もできてなかったら、その人は「コスパをまったく考えないことが明白な」ダメExcelプログラマーですぐに給料減らしてもいいくらい。

害悪以外のなにものでもありません。
「ゴミプログラムなんか作っとらんで、そんなゴミ作っとるあいだに、ほかの役に立つ仕事せんかい!お取引先の××君がマクロの記録機能で3分で作ってくれたヤツのほうがみんな使って効率が上がっとるやないかい!!」っていうケースだってあるのです。
自分で使うだけなら勝手にすればいいのですが、そうではなく、例えば「組織内で、他人に使わせる・彼らの習熟度によって変える必要性がある」という場合、「自動記録で作ったマクロを汎用的になるように即座に部分的に修正できる」、「作ったマクロをメニュー化できるよう教育する」、「汎用化するかどうかを判断するまでのテストプログラムという位置づけで、自動記録のマクロをそのまま使ったり、一部修正したものを活用」ということもコスパアップに十分つながります。)
そもそも、「自分は営業との兼任社内SEなので、いちいち、考えて作ってるヒマなんかない。」とか、「汎用マクロ作ったところで ”使いこなせない” ユーザー、マクロの記録機能で作ったこぢんまりしたプログラムのほうが、”ミスが少ない” ユーザーだっている」わけですから。

「そんなことない。慣れればこのくらいのコード、10分もあれば書ける」という4流以下の市販書籍著者などもいますが、「そうなるまでに、どんだけ時間かけて、どんだけ繰り返し練習しなけりゃならないかもちゃんと言え!このバカ!」と言いたく(痛く)なります。
「お前はそれが仕事なんだからやれて当然だろ?営業と事務の兼務の人間は本業があるからそうすぐには覚えられないんだよ!おまえ、そういう人間のコスパのことなんか真剣に考えたことねえだろ?!しかもプロが俺らド素人(初心者の読者)にマウントしてんじゃねーよ!恥ずかしいと思わないのか?プロならプロにマウントしろよ?
ドラムで言うとピーター・アースキン先生クラスの先生がとんでもないシンバルレガートやって「な?簡単だろ?」というのはカッコイイけど、2流3流がそういうマネしても見苦しいだけ!4流以下の講師ならなおさら!(しかも日本のExcelVBAのレジェンドさんたちって書籍を読む限りでは「初心者への教え方は」ぜんぜんイマイチだし)
人格の高いホンモノの講師さんは、そんなことは絶対に言わずに、でも、しっかりと、俺たちド素人を導いてくれる。そういう人を知っている。」と返しておきたいと思います。


そもそも、そういうことを言う人は、あろうことか、初心者に向かって「俺ってすごいだろ?10分で書けちゃうよ!」と「クソの役にもたたない自慢」をしたいだけなのです。
人間性が低すぎます。
ホント、「専門バカ」って「マウントしたがり」の「結局・自慢話ばっかり」で辟易しますよね、
「自慢したがりの、時代に取り残された一番嫌われる上司」と同じ。