08 VBA初めてのSelect Caseによる条件分岐をエレベーターを例に解説

この記事ではVBAでSelect Case文を学習します。
この文法を「エレベーター」を使って学習したことが、私には分かりやすかったです。

このSelect Caseでは条件分岐を行います。
イメージとして、あなたがエレベーターに乗っている所を想像して見て下さい。

押したボタンによって、止まる階が変わりますよね。
ですので、エレベーターはまさに「リアルSelect Case」なんです!!

電車を降りて駅の改札を出て、駅ビルに入りました。
ここは地下1階です。

話を簡単にする為に、この駅ビルは地下と地上1〜4階までのシンプルな駅ビルにします。

図で表すとこんな感じです。

文字でも図に合わせて書きます。

4 4階:レストラン街
3 3階:文房具店
2 2階:洋服屋
1 1階:パン屋
現在あなたは「地下・改札」にいます。

では、早速コードを見ていきます。

ボックス内の改行は「vbCrLf」を使い、「&」で結合します。
コードを改行する時は「_ (アンダーバー)」を使います。

Sub エレベーターで掴むSelectCase()

 ' 数値型の変数フロアを宣言
 Dim フロア As Integer

 'インプットボックスを使って降りる階を表示
 フロア = InputBox("1:1階のパン屋" _
 & vbCrLf & "2:2階の洋服屋" _
 & vbCrLf & "3:3階の文具店" _
 & vbCrLf & "4:4階のレストラン街", "何階で降りますか?")


'Select文を開始
 Select Case フロア

 '1階
 Case 1:
 MsgBox "1階に到着しました" _
 & vbCrLf & "「パン屋だ!!美味しそう!!」"


 '2階
 Case 2:
 MsgBox "2階に到着しました" _
 & vbCrLf & "「洋服屋だ!!良いジャケットあるかな♪」"


'3階
 Case 3:
 MsgBox "3階に到着しました" _
 & vbCrLf & "「ボールペンあるかな。」"


'4階
 Case 4:
 MsgBox "4階に到着しました" _
 & vbCrLf & "「広島風お好み焼き食べたい!!」"

'範囲外の場合
 Case Else
 MsgBox "スタッフオンリー です。1〜4を入力して下さい。"
 
 'Select文の終了
End Select

End Sub

1~4を入力すると、エレベーターであなたが行きたい階で止まります。
例えば、「4」を押すと、レストラン街に到着します。

インプットボックスに「4」と入力します。


これでエレベーターのスイッチで4階を押せました。

4階に到着すると、広島風お好み焼きが食べられるみたいです。

では、範囲外の「9」を入力してみます。

と、Elseの場合も処理されました。

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

目白庭園の紅葉です。

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

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

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

写真素材素材【写真AC】

 

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

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

自己紹介


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

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


MOSなどの資格試験対策

私刑したいヤツの名前+DEATH

Java自作サンプルに戻る
これからプログラミングを始める方へ
プログラミングと資格
息抜きに、写真で癒し(=^・^=)

※ この例題はフィクションです ※
■ いのちは大切に!
■ 犯罪はダメ!
■ 法律を守ろう!

今、ムシャクシャしている相手のいる方向けの、
Javaによる簡単な文字列表示のプログラミングです。

こ●したいヤツの名前+DEATH!
と表示させます。

画像とコードです。
ファイル名を「siltukei」とします。


import java.util.Scanner;
public class siltukei{

public static void main(String[] args){

//System.in キーボード入力を受け付けるための引数
Scanner scn=new Scanner(System.in);
System.out.print(“デスノートに書く名前を入力:”);

//キーボード入力を受け付ける
String name=scn.next();
System.out.println(name+”DEATH!!”);
}
}

コンパイルした後、
実行させます。

デスノートに書く名前を入力:
と表示されたら、
例えば「五木不利太郎」など、
今、あなたが、もっとも憎たらしいと思っている
ヤツの名前をキー入力します。

Enterを押すと、
五木不利太郎DEATH!と表示されます。

結果画像です。

憎たらしい気持ちは、悔しいですが、
実力行使できないです。
ヤツラは要領が良いから。
なので、このプログラミングで怒りを抑えて下さい。

お疲れ様でした。

