03「ザ・スーパーマリオブラザーズ・ムービー」で覚えるVBAの変数とコメントの基本的な使い方

この記事では、VBAの変数の基本的な使い方コメントの書き方を、2023年にヒットした映画、「ザ・スーパーマリオブラザーズ・ムービー」を通して学習します。

変数は、箱をイメージして下さい。
Amazonの段ボール箱でも何でも良いです。
注文した品物によって、段ボールの大きさが変わりますよね。

数値でしたら、Integerという大きさの箱を使います。
これは服のサイズで言ったら、Sサイズ、Mサイズ、Lサイズ、みたいなものでしょうか。

その変数の箱に、「変数に付けたい名前」を書いた紙を貼るイメージで、
変数に名前を付けます。

下記のプログラムでは、マリオドンキーコングに攻撃する「回数」に数値型の変数を割り当てます。

その変数である、ドンキーコングに攻撃する「回数」を、プログラム実行中にユーザーが好きな値を入力出来るように、InputBoxという入力するボックスを使って、回数を入力します。

変数を定義するとき、Dimと記述します。
コードを分かりやすくするため、コメントを入れました。
コメントは、「’」(シングルクォーテーション)で記述します。
数値と文字列を連結するのに「&」(アンパサンド)を使います。

 Sub 変数1()
    
    Dim 回数 As Integer '数値型の変数「回数」を宣言
    回数 = InputBox("ドンキーコングを攻撃する回数を入力して下さい。")
    MsgBox " マリオはドンキーコングを" & 回数 & " 回攻撃した!!"
 
 End Sub

回数を5とします。
InputBoxに入力します。

Enterを押すと、このようにメッセージボックスで、入力した回数が表示されました。

お疲れ様でした。
ここで一旦、写真で休憩を挟みます。

みなとみらいの夜景、横浜ランドマークタワーから撮影しました。


次に、文字を入れる変数の箱を用意します。
箱の大きさは、Stringというサイズの箱を用意します。
箱には「敵の名前」と書いた紙を貼っておくイメージです。
InputBoxで、「敵の名前」に入れる名前を「クッパ」と入力します。

数値型の回数には「678」を入れます。
今度は結果をイミディエイトウィンドウに出力します。

Sub 変数2()
    
    '文字列型の変数「敵の名前」と数値型の「回数」を宣言
    Dim 敵の名前 As String, 回数 As Integer
    
    敵の名前 = InputBox("敵の名前を入力して下さい。")
    回数 = InputBox("攻撃する回数を入力して下さい。")
    Debug.Print "マリオは" & 敵の名前 & "を" & 回数 & " 回攻撃した!!"
 
 End Sub

「クッパ」と入力してEnterを押します。

「678」と入力してEnterを押します。全角でも大丈夫です。

イミディエイトウィンドウの出力結果です。

お疲れ様でした。
ここで一旦、写真で休憩を挟みます。

お台場レインボーブリッジです。


次に、変数の演算をしてみましょう。
マリオはクッパにパンチとキックをして攻撃をします。
変数「パンチ」の回数と、変数「キック」の回数を合計して、
その合計値を変数「ダメージ」に格納します。

式で書くと、

ダメージ=パンチ+キック

になります。

Sub 変数3()
    
    '文字列型の変数「敵の名前」と数値型の「ダメージ」を宣言
    Dim 敵の名前 As String, ダメージ As Integer
    
    '数値型の変数パンチとキックを宣言
    Dim パンチ As Integer, キック As Integer
    
    '敵の名前やパンチ、キックの回数を入力
    敵の名前 = InputBox("敵の名前を入力して下さい。")
    パンチ = InputBox("マリオのパンチの回数を入力して下さい")
    キック = InputBox("マリオのキックの回数を入力して下さい")
    
     'ダメージを「足し算」して求める
     ダメージ = パンチ + キック
    
    'メッセージボックスに結果を出力
    MsgBox "マリオは" & 敵の名前 & "に" & ダメージ & "のダメージを与えた!!"
 
 End Sub

実行してみます。

名前に「クッパ」と入れます。

マリオのパンチの回数を「2」と入力します。

マリオのキックの回数を「4」と入力します。

出力結果です。

上記のプログラムではメッセージボックスに出力しましたが、今度はExcelシート上のセルに出力してみます。

