GoGoマクロのブログ

初心者向けマクロ講座「Go!Go!マクロ」の筆者三太郎の公式ブログです。

GoGoマクロ

エクセル仕事の自動化が誰でもできる本

RPAがバカ社員を量産する!

2021-07-27 08:54:10 | マクロ作成のコツ

人間誰しも、40過ぎた歳になってきますとそう考えて、
マクロを勉強したくなる人も多くなる(!?)と耳にします。

私、以前から書いていますように、
毎朝マクロでネット情報の自動収集をやっていますので、

収集している各種の情報の中でも、ExcelやマクロやVBAに
ついて、ブログやらツイッターやらFBやらで世間の人が
何かつぶやいてる様というのが、毎日、手に取るように
わかるわけです。

それで、最近のその傾向として、

「やっぱ、次勉強するならエクセルのマクロだよなぁ~」
の人が、大変多くなってきている気がしています。

例えば、最近の流行りだとRPAってあるじゃないですか。

RPAって、ロボットでパソコン操作を自動化する為の
ソフトウェアというものですが、大企業にお勤めの人だと、
自分の会社でもそれ導入し始めた言う人も多いかも
知れません。

要は、その目的はマクロと一緒で、PC業務の効率化、
自動化でありますから、ある意味、マクロとRPAってのは
「ライバル関係」にある思われがちなわけですけれども、、

けれど、私思いますに、

真っ当な情報システム部門のある会社であれば、
間違ってもRPAなんてものを導入する事はしないだろうー
って思うんです。
(まぁ、経営側からの圧力はあるにせよ・・・です。)

つまり、それだと社員がどんどんバカになっていく・・・
(失礼!)、そうとしか思えないからです。

そもそも、コンピュータっていうのは、
「使う側」と「使われる側」があるわけです。

他人の作ったソフトの使用方法をせっせと覚えて、
「私、このソフト使いこなしてる!」って、
そう思ってる人は、スマホやExcelユーザーにも
多いかとは思いますが、、(笑)

でもそれは、

ただそのソフトにあなたが逆に使われてるだけなので、
誰か他人が作ったソフトの操作方法をひたすら覚えて、
その通りに使ってる(ソフトに操られてる!)という
だけなのです。

コンピュータを使う、つまり、自分の思い通りに
パソコンに仕事をさせる、その為の手段と言うのは、
唯一、プログラミングしかありません。

だから、

Excelでマクロにしろ、プログラミングが何もできない
でただ他人の作ったソフトに頼っている限り、
あなたは使われてる使用人に過ぎない・・・、という
コンピュータとの関係にあるのです。

プログラミングが多少なりとできるようになると、
あれやれ!これやれ!とあなたが上司となって、
自分の思い通りにパソコンに指示が出せるわけです。

すなわち、

その指示書いうのがプログラミングのコードになる
わけで、このメルマガで勉強しているExcelの場合、
それがすなわち、VBAで書いたコードになります。

要するに、RPAなどのソフトの使い方を覚えるのは、
ただの記憶力の問題ですがプログラミング(マクロ)
は「思考力」ですから、

それで、

世界一の大富豪になったあのビル・ゲイツも、
iPhone生みの親のスティーブ・ジョブズも、
Facebook創設者のザッカーバーグも、
Amazon創設者のジェフ・ベゾスも、

元々は皆、プログラマーだったわけです。
プログラミングで思考力を身に付けて、我が物顔に
ITを動かすことが出来るようなったお陰ですね。
(たぶん!)

それゆえに、

ただそうしたソフトの使い方を一生懸命に覚えて、
パソコンにただ使われてる人だらけの会社は、、

そうゆう会社は、だから先ほど社員はどんどんバカ
になっていく・・・だなんて、ちょっと失礼なこと
を言ってしまいましたですが、、

事実、益々思考力が身に付かない、社員をIT弱者に
導く方向に経営している、と言うことにもなってる
思うわけです。

少なくとも、そういうことまでちゃんと分かってる
経営者なり、システム部門のある会社であれば、、