Java自作サンプルに戻る
これからプログラミングを始める方へ
プログラミングと資格
息抜きに、写真で癒し(=^・^=)

【 COUNTIF関数】Excelでサザエさんキャラの25歳以上の人数を数える

この記事では、国民的アニメ「サザエさん」のキャラクターの例を通して、

・COUNTIF関数で25歳以上のキャラクターの人数を数える

・日付をTODAY関数で表示する

・日付をショートカットキーで表示する

・3/14(金)などのユーザー定義の使い方


・3「人」などの単位をユーザー定義で付ける方法

についての概要を掴めます。

キャラクターの年齢は、サザエさんの公式サイト参考にして、下記の様な簡単な表を作成しました。

年齢不明のキャラクターの「磯野フネ」さんとペットの「タマ」は、テキトーな年齢にして、下記のような表を作りました。


黄色いセルのあるF1に、

=COUNTIF(年齢のセル範囲 , “>=25”)

という、数式を入力します。
25歳以上は、 ” ダブルクォーテーション ” をつけて、

“>=25”

と入力します。
セルF1に、具体的には下記の式を入力します。

=COUNTIF(C2:C9,”>=25″)

この ” ダブルクォーテーション ” を忘れるとエラーになってしまいますので、お気を付けて下さいませ。

この場合ですと、
・波平さん
・フネさん
・マスオさん

の「3」人が、該当しました。


さて、今度はこの表のオレンジのセルB11に、今日の日付を入れてみます。

日付をファイルを開く都度の更新にする場合は、

=TODAY()

とTODAY関数を使います。

今日は、2025年3月14日のホワイトデーですが、明日このファイルを開くと、3月15日に更新されます。

更新せずに、ずっと同じ3月14日(金)日付にしたい場合はショートカットキーで

[ctrl]+[;(セミコロン)]

を押します。

Macをお使いの方、[command]でこのキーを押すと時刻になってしまうので、[control]で押して下さい。

この日付の形式を3/14(金)の様にしたい場合は、

[Ctrl]+[1]

を押して、ユーザー定義(左のリストの一番下)を選択して、

m/d(aaa)

と入力してOKを押します。

下の図はMacですが、Windowsでも多分大体同じだと思います。
異なっている点がもしもございましたら、お手数ですが検索して調べて頂けますと有り難いです。

OKを押すと、この様に曜日も表示されました。


次に、一旦F1の黄色いセルに戻って、25歳以上の人数に「人」と単位を付けます。

同じように[Ctrl]+[1]を押して、左側のユーザー定義から

0人

と入力すると、

と、人数の単位が付きました。

あれ、カツオくんが年下になっているどころか、サザエさんまでも年下になっている!?

今回、人数が少ないキャラクターの例の年齢でCOUNTIF関数を使いましたが、もっと大人数の方で試したい場合は、テストデータージェネレーターが便利です。
Excelやスプレッドシートの勉強に役立ちます。

お疲れ様でした。ブレイクタイムPhotoは、

写真は、恵比寿ガーデンプレイスのクリスマスイルミネーションです。


ご精読誠にありがとうございました。

「できるYouTuber式 Excel現場の教科書(長内孝平氏)」

単行本(ソフトカバー)
Kindle版


「なんの才能もない発達障害者の声: 〜 届かない声を届けたい 〜 (障害者雇用向け)」

私、猫★シエスタの著作です。殆どが「発達障害者として働くことや障害とSNSについて」ですが、障害者雇用の事務作業で特に使用頻度の高いキーに絞ったExcelなどのショートカットキーの紹介と、演習問題も掲載しております。
Kindle版

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

初めてのGoogleスプレッドシートへ



写真クリエイターとしての活動
自己紹介

JAVAエラーなどの学習ログ

Java自作サンプルに戻る
これからプログラミングを始める方へ
プログラミングと資格
息抜きに、写真で癒し(=^・^=)

Javaのエラーの対処で、最初にやるべきことは、
今の時刻の確認です。
もし、夜の12時過ぎていたら、いったん寝て、
明日早起きして朝ごはん食べてから、
エラーの対応をしましょう。
驚くほど簡単にエラーの対処が出来ました。

java:7:エラー この文字(0x80)は、エンコーディングwindows-31jに
マップできません。

対処法
コンパイルする時に、

javac -encoding UTF-8 ファイル名.java

