SSブログ

マクロ・VBA 勉強会、吉田 拳 さんの本を使って 2回目続き [マニュアル本 解説書]

1回目 を休んだ方が、
「先生は、なんで、このテキスト を選ばれたんですか?」と聞いてました。
「わかりやすく書いてあるので」ということ。
マクロ・VBA のマニュアル本といっても、どれがいいか、
アマゾンのカスタマーレビューを読んでもなかなかわからないので、
先生お勧めのテキストを購入するといいと思いました。

確かに、この講座を受講しなければ、
この本も、著者の吉田 拳さんのことも知らなかったと思います。


■ 追加 2019年4月18日
実は芦原先生のところで、
マクロ・VBA 勉強会の第2弾 が始まって、
そちらでは、芦原先生の独自資料 を使ってます。
やっぱり、パソコン教室で習う意味って、
先生の独自資料がいただけることかな~と思います。
第1弾は、教室でも、吉田 拳さんの本を使いましたが、
4回目辺りから、
芦原先生が資料を用意してくれることが多くなって、
だんだん、
吉田 拳さんの本の内容から離れた感じ。
私自身も、第4章(つまり149ページ)以降は。
あまり把握できていません。
時間があったら、やってみようとは思ってますが、、、





2回目は、テキストの第2章、
63ページから、やりました。
セルを表す方法が2種類あって、
A2セルだったら、Range(”A2”) と、Cells(2,1) の方法があって、
変数を使う場合は、Cells を使います。
この変数というのも、理解するのがむずかしいもののひとつですが、
Cellsでセルを表すと、A列2行が、Cells(2,1)、つまり、
行の数字が先に来て、あとにくる列も数字に直すので、
慣れないと、
う~ん、どうだったっけになります。
A2セルくらいならいいのですが、H2セルになると、
ABCDEFGH、と指を折りながら数えて、
8列目だから、Cells(2,8)と書いてます。
Cells(2,"A")、Cells(2,"H") という書き方もあって、
この方が、わかりやすいかも。



70ページ~71ページ 足し算 
1) Range("A3") = Range("A1") + Range("A2") と、VBA20.jpg



2) Range("A3") = "=A1+A2" という書き方があります。VBA22.jpg



1) の方法だと、A1の値を変えた時、
VBE 上で実行してあげないと、A3 に答えが入力されないけど、VBA21.jpg



2) の方法だと、A1の値を変えると、エクセル上で、すぐ反映される。VBA23.jpg





72ページ
前置き(WorksheetFunction.)を付けないと使えないものについて
Sum関数、Average関数 などを打ち込んでみました。VBA24.jpg


これも、エクセル上で反映させる場合、
   Range("A11") = "=Sum(A1:A10)" とか、
VBA24 (2).jpg



   Range("A12") = "=Average(A1:A10)" と書きます。VBA24 (3).jpg

これも、応用的なことです。




73ページ~75ページ If Then 構文
IF関数は、VBAでは使えないので、If Then で打ち込む。
これで、合格、不合格を出すのですが、VBA35.jpg



点数を変更するたびに、
VBE を選択して実行
(F5キーを押す)しなければ、反映しません。
「エクセル上でできるといいですね」
と、ひとりの方が言ったので、先生が、
「かなり後の方で出てきますが、やってしまいましょうか。
マクロの挿入から、ボタンを選択して、VBA36.jpg

sample を選択。           VBA37.jpg


ボタンが出てきたら、クリックしてください」
で、B2セルが合格
のままだった80点以下は不合格なのに)のが、
「ボタン1」を押すと、不合格と表示されます。VBA38.jpg


これ(
145ページ~148ページに書いてあります)面白いです。




変数の使い方
変数を使う場合、Dim i と書いて、
たとえば、i = 2 で、
A2 セルに100 という数字を入れたい場合、
   Cells(i,1) = 100 と書きます。VBA30.jpg


実行(F5を押す)すると、A2セルに、100という数字が入ります。      VBA31.jpg



さらに
   i = 3
   Cells(i,1) = 100
   i = 4
   Cells(i,1) = 100 と書いていくと、
A3、A4セルにも100という数字が入ります。   VBA32.jpg


これと同じことを
   For i = 2 to 10
         Cells(i, 1) = 100
   Next
で出来ます。
「これを使って、何か面白いことできないかな~」
と、先生、考えていて、
「それでは、
   For i = 2 to 10
         Cells(i, 1) = 100 + i
   Next
と入れるとどうなりますか?」と言われて、      VBA33.jpg



実行(F5を押す)すると、こうなりました。VBA34.jpg


こういう、応用的なことも教えてもらえるので、
この講座 を受講してよかったと思いました。


                   4回目 については、






コメント(0) 
共通テーマ:パソコン・インターネット

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。