間違ってもマクロとRPAを比較して、RPAの方を選ぶ
だなんて馬鹿げたことはしないだろちうと私、個人
的にはそう思っています。

あまけに、RPAソフトというのは使用料がバカ高い
と聞きますけど、Excelで、マクロの利用料は全部
タダです。Excelの購入費用以外には一円も掛かり
ません。

加えて、導入・構築にも多大な時間と手間が掛かる
とのことで、マクロを習得するより遥かに多くの
労力掛けてるようで、可也大変そうです。

マクロも、大変なやり方で勉強すると確かに大変で、
理解するには時間も掛かるわけではありますが、
けど、賢いやり方を勉強すれば賢く、短時間でも
やれるものです。

先日、三太郎アカデミーのある生徒さんがその辺を
うまく言葉にしてくれましたので、読者の皆さん
にもこれをシェアしたい思います。

以下は、「マクロの記録」を使うすべき理由に
ついてです。

1、記録から一般化する方法を知っていれば難しいことはない。マクロの記録を一般化の糸口を教えていただいているので、以前よりかなり作業が楽しく思えます。
2、ネット検索で出てくるマクロのサンプルは、簡単なことを難しく説明しているのか、要点がよく分からないので、(ムダな時間食うだけでー)見ないほうがいい。
3、余分な言語知識を学ばなくても、要所を押さえればマクロが組めるから、わくわく面白い。

これが、これこそが、本講座の目的と言うか、教え方
言うか、真髄と言うか・・・、なのですが、

これ私、結構長年中々うまい表現の文章が書けなくて
中々ちょっとよく伝わらない、うまく説明できてない、

その感がずっと長らくしていまして、そのジレンマで
原稿何度も丸めて捨てる作家の思いがありました。

アカデミー塾生にこう表現してもらえましたお陰で、
長年喉に痞えた小骨が取れて、やっとスッキリする
ことができました!(笑顔!!)


と言うことなので、

ネットでよく見かける間違った勉強法さえしなければ、
マクロは大丈夫です。

RPAの操作覚えて、見るからにややこしそうな構築過程
を踏んでー、、、よりも確実に簡単で、遥かに時間も
手間も掛かりませんし、思考力も身に付いて賢くも
なれます。それは、私が責任を持って断言します!

但し、それはあくまで間違った方法さえしなければ・・
の話ですから、上記の3項目さえちゃんとわかっていた
ならば、マクロ作りは何も怖いことはないわけです。
逆に、楽しく面白く、なってきます。


このご時世ですし、
40才になった人も、50代で定年まであと何年かの人も、

「このままでいいのか?」と思ったら、

始めるべきは、まずはプログラミングです。
Excelの場合なら、それはマクロです。

60代で老後に何か、の人もぜひ、脳の若さを保つ為
にも、身の回りのデータ整理の実益も兼ねてマクロ
のプログラミングで、思考力を磨きましょう!

それで、コンピュータを自分の思い通りに動かす!
パソコンに仕事させられるのではなく自分が仕事を
させる!その術を、ぜひマクロで身に付けていって
ください。

コメント

ExcelVBAの未来は・・・

2021-07-21 07:31:23 | よもやまな話
ここでも幾度か言ってきましたけど、 マイクロソフトいいます会社はとにかく秘密主義ですから、自分たちの未来は絶対に外部に漏らす ことはありませんから、誰にも未来は分かりません。

なので、以下の今日書く話に関しては、

もし、わたくし三太郎が、
「マイクロソフトのCEOだったら、こうする!」

という「未来予想図」です。(by ドリカム 笑)

たぶん間違いなく、(私の理想と)実際の未来とは
大きく異なる思いますので、、

その点は予めご了承の上、以下読んでみてください。


それで、前回に書きました「Windows 11」の話でも、
あれも正しく、我々ユーザーにとっては”寝耳に水”
みたいな突然発表の話であったわけですが、

ただ、

想像的に確かな話で言うと、マイクロソフトは
今後、

データ収集(クラウドサービス含)と、
AI技術と、
前回言ったECサイトの強化と、