とやって見た所、無事、実行できました。

java:10: エラー: doubleは間接参照できません
変数=
の=を「.」とやってしまった。

javac:11:エラー: シンボルを見つけられません
変数名のスペルミス

java:15;エラー:”;”がありません
セミコロン忘れ

文字化け

ここが分かりやすいと思います。
https://qiita.com/lunatea/items/53f4adcc6ea3f316e781
色々あたふたしながらいじってたら日本語出ました!!

36:エラー:’uff1b’は不正な文字です

セミコロン「;」が全角になっていたので
半角にしました。

72:エラー:構文解析中にファイルの終わりに移りました。
{ }が足りなかったので付け足しました。

エラー クラスにmain(String[])メソッドが見つかりません。
javac ファイル名.javaでコンパイルは無事に出来ましたが、
java ファイル名.javaで実行するとエラーが出ました。
そこで、java ファイル名.javaの拡張子を削除して、
java ファイル名で実行した所、出来ました。

23:エラー:シンボルを見つけられませんでした
boolenではなくboolean

104:エラー:シンボルをみつけられません
System.out.printfの、
outをourにしてしまった。

エラー:式の開始が不正です
{ が
}で閉じられていなかった

Java自作サンプルに戻る
これからプログラミングを始める方へ
プログラミングと資格
息抜きに、写真で癒し(=^・^=)

簡単な足し算を作ってみました

Java自作サンプルに戻る
これからプログラミングを始める方へ
プログラミングと資格
息抜きに、写真で癒し(=^・^=)

簡単な足し算を行います。
嫌なヤツを2人ほど思い浮かべて下さい。

※ この例題はフィクションです ※
■ いのちは大切に!
■ 犯罪はダメ!
■ 法律を守ろう!

baka=18782…イヤナヤツ
aho=18782…イヤナヤツ
を足し算すると、
37564…ミナゴロシ

になる、プログラムを作ります。

1+2=3
といった結果も普通に出ますが。

Cドライブの下にJavaSampleというフォルダーを
作って、tashizanというファイルで保存します。


import java.util.Scanner;

public class tashizan {
public static void main(String[] args){

Scanner scn=new
Scanner(System.in);

int baka,aho;
baka=0;
aho=0;

System.out.printf(“baka= “);
baka=scn.nextInt();

System.out.printf(“aho= “);
aho=scn.nextInt();

System.out.println(baka+aho);
}
}

1行目の「util」、これ、
私よく、「until」って書いちゃうんですけど、
「n」はいらないです。

実行して見ます。

「baka= 」に、18782、と入れてEnter、
「aho= 」に、18782 と入れてEnter、
を押すと、結果に37564
と出て来ます。

もっと簡単に書く方法もあるかと思いますが・・・。
色々調べながら初めて自分で作ってみました。
いつもは写経ばっかりですが。

では。

Java自作サンプルに戻る
これからプログラミングを始める方へ
プログラミングと資格
息抜きに、写真で癒し(=^・^=)

【IF関数】天気予報と雨具の準備の例で習得

この記事では、関数の王様的な存在の、IF関数について掲載致します。

・Excelは使ったことがあるけれど、関数は初めて

・学生の方の授業や講義、就活の準備

・普段の業務や転職活動に向けて関数に慣れておきたい

・関数の復習をしたい
(最近プログラミングばかりでExcelはお久しぶり等)

に当てはまる方を主な対象にしておりますが、それ以外の方もご興味がありましたら是非ご覧になって下さると嬉しいです。

例として、北海道と東京と大阪の降水確率を用いております。

IF関数を使って、「YESだったら丈夫な傘を持っていく」、「NOだったら「-」と入力する」という、「降水確率ごとの条件分岐」が理解出来ることを目指しております。

まず、天気予報でB列の降水確率が「60以上」 でしたらC列の「雨具の用意」の所に「丈夫な傘」と表示されるようにします。

お手数ですが、可能な方は下記のような簡単な表をご用意頂けますと、実際に手を動かしながらIF関数に慣れていくと思います。
配色はお任せ致します。

(地域と降水確率は適当であり、傘を持って行くかどうかも私の私的な判断です。)

IF関数は、黄色いセルがあるC2の所に入力します。

=IF(条件,”当てはまる場合”)