下のコードに「←を変更」と書いた所と、プロシージャー名を「変数4」にした箇所以外は、そのままです。

Sub 変数4()
    
    '文字列型の変数「敵の名前」と数値型の「ダメージ」を宣言
    Dim 敵の名前 As String, ダメージ As Integer
    
    '数値型の変数パンチとキックを宣言
    Dim パンチ As Integer, キック As Integer
    
    '敵の名前やパンチ、キックの回数を入力
    敵の名前 = InputBox("敵の名前を入力して下さい。")
    パンチ = InputBox("マリオのパンチの回数を入力して下さい")
    キック = InputBox("マリオのキックの回数を入力して下さい")
    
     'ダメージを「足し算」して求める
     ダメージ = パンチ + キック
    
    ' Excelシート上のセルに出力  ←ここを変更
    Range("A1").Value = "マリオは" & 敵の名前 & "を"
    Range("A2").Value = パンチ & "回" & "パンチして、"
    Range("A3").Value = キック & "回" & "キックして、"
    Range("A4").Value = ダメージ & "のダメージを与えた!!"
    
 
 End Sub

実行結果は、このようにExcelのシートに出力されました。

お疲れ様でした。
ここで一旦、写真で休憩を挟みます。

江ノ電 鎌倉高校前の海



今度はRangeでは無く、Cells指定にします。
これまで、

ダメージ = パンチ + キック

と計算していた所を掛け算にして、

ダメージ = パンチ * キック

としてみます。
×は「*」(アスタリスク)を使います。

 Sub 変数5()
    
    '文字列型の変数「敵の名前」と数値型の「ダメージ」を宣言
    Dim 敵の名前 As String, ダメージ As Integer
    
    '数値型の変数パンチとキックを宣言
    Dim パンチ As Integer, キック As Integer
    
    '敵の名前やパンチ、キックの回数を入力
    敵の名前 = InputBox("敵の名前を入力して下さい。")
    パンチ = InputBox("マリオのパンチの回数を入力して下さい")
    キック = InputBox("マリオのキックの回数を入力して下さい")
    
     'ダメージを「掛け算」して求める ← ここを掛け算にします。
     ダメージ = パンチ * キック
    
    ' Excelシート上のセルに出力  ← Cellsで指定しています。
    Cells(8,2).Value = "マリオは" & 敵の名前 & "を"
    Cells(9,3).Value = パンチ & "回" & "パンチして、"
    Cells(10,4).Value = キック & "回" & "キックして、"
    Cells(11,5).Value = ダメージ & "のダメージを与えた!!"
    
 
 End Sub

同じように、
敵の名前=「クッパ」
キック=「2」
パンチ=「4」
と入力しました。

その出力結果です。
ダメージは2×4で8になっています。

掛け算を追えたところで、今度は「べき乗」を求めます。
掛け算では 2×4で8でしたが、べき乗にすると、2を4回かけるので、2×2×2×2=16になります。

(2の何乗に興味のある方は、ITパスポート基本情報記述者試験のページをご参照下さい。)

べき乗は、キーボード右上の「へ」の所にあります。
ダメージの計算結果は、メッセージボックスに出力します。

 Sub 変数6()
    
    '文字列型の変数「敵の名前」と数値型の「ダメージ」を宣言
    Dim 敵の名前 As String, ダメージ As Integer
    
    '数値型の変数パンチとキックを宣言
    Dim パンチ As Integer, キック As Integer
    
    '敵の名前やパンチ、キックの回数を入力
    敵の名前 = InputBox("敵の名前を入力して下さい。")
    パンチ = InputBox("マリオのパンチの回数を入力して下さい")
    キック = InputBox("マリオのキックの回数を入力して下さい")
    
    'ダメージを「べき乗」して求める ← ここをべき乗にします。
    ダメージ = パンチ ^ キック
    
    'Excelシート上のセルに出力  ← メッセージボックスに出力します
    MsgBox "マリオは" & 敵の名前 & "に" & ダメージ & "のダメージを与えた!!!"
     
 End Sub

パンチとキックは「半角数字で」入力して下さい。
私の環境では全角で入力したら、オーバーフローしてしまいました。

お疲れ様でした。
ここで一旦、写真で休憩を挟みます。

江ノ電、鎌倉高校前駅の海です。