これらに力を入れていくであろうことは確かかと
思います。(まぁ、他の巨大IT企業も皆これは
一緒な訳ですが。。)


で、以前にも私の大胆未来予想と言うことで、

近未来のExcelでは、今付いている「マクロの記録」
が、「マクロのAI記録」ってな機能になるだろうー
と、このメルマガに書いたことがありましたですが、

今のAIは「ディープラーニング」の時代ですから、
その名の通り、AIに深く学習をさせる為のデータ
量が特に重要になってきます。

だから、1番目と2番目はAI技術の強化と同じ意味に
(目的に)なるかと思いますから、詰まる所、
「AI」と「物販」、この2つが今後の柱ですね。


と、ここまでは、一般的な今後のIT動向も一緒
ですから、大胆予想でも何でもないわけですが、

で、今日の結論から先に言いますと、

「ExcelVBAは、分離して残す。。」

つまりは、(専門的な難しい話で言えばですが)

前々から職業プログラマーに評判の悪いVBAの、
オブジェクト指向型言語の部分は切り捨てて、

いわゆる手続き型言語の部分だけを残し、
真にユーザー向け(ノンプログラマーが手軽に
使えるためのカスタマイズ言語)になる。

それが、私の考えるVBAの未来像になります。
(ただの理想です。笑)


それで、

プロ向けには、AIにも強く、職業プログラマーに
今一番人気で将来性の高いPython(パイソン)
という言語を、

Excelの本格システム開発用としてOfficeソフト
に搭載する、です。

とにかく、VBAのオブジェクト指向なるものは、
VB開発当時にマイクロソフトが見栄を張って
当時の最新技術を採用した、急造の機能なもの
ですから、、

完成度限りなく低く(ほぼ無く)、その後の
継ぎはぎ継ぎはぎで、まさしく増改築を繰り返して
不格好で雨漏りだらけの家、みたいな歴史を巡った
状態となっています。

一番肝心な柱の部分(専門用語で言う継承)が
無かったりもします。

それ故に、

VBAは、プロの誰からもほぼ見下される存在で、

「こんなもん、オブジェクト指向じゃねーよっ!」

って、本物をよく知るプロであれば、誰しもに
必ずそう言われる代物であるわけです。


なので、

理想的なExcelでのプログラム開発いうのは、

・ノンプログラマーは、VBAで便利機能を組み、
・職業プログラマーは、Pythonで本格的な
 ソフト開発をする。

この明確な棲み分けと使い分けをすることで、

プロでもノンプロでも、双方に使い易く、
開発しやすいものとなって、よりExcelの利用も
広がり、Officeもよく売れる(!?)
ということになろうかと思います。

そうなったら、

ユーザーも、マイクロソフトも、バンバンザイ!(笑)

ノンプログラマー(すなわち、一般のExcelユーザー)
には敬遠されてがちなVBAが、
プロの職業プログラマーにはバカにされがちなVBAが、

この今のVBAの最大の2つの問題点を、
これで一気に(一石二鳥で)解決できますですから、
Excelの利用がぐんと伸びるのは間違いないです。

更には、ノンプログラマー(一般のExcelユーザー)
の側からの理想で言いますと、

VBAからオブジェクト指向の部分を取っては困る部分を、
ライブラリー化(平たく言うと、関数に)してくれた
なら、この講座でよく使ってきたブラックボックス
(中身を理解する必要も見る必要もないもの)として、

真に、VBAがかつてのBASIC言語のレベルで誰にでも
手軽に組める存在になるわけですから、

かつての「BASIC言語」の、あの古き良き時代が復活
したかのように、どんどんVBAでプログラム組む人が
増えていく・・・。

それで、

半分とは言いませんが、PC職場の3分の1の人達でも
皆がそこそこマクロが組めるようになったのなら、

まさか、RPAなんて邪道なソフトには頼らずとも、
パソコンの自動化は職場の各部署にて、

自分たちのVBAプログラミングによって臨機応変に
必要な効率化していけるようなっていくことだろう
と思います。

いかがでしょう?

私の想い描く、これが近未来のExcelの理想の
VBA像です。