セルC2をのところで、「 =if 」と入力してTabキーを押すとIF関数が選択出来ます。

=IF(B2>=60,”丈夫な傘”)

という様に式を入れます。

北海道の降水確率は10なので、「違うよ!丈夫な傘は持っていかなくても大丈夫だよ」という意味のFALSEが求まりました。

この数式をC2セルの右下の小さい四角いハンドルを下に引っ張って、「書式なしコピー(フィル)」を選ぶと、

大阪の降水確率が70なので、そこのみに「丈夫な傘」と入りました。

FALSEって英語ですし、ちょっと分かりにくいので、条件に当てはまらない場合は「-」などを表示したい場合は、セルC2に

=IF(条件,”当てはまる場合”,”当てはまらない場合”)

という処理になる、

=IF(B2>=60,”丈夫な傘”,”-“)

この様に式を入れます。

無事に表示されました。
ただ、右下のオートフィルオプションが邪魔ですよね。

これを消すには、何もない任意のセルの所で「スペースキー」を押してから、空いたスペースを消してみて下さい。
(環境によって異なる場合もございます。その際お手数ですが検索をお願い致します。)

セルの入力には[F2]キーが便利です。
(ノートPCの環境によっては、[Fn]も[F2]と一緒に押して下さい。)

はい、無事にオートフィルオプションが消えました。


今度は、降水確率が30以上の場合は、「折り畳み傘」と表示させる様にします。
先ほどの式、

=IF(条件,”当てはまる場合”,”当てはまらない場合”)

の、当てはまらない場合の所に、更にIF関数を入れます。
これを、関数のネストと言います。
セルC2の所に、

=IF(条件,”当てはまる場合”,
IF(次の条件,”当てはまる場合”,”当てはまらない場合”)
)

となるように、

=IF(B2>=60,”丈夫な傘”,IF(B2>=30,”折り畳み傘”,”-“))

と式を入れて数式を下まで引っ張っていくと、

一旦、ここまででの流れをまとめます。

降水確率が、

60以上 …..………….. 丈夫な傘
60未満で30以上 .…. 折り畳み傘
30未満 …..….….……..「-」

となります。
最後の30未満は、上記のどれにも当てはまりません。

IF関数の根幹の部分は以上でございます。


お疲れ様でした。ブレイクタイムPhotoは、

恵比寿ガーデンプレイスのクリスマスイルミネーション、
フランスのクリスタルメーカー、バカラのシャンデリアです。

ご精読誠にありがとうございました。

「できるYouTuber式 Excel現場の教科書(長内孝平氏)」

単行本(ソフトカバー)
Kindle版


「なんの才能もない発達障害者の声: 〜 届かない声を届けたい 〜 (障害者雇用向け)」

私、猫★シエスタの著作です。殆どが「発達障害者として働くことや障害とSNSについて」ですが、障害者雇用の事務作業で特に使用頻度の高いキーに絞ったExcelなどのショートカットキーの紹介と、演習問題も掲載しております。
Kindle版

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

初めてのGoogleスプレッドシートへ



写真クリエイターとしての活動
自己紹介

連絡先

お問い合わせの前に、下記事項のご確認をお願します。

当サイトは「アダルトサイトや反社会的なサイトを除いては」リンクフリーです。
通常の健全なWebサイト(ブログ含め)やX(旧Twitter)などのSNSでリンクを貼りたい場合には、特に連絡を頂かなくても大丈夫です。

仕事、プログラミング学習、その他家庭の事情、慢性的な体調不良のため、
対応が遅れることもございます。

下記に当たる場合は、申し訳ございませんが、対応し兼ねますことを、
何卒ご了承願います。

● 「Excelって何?」、「HTMLって何それ、美味しいの?」など、
Googleなどで検索して調べれば見つかる様なこと。

● 反社会的、勧誘、セールス、ビジネス、宗教、
誹謗中傷

どなたでも何でもお気軽にどうぞ!!と言いたい所ですが、世の中には色々な方がいらっしゃるので、(特にネットでは)私がどなたに対しても警戒心を持っていることを、ご理解の程宜しくお願いします。

Xのアカウント
(こちらも反社会的でない健全な方でしたら、フォロー自由です。)

@nekosiestr775

上記アカウントをXの検索欄に入れると表示されます。