いよいよ最後です。
「ザ・スーパーマリオブラザーズ・ムービー」の映画チケット代金を出力します。
一般1,500円です。

チケット代は、 Currency(カレンシー)という通過型の箱を用意します。
「チケット代」と紙に書いて、それを箱に貼るイメージです。
文字列型の「映画タイトル」の箱も用意します。
ここでは簡単に、「マリオの映画」と入力します。

Sub 変数7()

'通過型Currencyの変数チケット代と、文字列型映画タイトルを宣言
 Dim 映画タイトル As String, チケット代 As Currency 

 映画タイトル = InputBox("見たい映画のタイトル名を入力して下さい。")
 チケット代 = InputBox("チケット代を入力して下さい。") 

 MsgBox 映画タイトル & "の一般料金は、" & チケット代 & "円です。" 

 End Sub

上記のプログラムを、


映画タイトル:「マリオの映画」


チケット代:「1500」

と入力すると

この様に出力出来ました。

参考にした記事:
【超初心者向き】Subプロシージャの基本を5分で理解する
【VBA】Currency (通貨型変数)
ザ・スーパーマリオブラザーズ・ムービー特別映像解禁
「ザ・スーパーマリオブラザーズ・ムービー」のムビチケ前売り券が12月16日より販売開始


皆さま、大変お疲れ様でした。
この記事最後のブレイクタイムPhotoは・・・

逗子海岸です。

最後までご精読、誠にありがとうございました!!

仕事や勉強のリフレッシュに、趣味で写真を撮っておりますので、宜しかったら フォトストック写真ACさん の投稿もご覧頂けますと、大変嬉しい限りでございます!!

こちら、無料の「ダウンロードユーザー」に登録して頂けると、無料で写真のダウンロードが可能になります。

※ 先にGoogleアカウントを作成して頂くと、登録が ラク です♪

 

最後までご精読、誠にありがとうございました!!

フォトストック写真ACさんのプロフィールページ

自己紹介


VBA自作サンプルプログラム集へ戻る

取りあえず事務職で働きたいから手っ取り早くExcel教えてくれ


MOSなどの資格試験対策

02VBAの基本的なメッセージ・セル出力・イミディエイトウィンドウ・ボタンのマクロ登録

この記事から、VBAで本格的なコーディングに入ります。
と言っても、最初は簡単なメッセージを表示させるぐらいですので、是非、肩の力を抜いてご覧下さい。

メッセージの所には、あなたの好きな言葉や推しなどの好きな人等、ご自由に表示して下さい。

ここでは、2023年7月に始動したSNSのThreads(スレッズ)について、
「Threadsフォロー宜しく!!」というメッセージを表示させます。

エディタにこのように記述します。
名称は、全角文字でもOKです。

Sub スレッズ()
        MsgBox "Threadsフォロー宜しく!!"
End Sub

それでは、プレイボタンから実行致します。

マクロ名を選択して実行を押します。

すると、メッセージボックスが表示されました!!

お疲れ様でした。
ここで一旦、写真で休憩を挟みます。

江ノ電、七里ヶ浜の海です。


では、VBAでメモ的に使う、「ちょっとした確認の時に使う」、 「イミディエイトウィンドウ」を表示します。

表示 → イミディエイトウィンドウを選びます。
下の方に表示されたウィンドウがイミディエイトウィンドウです。

用意が出来ましたらコードを書きます。

Sub スレッズ2()
         Debug.Print "Threadsフォロー宜しく!!"
End Sub

これを実行すると、

こんな感じに表示されます。

このイミディエイトウィンドウは、変数の値を確認したい時などにも 便利なので、今後も掲載致します。

お疲れ様でした。
ここで一旦、写真で休憩を挟みます。

いたばし花火大会2019です。コロナ前の最後ですね。


次は、このメッセージを、Excelのセル「A1」に入力します。
このセルA1のことを、「ホームポジション」と言います。

Rangeは、「レンジ」と読みます。
ここではセルの場所を指定する時に使うんだな〜程度に軽く押さえて頂くぐらいで大丈夫です。

Sub スレッズ3()
          Range("A1").Value = "Threadsフォロー宜しく!!"
End Sub

書き終わりましたら実行を押して、いつものExcelの画面に切り替えます。
VBAの画面の左上を押すと切り替わります。

実行すると、