つまりは、職場の皆の「能力アップ大作戦」です!

コンピュータの自動化は、プログラミングの以外
にはないのです。これは過去も、未来も、永久に
変わることのない不変の掟でありますから、

パソコン仕事の能力アップいうのは、
プログラミングの習得意外にはないのです。

プログラミングと聞くとどうしても敬遠する人が
多いわけですが、

その昔、誰もが普通に組めていたBASIC言語の、
そのレベルのVBA言語(余計なオブジェクト指向の
部分を剥いだー)であれば、

(今のVBAでも、長年この講座で教えてきたように、
BASIC言語のレベルの部分だけを使えれば、Excel
自動化の95%は十分に可能だ!)

VBAのプログラミングなんて、意外と簡単!です。
本当です!

職場の全員が・・、とは決して言いません。
平均的以上の頭の回転力のある人であれば(笑)、
(学生時代で言うと偏差値が50以上の人?)、
けっして難しいことはありませんです、
BASIC言語のレベルで習えば・・・です。

なおその辺の詳しくは、こちらぜひご参考ください。

■マクロの勉強量を大幅に減らすコツ
(VBA3つの分類とその見分け方)


今日の話をまとめますと、

ノンプログラマーには敬遠されてるVBA。
職業プログラマーにはバカにされてるVBA。

だから、

ノンプログラマーには、BASICレベルのVBAで。
職業プログラマーには、Pythonで。

このすみ分けに特化した近未来のExcelソフトで、
Excelの未来は、実に明るいです!


以上、
これはあくまでわたくし三太郎の私見(希望的
未来予想!)にはなりますが、

当のマイクロソフト社は前回も言いましたように
決してユーザー本位には考えてくれない会社だ(!?)
と思われますから、残念ながら

私のこの希望的観測が叶うことはまずないだろう
と、思います。(たぶん!笑)


とかく、私のようなSE(システムエンジニア)
いいます職業の人間は、

システム開発の提案をする際には、言語の選定も
任される場合が多いですから、言語特性には
とりわけ詳しく、且つ、今日書きましたような
理想のコンピュータ言語を追い求める
というのが職業柄(職業病!?)でもあります。

理想は高く!現実は厳しく?(笑)


本日は、以上です。
コメント

新型コロナウィルスとコンピュータウィルスとの関係性

2021-07-17 06:33:57 | よもやまな話

いやー、いよいよヤバくなってきましたですね、第5波

このままだと、移動の季節の夏休み明けには必ずまた
東京から全国へと波及するわけですから、
んー、如何ともしがたい状況かと思われます。

特に今、インド周辺に続いて東南アジアが大変な事態に
なって来ているみたいですから、次は当然、東アジアか?

今度のコロナは50代が特に危ない年代だということで、
私を含めましてこのメルマガの読者層の年代にドンピシャ
でありますから、

本当、大変な事態となって来ました、今日この頃です。


それで、このメルマガの読者の皆さんはまず間違いなく
Excelのユーザーと思いますから、数字には強い(!?)
思いますので、ここで一言言わせて頂きたいですが、

なんか、世間の数字のとらえ方が間違ってる思うんです。

たとえばですよ、空港の水際対策でPCR検査って
必ずするじゃないですか。

けど、その検査の精度って前々から7割程度だと
言われているわけです。

あの検査結果って白か黒か、すなわち、陽性か陰性か、
中性ってのは無いわけですから、陰性結果の出た人の
3割は必ず陽性であるわけですよ。

つまり、百人の陰性者の中に必ず30人の陽性者が居る
と言うことになるわけです。違います?

そうすると、2回の検査で2回とも陰性だった人でも、
その100人中の9人は誤診、即ち陽性であるわけです。

100人中の9人ですよ。1000人中の90人、10000人の900人
です。

その900人には、誓約書書かせての自主隔離(自己管理)
だけのようですから、みんな海外からの帰国者や
入国者は、

隔離期間中に、花見に行ったとか、高級レストランに
行ったとか、SNS上にそんな写真やら記事やらが
しこたま載っているわけですが、