また、このアカウントをGoogleなどの検索エンジンで検索すると、Xのリンクが表示されます。

XのDMは諸事情により閉じております。
セールス、勧誘の方からのDMが沢山來たり、相手の方からフォローしてくれたので、こちらもフォローすると、しばらくしてフォローを解除されたりと(特に外国に住んでいる日本人に多い)DMで困ったことが沢山ありましたので、相互フォロー以外の方はDMではなく、リプか、上記のアカウントを付けてのツイートでお願いします。

知らない人からいきなり近づかれるのは怖いので、まずは、「いいね」や「リプ」から、少しずつ仲良くなって行きたいです。

日常については雑談的にアメブロを使っています。
こちらは、メッセージからのご意見・ご感想でお願いします。
ブログのプロフィールのところに、「メッセージを送る」というボタンがあります。
もしも表示されない場合は、プロフィール画像のアイコンをクリックすると、アメブロのプロフィールサイトからメッセージが送れるメールのアイコンをクリックすると送れます。ただ、私の場合は少し用心をしている為、アメブロのアカウントのある方のみメッセージを受け付けられる設定にしております。

https://ameblo.jp/nekosiestr77lafn/

メインメニューに戻る
自己紹介に戻る

環境設定から「HelloWorld」まで

Java自作サンプルに戻る
これからプログラミングを始める方へ
プログラミングと資格
息抜きに、写真で癒し(=^・^=)

ここでは、Javaの環境設定から、
実行結果、HelloWorldまでの手順を
画像を含めてお伝えします。

このURLに行きます。

https://www.sublimetext.com/

「DOWNLOAD FOR WINDOWS」をクリックします。

左下にある、「Sublime Text Build…exe」をクリック
して、「はい」をクリック

Nextをクリック

チェックを入れてNextをクリック

Installをクリックしてインストール
して、Finishをクリック

すると、デスクトップに戻ると思いますので、
画面左下隅の
スタートのWindowsマークをクリック

最近追加されたものから、
「Smblime Text 3」をデスクトップにドロップ

このアイコンをダブルクリックして起動します。

このコードを入力します。

※ 矢印の所、printlnは「小文字のエル」です。
※ 全角スペースはエラーになるので、
必ず半角にしてください。


public class HelloWorld {
public static void main(String[] args){
//Hello worldを表示する
System.out.println(“Hello world”);
}
}

 


これを保存する場所を作ります。

エクスプローラーを立ち上げます。
[Windowsキー] + [E]

で、Cドライブを開きます。

[Ctrl] + [Shift] + [N]
で、新しいフォルダーを作って、
「JavaSample」と名前を付けます。

Javaのエディターに戻って、
保存します。
File → Save asをクリックします。
( [Ctrl] + [Shift] + [S] でも出来ます。)

Cドライブ → JavaSampleフォルダーの中に、
「HelloWorld.java」と付けて保存します。



このように、カラ―になりました。

ここから、コマンドプロンプトを開いて実行します。
[Windowsキー] + [R]
を押します。

すると、このダイアログボックスが出て来るので、
「cmd」と入力します。

①出てきたウィンドウに、
「cd c:\JavaSample」と入力して、
Enterを押します。

②すると、さっきCドライブの下に作ったフォルダーに移動しました。

次に、「dir」と入力して、Enterを押します。
ファイル、「HelloWorld」が保存されていることが
確認出来ます。

そこで、プログラムがキチンとしたものか
確認する為に使うコマンドを入力します。

javacと入力すると、
このようなエラーが出ます。

ここまでやって、夜の12時になりましたので、
いったん寝て明日朝早く起きて続けました。

次の日。
javacコマンドが使えなくて、昨日は暗礁に乗り上げて
しまいましたが、「JDK」とかいうのをインストールすると、
コマンドプロンプトでjavacが使えるようになるという
情報を得たので、朝起きてからやることにしました。

JDKをインストールする前に、
ご使用のパソコンが、OSが64ビットか32ビットが調べます。

スタート → Windowsシステムツール → コントロールパネル


システムとセキュリティをクリックして、
システムをクリックします。


すると、64ビットであることが分かります。

これからJDKをダウンロードします。


https://www.oracle.com/technetwork/java/javase/downloads/index.html

このアイコンをクリックします。

