本学習テーマ紹介動画
👆本学習テーマをYouTubeで紹介しています!
チャンネル登録宜しくお願いします!
効果音ラボ ナレーション 音読さん
*基本的に, 記事投稿日翌日夜18:30頃から, 動画を閲覧できます。
本学習ツールでの問題文・解答例
問題文
以下の要件を満たすVBAのプログラムを実装して下さい。
要件
本ワークブック内に「コピーシート」がない場合のみ, 「読み込みシート」をコピーする。 尚, コピーしたシートの位置は末尾, シートの名前は「コピーシート」とする。 |
シートコピーを行った場合は, MsgBox関数(情報アイコン)で「シートコピー完了!」と表示する。 既に「コピーシート」があり, シートコピーを行わなかった場合は, MsgBox関数(情報アイコン)で『既に「コピーシート」があった為, シートコピーを行いませんでした。』と表示する。 |
解答例
Option Explicit
Sub correctAnswerExample()
Dim ws As Worksheet
Dim sheetExists As Boolean: sheetExists = False
' ワークブック内に「コピーシート」が存在するか確認
For Each ws In ThisWorkbook.Worksheets
If ws.Name = "コピーシート" Then
sheetExists = True
Exit For
End If
Next ws
' 「コピーシート」が存在しない場合
If Not sheetExists Then
' 「読み込みシート」をコピー
ThisWorkbook.Worksheets("読み込みシート").Copy After:=ThisWorkbook.Worksheets(ThisWorkbook.Worksheets.Count)
' コピーしたシートの名前を「コピーシート」に設定
ActiveSheet.Name = "コピーシート"
' メッセージを表示
MsgBox "シートコピー完了!", vbInformation
Else
' 「コピーシート」が既に存在する場合のメッセージを表示
MsgBox "既に「コピーシート」があった為, シートコピーを行いませんでした。", vbInformation
End If
End Sub
上のプログラムが実際に動く様子は, 下の学習ツールをダウンロードして, 確認してみて下さい!
本学習ツールの内容
下👇の画像のように, vbaでシートをコピーするプログラムを実装し, それを実際に実行することが出来ます!
![VBA学習ツール-#34 テーマ:vbaでシートコピーしよう!の問題文&解答シート](https://excel-program.com/wp-content/uploads/2024/08/description-question-answer-sheet-copy-1024x436.png)
![VBA学習ツール-#34 テーマ:vbaでシートコピーしよう!の正答シート](https://excel-program.com/wp-content/uploads/2024/08/description-correct-answer-sheet-copy-1024x654.png)
![VBA学習ツール-#34 テーマ:vbaでシートコピーしよう!のコピーシート](https://excel-program.com/wp-content/uploads/2024/08/description-copy-sheet-sheet-copy-1024x539.png)
VBA設定
尚, 本ツールには, 「VBA」(Excelのプログラミング言語)が組み込まれている為, 以下のマニュアルに従った設定・エラー時の対処が必要となります。
ダウンロード
ぜひ, 勉強にご活用下さい!(xlsmファイル)👇
コメント