そのうちの100人中の9人は必ず誤診の陽性者であるわけ
ですから、前の英国株でも、今度のインド株も、
市中感染が広がるのは、しごく当然と言えば当然の
話です。

けど、ちょっと考えてみてください。。

自分がもし、海外からの帰国者だったとして、
成田で2回のPCR検査が陰性で、自主隔離してください
って言われてあとは自由にさせられたら、どうします?

検査で2回も陰性だったんから、「自分は大丈夫!」
思いますでしょ?

だから、みんな出歩くわけです。知らず知らずに
市中にウイルスばらまく人と化すわけです。
それがごく当たり前の人間心理だろうと思います。

だから、ダメなのはそんな人間心理も全く何も
考えずにやっている、この国の甘い水際対策の欠陥
だと思います。

ちなみに、聞くところによると中国では、
何度検査の陰性に関わらず、入国隔離期間の2週間は、
隔離ホテルの中で部屋から一歩も出れない、
警察官による厳重な監視をされるそうです。

だから、数字を正しく理解することが非常に
このコロナ対策でも重要になるわけです。

3回のPCR検査で3回とも陰性判定だった人の
10000万人に27人は陽性者です。

それが、統計学、確率論の上にも正しい数字の
解釈です。
政治家も役人もメディアの人も、日本はその辺
わかってないコロナ対応関係者だらけです。。


で、私、ITの業界が何十年と長いですから、
言わば、長年コンピュータウィルスとの戦いを
続けてきたと言えます。

なので、新種のウィルスが出てくると、

これは大したことないとか、
これはめっぽう危険な奴だとか、

直感で大体は判るようなっています。

それ、実世界のウィルスでも言えまして、
今回の新型コロナが出始めた頃に、

これは大そうヤバいヤツやー!

との直感を致しまして、昨年の1月には
メルマガの記事でもいち早く書きまして

それで、2月以降に予定していた出版記念の
イベントも全て中止を決めました。

今思えば、これ何かと言いますと、

我々が長年戦ってきたコンピュータウィルスの
対策って、要するに、

・危険なメールは開かない、危ないURLはクリックしない。
・Windowsや各種ソフトのパッチが出たらすぐ充てる
・セキュリティソフトを入れる

この3つだと思いますが、

このどれか一つで万全だ!

というわけでは決してないわけです。

新型コロナの場合はどうでしょう?

・なるべく危険な場所へは行かない越県もしないの行動制限
・マスク、手洗い、消毒、うがい
・ワクチンを打つ

コンピュータの世界のいわゆるファイアウォールが
実世界のコロナ対策でのマスクに当たり、

こまめにパッチ充てる言うのが、手洗い、消毒、うがい
に当たる。

危険なメールは開かない、危ないURLはクリックしないは、
行動制限と同じでであり、

PCにセキュリティソフトを入れるのは、
正しくワクチンを打つ(体内に入れる)行為であります。

このどれか一つでは、決して防げない思います。

ワクチンを打ったからもう安心!なんて風潮は、
間違ってる。と私個人的にはそう思います。

前者の3つの対策が揃ってこその、正しいコンピュータウィルス
の対策であるのと同y9応に、

この新型コロナのウィルス対策でも、
後者のこの3つが、並行しての対策が、
今後も絶対に必要不可欠は続くのだろうと思う次第です。

だから、詰まる所、

新型コロナウィルスでも、コンピュータウィルスでも、
ウィルス対策の基本は同じなんだなぁ~と、

そう痛感する、今日この頃であります。


それで、数字の話に戻りますと、

現在危惧されているいわゆるデルタ株と呼ばれる
インド型ですが、

ワクチン先進国のイスラエル政府の発表によると、
既存ワクチンのデルタ株への効き目が65%だそうです。
これは実に、微妙な数字であります。

当初の効き目(変異前)が製薬会社の発表で95%あって、
ほんとかな?思っていましたが、思いのほかワクチン先進国での
効き目が期待以上に現れましたので、

ワクチンさえ打てばコロナは終わる。
みたいな空気が世界に流れていたのがほんの1か月前
の話だったわけです。

