練習問題と内容について
・練習問題の狙い
このシリーズでは課題を元にマクロVBAで実践することでスキルを身につける狙いです。
正直、ソースコード作成については実践あるのみです!
答えのコードについては数例挙げますが、「もっといい答えがある」などの意見があれば
問い合わせから連絡ください!
こんな問題を作ってほしいなどの意見もお待ちしております!
・練習問題3について
こちらはマクロVBAの初歩的な知識になります。
セル番地に現在の日付を表示となります。
それでは頑張っていきましょう!
練習問題の内容と動作説明
問題内容
セル番地C1に現在の日付を表示する。
動作説明
VBAを使用して、現在の日付を取得し、それをセル番地C1に表示します。
具体的には、VBAの組み込み関数であるDateを使用して現在の日付を取得し、その値をセル番地C1に表示する必要があります。
ヒント
この問題では、現在の日付を取得し、それをセルに表示する必要があります。
以下のヒントを参考にして解答コードを作成してみてください。
・ヒントその1
現在の日付を取得するには、Date関数を使用します。
Date関数は、システムの現在の日付を返します。
・ヒントその2
セルに値を表示するためには、Rangeオブジェクトを使用します。
セル番地を指定して該当するセルオブジェクトを取得し、Valueプロパティを使用して値を設定します。
・ヒントその3 (参考)
日付の値をセルに表示する場合、VBAの日付形式を適用すると見やすくなります。
NumberFormatプロパティを使用してセルの書式設定を行うことができます。
これらのヒントを参考にして、解答コードを作成してみてください。
Excel 2013以下を使用している方はサポートが終了しているので注意が必要です!
【最新2023年】Excel・Officeの価格比較!あなたに合ったオススメの製品の選定方法から購入 ► 独学エクセル塾 (dokugakuexcel.com)
解答コード
では回答を見ていきましょう!
・回答その①
Range(“C1”).Value Date
Range(“C1”).NumberFormat = “yyyy/mm/dd”
End Sub
上記のコードは、現在の日付を取得し、それをセル番地C1に表示するVBAのマクロです。
解答コードでは、Range(“C1”).Value = Dateという行で、
Date関数を使用して現在の日付を取得し、セル番地C1にその値を表示しています。
また、Range(“C1”).NumberFormat = “yyyy/mm/dd“という行で、セルの書式設定を行っています。
ここでは、日付の形式を「年/月/日」の形に指定していますが、必要に応じて適切な書式を選択してください。
・回答その②
Sub Exercise3to2()
Dim currentDate As Date
currentDate = Date
Cells(1, 3).Value = Format(currentDate, “yyyy/mm/dd”)
End Sub
上記のコードでは、Date関数を使用して現在の日付を取得し、変数currentDateに格納しています。
その後、Cells(1, 3).Valueを使用してセル番地C1にcurrentDateの値を表示しています。
Format関数を使って日付の書式を設定していますが、必要に応じて適切な書式を指定してください。
この回答例では、Cellsオブジェクトを使用してセルにアクセスしています。
Cellsオブジェクトは、行番号と列番号を指定してセルにアクセスする際に使用します。
必要な知識
この問題を解くためには、以下の基本的な知識が必要です。
日付の取得
現在の日付を取得するためには、VBAの組み込み関数であるDateを使用します。
この関数は、システムの現在の日付を返します。
セルへの値の設定
セルに対する操作を行うためには、RangeオブジェクトやCellsオブジェクトを使います。
特定のセルに値を入力するには、RangeオブジェクトのValueプロパティを使用します。
下記参考記事で紹介しています!
日付の書式設定 (※参考)
セルに表示する日付の書式を設定することで、見た目を調整することができます。
NumberFormatプロパティを使用してセルの書式設定を行います。
これらの知識を応用して、問題を解くためのコードを作成しましょう。
まとめ
この練習問題では、VBAを使用してセルに現在の日付を表示する方法を学びました。
解答コードでは、Date関数を使用して現在の日付を取得し、Range(“C1”)やCells(1, 3)を使用してセル番地C1にその値を表示しました。
さらに、日付の書式を設定するためにNumberFormatプロパティを使用しました。
VBAを使うことで、Excelでの日付の自動表示や書式設定を簡単に行うことができます。
これは、日報やスケジュール管理など、日付情報を扱う作業において非常に役立つスキルです。
練習問題を通じてVBAの基礎的な知識を学び、実際の問題に応用してみてください。
これにより、Excelの操作を自動化し、効率的にタスクを処理することができるようになります。
次の練習問題では、さらに難易度の高い問題に取り組んでいきますので、
順番に解いていくことでスキルを磨いていきましょう。
以上で練習問題3となります。お疲れ様でした!