見出し画像

エクセル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)もよくわからん???
【ググって調べようっと!】

こんなんでスタンダードのテキスト見るなよ!ってか( ´∀` )。
もっと基礎からやらんとあかんなぁー。

いいなと思ったら応援しよう!