が、それが今では、半年後に3本目打つと効き目
数倍アップみたいなメーカーの話になってきて、

けど、それって半年後に3本目?

どうやら既成のワクチンは5カ月くらいで急激に効果
落ちて来るものとの(未だ不確かな)情報もありまして、

冬にしか流行しないインフルエンザは年に1本、

夏冬、こうして季節構わず流行する新型コロナの場合には、
半年に1回ペースでワクチン打たねばならない・・・のか?
というのが濃厚な話かと思えます。


どっちにしましても、感染者が増えれば増えるほど
また過激に変異する可能性いうリスクも
それだけ増すわけですから、

その意味で、感染増やさぬよう上記3つの基本的な
ウィルス対策は併用してきちっとやっていく。
それしかない思う次第です。

いま最も恐るるべきは、凶暴化した更なる変異だと思います。

 

 

コメント

失敗しない為のループの通な回し方

2021-07-04 09:50:04 | マクロ作成のコツ

今日おすすめのコンテンツ


失敗しない為のループの回し方


これは古(いにしえ)の昔から、プログラマーが一番
恐れるべきは、いわゆる

”無限ループ”に陥ることだ、と決まっています。

その昔に、スーパーコンピュータという高価な
コンピュータを私が使っていた頃には、

たった1秒、そのコンピュータで何か計算をする
(自分が組んだプログラムを実行させる)という
だけで、3百円程の計算費を課金されたわけです。

当時のスーパーコンピュータのUPUの使用料が、
1秒当たり300円もした、と言うことです。

つまりは、

ほんの10分、自分が組んだプログラムが何らかの
ミスで計算か終わらないで、無限ループに陥って
コンピュータを暴走させてしまうようなことを
させてしまうと、

あっという間に 300円×60秒×10分=18万円もの
お金が一瞬で吹っ飛んでしまうことになるわけです。。

私自身は至って慎重派(!?)な人間でありますから、
そのような失敗経験というのは幸い無かったです
けど、

それで一瞬で、

30万や50万の計算費をすっ飛ばしてしまった・・・
言う失敗話は、先輩方からよく聞かされてました。

最近では、

すっかり安価なパソコンの時代になりましたので、
どんなに長時間のマクロ実行をしてPC暴走させた
としても電気代以外はタダですから、

若いプログラマーのそうしたコスト意識も随分と
薄れてきている中にありまして、

まだ不慣れなプログラミングの初心者に対して、
危険なDo文でループを回すよう教える人も増えて
きましたけれど、、

上記のページに書いてある通りこれは間違いなく、
初心者が使うべきループの回し方いいますのもは、

危険性の高い”Do文”ではなく、
より安全な”For文”であります。

そうゆうことで、

初級者の方が繰り返しのループ処理のプログラム
を組む際には、必ず安全な”For文”を使った
正しい組み方をするよう、ぜひ心してください。

それで、

このメルマガでも私よく言ってきましたけど、

そもそも、「マクロ」本来の使命でもあり、
当メルマガのサブタイトルにもなっている、

「面倒くさ~いルーチンワークを撃退させる」

ということは、言い換えるならばそれは、

「繰り返しの操作を自動化する」

ということに他なりませんですから、

ループ処理というものは、エクセルのマクロを
勉強する上で、最も重要な事柄のひとつです。
それは確かですね。

よって、

”ループ処理を制す者がエクセルマクロを制す”

そう言っても過言ではないですから、古の昔から
この不変で正しいやり方いうのをぜひ身に付ける
ようしてください。


あと、これに関連してのループの話でですが、

下記のブログには、少々専門的なVBAの歴史の話も
書いています。

特に、中級者以上の方で、VBAマクロの歴史もよく
分かってる”通(ツウ)”だなぁ~と思われる
プログラムを書きたい人は、こちらもぜひ読んで
みてくださいネ。

ループはなぜ i で回すのか?(三太郎のブログ)

これ知っておくと本当、ツウーですよっ!(笑)


本日のコンテンツは、以上です。

コメント