この様にセルA1に入力できます。

他のセルに入力する時は、この様にセルの番地を変えてみます。
例えば、B3に入力したい場合、

Sub スレッズ4()
          Range("B3").Value = "Threadsフォロー宜しく!!"
End Sub

と、セルの番地を変えると、この様に出力されます。

お疲れ様でした。
ここで一旦、写真で休憩を挟みます。

江ノ電七里ヶ浜の海


セル番地の指定方法は、 Rangeで指定する方法と、Cellsで指定する方法があります。これ以降に出て来る、繰返し処理(ループ)を学ぶ時に大事になるので、
早い段階で慣れておきましょう。

セルB3に「Threadsフォローありがとう!!」と上書き入力します。
B3は3行目の2列ですよね。
Cellsで指定する時は、(3,2)と、行を先に書きます。

Sub スレッズ5()
          Cells(3, 2).Value = "Threadsフォローありがとう!!"
End Sub

実行すると、この様にセルの内容が置き換えられました。

お疲れ様でした。
ここで一旦、写真で休憩を挟みます。

江ノ電、鎌倉高校前駅の海


色々入力したので、
一旦シートの入力内容を消去致します。

Sub 一旦クリアする()
    Cells.Clear
End Sub

これで、Excelシートの入力内容が消えていると思います。

それでは、最後にボタンを2つ作って終わります。
ボタンに「スレッズ5」と「クリア」を登録して、ボタンを押すとそれぞれのプログラムが動く様に致します。

開発タブを選択して、挿入 → フォームコントロールのボタンを押します。

Windows

Mac

シートにボタンを描画すると、
このようなダイアログボックスが出て来ます。
さっき作った「スレッズ5」を登録します。

あとは、ボタンのまわりに○が付いている状態で、
文字を編集します。

(左クリックで実行、右クリックで編集が出来ます。)

こんな感じでボタンが出来ました。
同じように、「クリア」ボタンも登録します。

これで、ボタンを押して何度もプログラムを実行することが 出来ました。

皆さま、大変お疲れ様でした。
この記事最後のブレイクタイムPhotoは・・・

江ノ電鎌倉高校前駅の海です。

最後までご精読、誠にありがとうございました!!

お優しい方は、私のThreadsフォローもお願いします!!

https://www.threads.net/@nekosiestr77

やった〜〜〜!!!

あなたのことが、とっても、
大好きです☆*:.。. o(≧▽≦)o .。.:*☆

仕事や勉強のリフレッシュに、趣味で写真を撮っておりますので、宜しかったら フォトストック写真ACさん の投稿もご覧頂けますと、大変嬉しい限りでございます!!

こちら、無料の「ダウンロードユーザー」に登録して頂けると、無料で写真のダウンロードが可能になります。

※ 先にGoogleアカウントを作成して頂くと、登録が ラク です♪

 

最後までご精読、誠にありがとうございました!!

フォトストック写真ACさんのプロフィールページ

自己紹介


VBA自作サンプルプログラム集へ戻る

取りあえず事務職で働きたいから手っ取り早くExcel教えてくれ


MOSなどの資格試験対策

ロスジェネ!ねこくんのリスキリングの学びをシェア

2019年(令和元年)11月1日設立
ブログ改装に関して

「Amazonのアソシエイトとして、[猫★シエスタ]は適格販売により収入を得ています。」

ご訪問ありがとうございます!!このサイトの管理人の「猫★シエスタ」と申します。

・ロスジェネ(就職氷河期世代)

・発達障害(自閉症スペクトラムASD 旧アスペルガー症候群 、ADHD)

・HSP(5人に1人の割合の繊細さん)

・その他のマイノリティ(詳細は自己紹介をご覧下さいませ)

上記の様に、自分に自信を持てなかった私が、同じようにお悩みの方のPCスキル習得のハードルを極限まで下げる為に、役立つ学びをアウトプットしたブログを設立致しました。

■ はじめに ■

自己紹介
 
【人事採用担当者様と支援機関の方宛】精神・発達障害障害者への接し方

■ おススメ本! ■

発達障害と健康 


心がラクになる本

何の本を読んだらよいのか分からない時に読む記事

■ ExcelなどのMicrosoft Office ■

取りあえず事務職で働きたいから手っ取り早くExcel教えてくれ!