下にスクロールして、○Accept License Agreementにチェックを入れます。
すると、このように表示が変わりました。


まず、この2つをダウンロードします。
下から2番目をクリックします。

画面左下隅をクリックして、開きます。
何度か次へを押します。
暫く待ちます。

閉じるを押します。

次に、一番下をダウンロードします。

同様に行い、これでインストール完了しました。
どこにインストールされたのか
確認します。

[Windowsキー] + [E]
で、エクスプローラーを開きます。

PCの下のCドライブをダブルクリックします。

ProgramFilesをダブルクリックします。

Javaをダブルクリックします。

jdk-XX-.X.X (Xはバージョン)をダブルクリックします。

上にパスが出てきたので、メモ帳などに貼り付けて控えます。
C:\Program Files\Java\jdk-13.0.1

次に、環境変数の設定をします。


スタート → Windowsシステムツール コントロールパネル システムとセキュリティ


システム→システムの詳細設定

システムのプロパティが出てきたら、
「環境変数」をクリックします。

「新規」を押して、

変数名に
「JAVA_HOME」、
変数値に
「C:\Program Files\Java\jdk-13.0.1」
(先ほどJDKをインストールした場所)
を入れてOKを押します。

このように、追加されました。

それから、「Path」を選択して、「編集」を押し、

新規を選びます。

先ほどの保存場所に「\bin」を加えた、
「C:\Program Files\Java\jdk-13.0.1\bin」を追加します。


このように追加されました。

最後に、JAVA_HOMEが登録されていることを
確認して、もしなければ。

変数名に
「JAVA_HOME」、
変数値に
「C:\Program Files\Java\jdk-13.0.1」
を追加します。

これで、コマンドプロンプトに戻ります。
pathと入力して、


これが出ていることを確認します。

javac HelloWorld.java
で、コンパイルをして、


java HelloWorld.java
で実行しました。

エラーメッセージ、
「u3000’は不正な文字です」が出た場合は、
「全角スペース」が入っている場合があるので、
消して半角スペースにしてら、エラー治りました。

大変、本当に、大変お疲れ様でした。
ここまで、丸二日かかりました(=^・^=)

参考URL
https://eng-entrance.com/java-basic-compile
https://eng-entrance.com/java-install-env

Java自作サンプルに戻る
これからプログラミングを始める方へ
プログラミングと資格
息抜きに、写真で癒し(=^・^=)

【Exceショートカットキーその3】例文で覚える表示形式のキー

この記事では例文を通して

・数字にカンマを付ける

・円マークを付ける

・日付形式にする

・パーセントを付ける

・書式を標準に戻す

の概要を掴めます。

数値の3桁区切りやパーセント表示といった、実務でも良く使う、数値の書式に関する使用頻度の高いショートカットキーを、4つの例文で掲載しております。

では、早速見て行きます♪


例文1) 日暮里駅から逗子駅までの片道運賃を 3桁カンマ区切りにする。

(閲覧時期によって運賃の変動があるかも知れません。)

黄色いセルのD2のところで、

[ Ctrl ] + [ Shift ] + [ 1ぬ! ]

を押すと、この様に3桁区切りでカンマが付きました。


次に行きます。

例文2) この運賃に円マーク(¥)を付ける

[ Ctrl ] + [ Shift ] + [ 4$う ]

Windowsの方は大丈夫だと思うのですが、Macの方はここを[command]にしてしまうと、スクショになってしまうので、[control]キーを押して下さい。

円マークが無事に付きました。


例文3) 日付の書式を適用する

上記の運賃は、2023年5月19日現在のものです。

今日の日付が入るはずなのに、なんか良く分かんない数値が入っていますね。
これは、1900年1月1日を1として、その経過日数が入っています。
これを、日付形式に致します。

これも、Windowsの方は大丈夫かと思いますが、Macの方は[command]を押してしまうと、またまたスクショになってしまうので、[control]を押して下さい。

[ Ctrl ] + [ Shift ] + [ 3#あ ]

すると、

これで日付の形式になりました。


例文4) 電車の混雑率にパーセントを付ける

この電車の混雑率は適当な値です。
これに%を付けます。

[ Ctrl ] + [ Shift ] + [ 5%え ]

%が付きました。


