Excel VBA の復習

Excel VBAの講座

ここのブログ、VBA でプログラミング入門 にも書いてますが、
VBAの講座は、芦原 和人先生の教室、ドリームプラス で、
何回か受講したことがあります。
その割にものになっていないというか、、、


■ 1回目
2018年10月14日 ~ 12月9日まで5回で、この時は、吉田 拳さんの
たった1秒で仕事が片づく Excel自動化の教科書
を教材に使いました。

■ 2回目
2019年3月3日~4月28日の5回で、この時のことは、
このブログの、パソコン関係のこと の、
3~13、15 に詳しく書いてます。
この講座から、教材は、市販のものではなく、
芦原先生が作成したものを使うようになりました。

■ 3回目 
2020年1月25日~2月22日までの5回 
 VBAで作る神経衰弱ゲーム
あんまり難しいので、2月22日から、
 VBAで作る神経衰弱 導入編 4枚バージョン
の資料も、先生が作ってくれて、
2月29日、3月7日、14日と、追加で講座をやってくれました。
教材は、導入編 4枚バージョンを含めると、150ページ近くに。
復習に追われて、ブログを書く暇がありませんでした。


で、ここのところコロナ第5波(2021年夏~)で、
家にいることが多いので、
VBA をもう一度勉強し直そうと思って、
購入していた入門書とか、見直していました。

 

 

VBAの入門書について

2回目の講座を受講時と、受講後に、何冊か入門書を購入して、読んでました。
1)、2)、4) 立山 秀利 さんの著書。
3) 伊藤 潔人 さんの著書。

■ 1) 2019年3月23日 メルカリ¥666
入門者のExcel VBA―初めての人にベストな学び方
– 2012/4/20 2016年8月1日 第15刷発行

■ 2) 2019年5月4日 メルカリ¥798
ExcelVBAのプログラミングのツボとコツがゼッタイにわかる本 
– 2007/10/23 2015年6月1日 第1版第18刷
【レビュー】「Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 ―最初からそう教えてくれればいいのに!」はExcel VBA初心者の最初の一冊におすすめ! 更新日:2019年1月25日 公開日:2014年7月11日


■ 3) 2019年7月4日 メルカリ¥1,200
いちばんやさしいExcelVBAの教本 人気講師が教える実務に役立つマクロの始め方
– 2018/1/17
【レビュー】2018.01.20「いちばんやさしいExcel VBAの教本」レビュー 


■ 4) 2019年8月20日 駿河屋 ¥600
脱入門者のExcel VBA 自力でプログラミングする極意を学ぶ
– 2016/3/18 第1刷発行

 

 

 

星くん、VBAに出会う!


数日前に、ここのブログ、
VBA でプログラミング入門 を読み直していて、
2.2 ネットで、VBA の情報を探してみました。
の、「星くん、VBAに出会う!」が書籍で出版されてるのを知って、
アマゾンで(送料込み654円を)購入してみました。

 

 

(写真をクリックすると拡大表示します。戻る時は、『 キー』で)

新品状態の、とてもきれいな本が届きました。

 

 

【レビュー】
「ストーリーで学ぶ Excel VBAと業務改善のポイントがわかる本」は物語形式で星くんといっしょにVBAを業務に生かす方法を学べる!
更新日:2014年10月6日 公開日:2014年8月22日
https://excel-master.net/review/story-excel-vba-business-improvement/ 


2019-09-05
VBA 初心者の1冊目にオススメ|ストーリーで学ぶ 
Excel VBAと業務改善のポイントがわかる本
https://www.mutable.work/entry/2019/09/05/213334 


その他 こんな書籍もあるんだな~と。
「ExcelVBAを実務で使い倒す技術」を初学者にオススメしたい3つの理由
2018-12-19 / 2019-02-04
https://moripro.net/recomended-book-excelvba/ 

 

 

「星くん、VBAに出会う!」第1章 第8話 の、

さっそく読みはじめたのですが、第1章第8話でつまづきました。
ネット上だと、ここからの部分。
https://vbae.odyssey-com.co.jp/column/no8_1.html 

つまり、マクロの記録をOKして、
A1セルを選択して、
フォント色を赤にして、マクロの記録を終了。
これだけの作業で記録された内容の部分、、、

 

私のWindows10の、Excel 2010 で記録されたのが、

Sub Macro1()

‘ Macro1 Macro


    Range(“A1”).Select
    With Selection.Font
       .Color = -16776961
        .TintAndShade = 0
    End With
End Sub

 

本に書いてあったのは、Excel 2003 での作業で、
Range(“A1”).Select
Selection.Font.ColorIndex = 3

 

Excel 2003 での、ColorIndex = 3 の代りに、
Excel 2010 の、Color = -16776961 が使えるか?
つまり、ColorIndexプロパティではなく、
Colorプロパティでも、同じ作業ができるのか?
で、数日、迷いました。

 

第1章 第9話 までやってみると、

八木くんが作ったテストデータの部分が、
Sub AddTestData からで、ネット上だと、この部分。
https://vbae.odyssey-com.co.jp/column/no9_2.html 
(画像をクリックすると拡大表示します。戻る時は、『 キー』で)

Sub AddTestData プロシージャで、
ColorIndex = 3  の部分を、
Color = -16776961  に置き換えて実行してみたら、
問題なく動作しました。

Sub Syori (処理)プロシージャの方も、
Color = -16776961  に置き換えて、実行したら、
動作しないので、???になった訳です。

このサイトを読んで納得しました。
http://officetanaka.net/excel/vba/cell/cell04.htm
Color = -16776961 ではなく、
Color = RGB(255, 0, 0) と入力すれば、本と同じになると。

それでは、マクロで記録された数値、
-16776961  って何?と思ったのですが、
http://officetanaka.net/excel/vba/graph/25.htm 
Colorプロパティには、
RGB関数で計算したRGB値を指定するのがセオリーです。
と書いてあって、
マクロで変な数値が記録されたからとって、
その変な数値をそのまま使うのではなく、

で、納得しました。

 

↑を参考に、
Color = RGB(255, 0, 0)で、 実行できて、ホッとしました。
(画像をクリックすると拡大表示します。戻る時は、『 キー』で)

 

それにしても、Excel 2010 のマクロの記録、
Color = -16776961 には悩まされました。

Excel 2007 以降でも、
2003の、 ColorIndex = 3  でも実行出来たのだけど。

 

Colorプロパティ については、

芦原先生の講座のテキストをひっくり返して見ていたら、
2019年3月3日にいただいた、第1回の資料に、
Color = VbRed で実行できる、

(芦原先生のユーチューブチャンネルにもアップされてました。)

 

その他の色も、
Color = RGB(x,x,x) で指定できると書いてありました。
RGB は、光の三原色、赤(Red)、緑(Green)、青(Blue)の順、
とありました。

(この部分も、芦原先生のユーチューブチャンネルにありました。)

 

ColorIndex についても、
第1回の資料のさいごに細かく載っていたみたいで、
以前、こんなブログも書いていました。
https://yanai-piano-electone.com/everyday/vba-colorindex/ 
なんか、忘れるの早過ぎというか、ぜんぜん覚えてなかった。。。

 

で、記事の続きもあるのですが、
長くなってしまったので、次回 に。