急にプレゼン資料を作ることになったから手っ取り早くパワポ教えてくれ!!!!!

Wordのポイントを手っ取り早く教えてくれ!!!

■ スプレッドシートやChromeなどのGoogle Workspace ■

Google Workspaceをツール別に紹介

GAS(Google Apps Script)

■ Portfolio

私のポートフォリオ

ポートフォリオ作成に役立ったサイト

■プログラミングのマインド■

プログラミング学習で関わってはいけない人達と逃げるべき環境

プログラミングと資格について

基本情報技術者試験トップへ  

■ Web開発(HTML/CSS/JavaScript/Bootstrap/PHPなど)プログラミング学習 ■

挫折経験者が語る!!これからプログラミングを始められる方へ


ドットインストールの学習ロードマップ(基礎編)

推理アドベンチャーゲーム MISSING PARTSファンサイト

Adobe製品

■自作サンプルプログラム■

GAS(Google Apps Script)


paizaレベルアップ問題集をPythonとGASの両方で解いてみた。

Python

C言語

アセンブラCASL2

Java

VBA

MySQL

プログラミングのアンケートにご協力頂ける方はこちらのフォームで勉強法など色々と教えて下さい。

■Scratch 大人も楽しめる子供向けプログラミングの紹介■

保護者の方へ。【スクラッチ】の紹介と太陽系とタイマーのサンプル

■プログラミングと健康■

プログラミングの疲れ目対策と視力維持に向けて

プログラマこそストレッチ(子ども&大人向け)

風呂グラミング(入浴剤紹介)

■ 息抜き ■

息抜きに、写真で癒し(=^x^=)

ストレス解消グッズなど 

写真の投稿を始めました。
(写真AC)のプロフィールページです。

■ アロマ ■

ハッカ愛からハッカー!?

01 VBAを始める準備をしよう

この記事ではVBAを始めるまでの準備をコンパクトにまとめました。
まず、Excelを起動して、開発タブを表示させます。

Windowsの方は、
ファイル → オプション → リボンのユーザー定義 → 開発の所にチェックを入れて、OKを押してください。


そうすると、

無事に開発タブが表示されました。

Macの方は、
ExcelをアクティブにするとExcelの画面よりも更に上にメニューが表示されているので、Excel → 環境設定 を選択すると、

この様な画面が表示されますので、赤枠の「表示」を選択します。

するとこのようなダイアログボックスが表示されるので、表示にチェックを入れてウィンドウを閉じます。

Macでも無事に開発タブが表示されました。

エディタの準備をする前に、先に名前をつけて保存をします。
保存って本当にプログラミングでも事務作業でも大事なんですよね。

[F12]を押して、ファイル名に「VBA入力レッスン」など、分かりやすいと思う名前を入力します。

※ 1点注意がございます

「ファイルの種類」は、「Excelマクロ有効ブック(. xlsm)」を指定します。
VBAで動かす時は、普段Excelを使っている時の拡張子がxlsxでは無いので、そこだけ注意が必要になります。

開発タブの一番左のVisual Basicまたは、ショートカットキーで[Alt] + [F11] を押します。

これで、VBAのコードを記述するエディタが開きました。

画面左側の、ThisWorkbookを選択した状態で、挿入 → 標準モジュール の順番にクリックします。

それから、「Module1」を選択します。

その状態で、「オブジェクト名」に「まずは入力の練習から」と入力して[Enter]を押すと、

練習に使うエディタが作成されました。

次から、実際にコーディングしていきます(=^・^=)

お疲れ様でした。
勉強のリフレッシュに、写真で息抜きを致します。

最後までご精読、誠にありがとうございました!!

仕事や勉強のリフレッシュに、趣味で写真を撮っておりますので、宜しかったら フォトストック写真ACさん の投稿もご覧頂けますと、大変嬉しい限りでございます!!

こちら、無料の「ダウンロードユーザー」に登録して頂けると、無料で写真のダウンロードが可能になります。

※ 先にGoogleアカウントを作成して頂くと、登録が ラク です♪

 

最後までご精読、誠にありがとうございました!!

フォトストック写真ACさんのプロフィールページ

自己紹介


VBA自作サンプルプログラム集へ戻る

取りあえず事務職で働きたいから手っ取り早くExcel教えてくれ


MOSなどの資格試験対策

モバイルバージョンを終了