あとは補足情報です。
小数点以下の桁数を変えたい時には

[ Ctrl ] + [ 1ぬ! ]

を押すと、

このダイアログボックスが出てくるので、
「表示形式」タブ、パーセンテージ、 小数点以下の桁数を指定します。

このダイアログボックスは、タブを切り替えれば、
フォントで色を変えたり、文字の大きさを変えたりも出来ます。

ダイアログボックスを閉じるときは、

[ ESC ]

が便利です。

金額やパーセンテージを最初の形に戻したい時は、

[Ctrl] + [Shift] + [へ^~]

を押すと戻ります。


お疲れ様でした。ブレイクタイムPhotoは、

逗子海岸です。


ご精読誠にありがとうございました。

「できるYouTuber式 Excel現場の教科書(長内孝平氏)」

単行本(ソフトカバー)
Kindle版


「なんの才能もない発達障害者の声: 〜 届かない声を届けたい 〜 (障害者雇用向け)」

私、猫★シエスタの著作です。殆どが「発達障害者として働くことや障害とSNSについて」ですが、障害者雇用の事務作業で特に使用頻度の高いキーに絞ったExcelなどのショートカットキーの紹介と、演習問題も掲載しております。
Kindle版

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

初めてのGoogleスプレッドシートへ



写真クリエイターとしての活動
自己紹介

11 VBAの配列をサザエさんで覚える

配列ってなんだか難しそうな感じですよね。
でも、きっと大丈夫です!!

この記事では国民的アニメの「サザエさん」を使って、VBAの配列を勉強して行きます。

サザエさんのメインキャラを、「サザエ一家」と言う 配列に格納して、デバックプリントを使って、イミディエイトウィンドウに書き出して(出力して)行きます。

Excel側でシート「国民的アニメ」を用意して、表の中のキャラクター名を
配列「サザエ一家」に格納します。

配列は、

サザエ一家[0]=磯野波平
サザエ一家[1]=磯野フネ
サザエ一家[2]=フグ田マスオ
サザエ一家[3]=フグ田サザエ
サザエ一家[4]=磯野カツオ
サザエ一家[5]=磯野ワカメ
サザエ一家[6]=フグ田タラオ

です。

この様に配列は「0から」始まります。
この0から始まる部屋番号みたいなものを、添え字といいます。

では、下記のコードで実際に「波平さん(=0) ~ タラちゃん(=6)」までの名前を配列「サザエ一家」に格納して、それをイミディエイトウィンドウに出力します。

Sub 配列1()

'文字列型の配列「サザエ一家(6)」と、添え字の変数i(数値型)を定義
    Dim サザエ一家(6) As String, i As Integer
 
'ループでiを0から6まで配列の長さ分指定する
     For i = 0 To 6

'ExcelのセルB3の磯野波平から順番に配列「サザエ一家」に格納する
       サザエ一家(i) = Worksheets("国民的アニメ").Cells(3 + i, 2).Value

'デバックプリントに配列「サザエ一家」を出力する
       Debug.Print サザエ一家(i)

'配列の添え字iを進める
   Next i

End Sub

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


では次に、サザエさん一家の中から代表して、「磯野波平」さんに一家のメンバーカラーを割り当ててみましょう。

メンバーカラーも、配列を使います。
配列名を「メンバーカラー」とします。

配列メンバーカラーの型は、Variant(バリアント型)という何でも入る型を使います。
このVariant型は、段ボール箱に四次元ポケットの機能を付けたようなイメージです。

ここでも、配列は0から始まります。

インプットボックスに0から4までの数字を入力して、波平さんにメンバーカラーを割り当てます。

「配列メンバーカラー」は

メンバーカラー[0]=赤
メンバーカラー[1]=青
メンバーカラー[2]=黄
メンバーカラー[3]=緑
メンバーカラー[4]=紫

としました。

ここでは波平さんに4番の「紫」のメンカラを割り当てます。

出力結果です。

コードです。
配列はArrayを使って作成します。

Sub 配列2()

'Variant型の配列「メンバーカラー」と、数値型の「番号」を宣言
    Dim メンバーカラー As Variant, 番号 As Integer

'配列メンバーカラーの色を「赤、青、黄、緑、紫」とする
      メンバーカラー = Array("赤", "青", "黄", "緑", "紫")

