エクセルVBAのお勉強
テレワーク中に少しでも自分のスキルを上げるべく、VBAを勉強してみよう!
「この歳で?」なんて思わず、できるならなんにでも挑戦!!
ずっと前に買った「ExcelVBAスタンダード」っていう公式テキスト。
その時は『がんばって勉強しよう!』って思ってたのですが、
ぐうたらな性格はやはり、購入したら満足してしまい、ほったらかし状態に。
けど、最近何故かダイエットを初めて、少しずつ体重も落ちてきて、体が楽になってくると、他のこともやってみよう!っと思い始めたのです。
派遣社員のおばさん(私です)は、あと1年半弱で現在のお仕事はやめなければいけません(なんでこんな法律があるのか?誰のための法律?続けたくても続けられないなんて、派遣社員には選択の自由はないのか?)
その後のお仕事もあるかどうかわからない。。。(´;ω;`)ウゥゥ
なので少しでもスキルを磨けば何かいいことがあるかも・・・と思い始めた始末。
「なんで今更VBA?」
それは自分がやっていて面白いと思うから。。。
自己流で始めたから「できます!」とはなかなか言い難い。
ので、ちゃんと試験受けて履歴書に書けるようになりたいゎ~と思っているのです。
さて、いつまで続くでしょうか?(笑)
◆◆プロシージャ◆◆
「Sun マクロ名」で始まり「End Sub」で終わる。
これを「Subプロシーシジャ」という。
他にも「Functionプロシージャ」などがある。
Sub Sample1()
Range("A1")=100
Call Sample2
End Sub
Sub Sample2()
Range("B1")=Range("A1")*2
End Sub
Call は省略可だが、わかりやすくするためには省略しない方がよい。
◆モジュールレベル変数
複数のプロシージャ内で使える変数は宣言セクションで宣言する。
Dim A as Long ← プロシージャよりも上に。
Sub Sample1()
・・・
End Sub
Sub Sample2()
・・・
End Sub
◆◆Functionプロシージャ◆◆
Subプロシージャ:値を返せない
Functionプロシージャ:値を返せる
※何のために必要?
➡複数のプロシージャから同じ処理を使うときは、
別のプロシージャとして独立させるとメンテナンスが便利!
テキストにあった下記のコードを実際に書いて実行してみた。
Functionプロシージャの黄色い部分が何で「A」なのかわからなかった・・・。
実際に動かしてみると、A=”Sheet1” となってる。
1行目の Chksheet(A As String)もよくわからん???
【ググって調べようっと!】
こんなんでスタンダードのテキスト見るなよ!ってか( ´∀` )。
もっと基礎からやらんとあかんなぁー。