'インプットボックスを使って、メンバーカラーの番号を入力する
      番号 = InputBox("赤:0、青:1、 黄:2、緑:3、紫:4", "「磯野波平」氏にどのメンバーカラーを割り当てますか?")

'メッセージボックスに、「磯野波平氏」のメンバーカラーは「メンバーカラー(番号)ですと出力する
     MsgBox ("磯野波平氏のメンバーカラーは" & "「" & メンバーカラー(番号) & "」です☆★")

End Sub


皆様お気付きの通り、サザエさん一家に大事なキャラクターの「タマ」がいません!
そこで先ほどの配列「サザエさん一家」を自動で範囲の拡張をさせます。

新たに、配列「サザエ一家」に「タマ」も追加したい時、配列に自動的に追加出来るようなコードを書いて行きます。

行の「上端」と、「下端」と、「配列の最後(この場合は[7])」を、このExcelの全ての行を使って用意します。

このExcelの表を下にず〜〜〜〜とスクロールして、スクロールして、更に下に行くと、とてつもなく大きい数の行数があります。

数えきれないので、下記のVBAのコードでは
このExcelの全ての行数 = ActiveSheet.Rows.Count
と掲載します。

一番下である「このExcelの全ての行数」から上に向かって最初にぶつかるのが、
「タマ」の行です。
ここでは10行目で、変数「下端」に代入します。

変数「上端」は、B1から最初にぶつかるのが、「サザエ一家」という見出しで2行目です。

一家の行数は全部で8行で、配列は0から始まって7で終わります。
10行目から見出しの2行目を引いた数が行数として8行と求まります。
配列の最後の添え字は7なので、そこから1を引いています。


下記のコードで、LBoundは配列「サザエ一家」の一番小さい番号で[0]、
UBoundは一番大きい番号で[7]です。

Sub 配列3()

'文字列型の配列「サザエ一家」、ループの添え字数値型「i」、Long型の「上端」、Long型の「下端」、Long型の「配列の要素数」、Long型の「このExcelの全ての行数」を宣言

    Dim サザエ一家() As String, i As Long, 上端 As Long, _
       下端 As Long, 配列の要素数 As Long, このExcelの全ての行数 As Long

'ワークシート「国民的アニメ」をアクティブにする
       Worksheets("国民的アニメ").Activate

'このExcelの全ての行数をActiveSheet.Rows.Countを使って求める
      このExcelの全ての行数 = ActiveSheet.Rows.Count

'「上端」をセルB1、1行目2列目から下に向かって求める
      上端 = Cells(1, 2).End(xlDown).Row

'「下端」を行が「このExcelの全ての行数」で、列がB列(2列目)から上に上がって求める
      下端 = Cells(このExcelの全ての行数, 2).End(xlUp).Row

'「配列の要素数」の[7]を下端(10)-上端(2)-1から求める
      配列の要素数 = 下端 - 上端 - 1

'ReDimを使って、新たに配列を出力
       ReDim サザエ一家(配列の要素数)

'Forループで配列の最初(LBound)から配列の最後(UBound)までを添え字iに代入
          For i = LBound(サザエ一家) To UBound(サザエ一家)

      '配列「サザエ一家」に、Excelのシート「国民的アニメ」のセルB3からB7までを格納
             サザエ一家(i) = Worksheets("国民的アニメ").Cells(上端 + i + 1, 2).Value

'デバックプリントを使って、イミディエイトウィンドウに配列サザエ一家[i]を出力
          Debug.Print サザエ一家(i)

'ループを進める
         Next i

End Sub

実行すると、無事に自動で「タマ」も出力されました。

お疲れ様でした。

ここでサザエさんTipsですが、サザエさんは「あわび女子学園大学」を卒業されています。
参考記事:サザエさんの登場人物の学歴がヤバい…卒業した大学や就職先を公開

サザエさんのBGMが聴きたい方は、こちらの動画がオススメです。
この記事を書き終わって、私も思わず聴きに行きました。

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

いたばし花火大会2023の「にこちゃんマーク」の花火です。
「♪はだしで かけてく、陽気なサザエさん」 に合いそうな写真だと、個人的に思います。

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

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

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

写真素材素材【写真AC】

 

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

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

自己紹介


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

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


MOSなどの資格試験対策