第67回.総合練習問題7解答
マクロVBA練習問題の解答ページです。
マクロVBA練習問題
ブックとシートを扱う問題です。
まず以下を見て下さい。
シート「ブック一覧」のA列にパス、B列にブック名が入っています。
このブックを開き、中の全てのシート名を取得して下さい。
先頭に「シート一覧」というシート追加し、
A列にブック名、B列にシート名を書き出して下さい。
ただし、繰り返し実行可能なように、既に「シート一覧」というシートがある場合も考慮する事。
結果は以下のようになります。
少し難しいプログラムになります。
ヒント!
まず以下を見て下さい。
このブックを開き、中の全てのシート名を取得して下さい。
先頭に「シート一覧」というシート追加し、
A列にブック名、B列にシート名を書き出して下さい。
ただし、繰り返し実行可能なように、既に「シート一覧」というシートがある場合も考慮する事。
結果は以下のようになります。
既に「シート一覧」というシートがある場合は、
一旦シートを削除してから行う方が簡単です。
一旦シートを削除してから行う方が簡単です。
シンキングタイム
シンキングタイム開始
シンキングタイム終了
シンキングタイム終了
マクロVBA練習問題解答
では解答のマクロVBAコードです。
※.Valueは適宜省略しています。
それなりに長いマクロになっています。
今までに説明した、ステートメント・プロパティ・メソッドだけを使ったつもりです。
書き方は色々あります。
この部分は、
本来は、このように書く方が良いでしょう。
On Error のサンプルをかねて、回答ではこのようにしてみました。
Setステートメントをうまく使うと、マクロがすっきりします。
何度も書いて覚えて下さい。
※.Valueは適宜省略しています。
Sub 練習1()
Dim i As Long
Dim OutRow As Long
Dim wb読込 As
Workbook
Dim ws一覧 As Worksheet
Dim ws As
Worksheet
Application.ScreenUpdating =
False
Application.DisplayAlerts = False
'シート「シート一覧」を削除
On
Error Resume Next
Worksheets("シート一覧").Delete
On Error GoTo
0
'「シート一覧」を作成
Set ws一覧 =
Sheets.Add(Before:=Sheets(1))
ws一覧.Name =
"シート一覧"
ws一覧.Range("A1") = "ブック名"
ws一覧.Range("B1") = "シート名"
'「シート一覧」2行目から
OutRow = 2
With
Worksheets("ブック一覧")
For i = 2 To .Cells(.Rows.Count,
1).End(xlUp).Row
'ブックを開く
Set wb読込 = Workbooks.Open(.Cells(i,
1) & "\" & .Cells(i, 2))
'ブック名を出力
ws一覧.Cells(OutRow,
1) = wb読込.Name
'全シート名を出力
For Each ws In
wb読込.Sheets
ws一覧.Cells(OutRow, 2) = ws.Name
OutRow =
OutRow + 1
Next ws
'開いたブックを閉じる
wb読込.Close
SaveChanges:=False
Next i
End
With
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End
Sub
それなりに長いマクロになっています。
今までに説明した、ステートメント・プロパティ・メソッドだけを使ったつもりです。
書き方は色々あります。
'シート「シート一覧」を削除
On Error Resume Next
Worksheets("シート一覧").Delete
On
Error GoTo 0
この部分は、
For Each ws In Sheets
If ws.Name = "シート一覧"
Then
ws.Delete
End If
Next ws
本来は、このように書く方が良いでしょう。
On Error のサンプルをかねて、回答ではこのようにしてみました。
Setステートメントをうまく使うと、マクロがすっきりします。
何度も書いて覚えて下さい。
同じテーマ「マクロVBA練習問題解答」の記事
マクロVBA練習問題の解答ページです。マクロVBA練習問題 以下の表について、書式設定のマクロを書いて下さい。上の表の書式設定をして、下の表を完成させて下さい。ヒント!セルの書式設定では、同じ設定についてはまとめて一括でやるようにしてください。
第43回.総合練習問題5解答マクロVBA練習問題の解答ページです。マクロVBA練習問題 以下の表で問題です、いわゆる百ます計算です。このシートは、「Sheet1」とし、別に「Sheet2」が存在します。百マス計算です。・交点のセルに掛け算を入れて下さい。
第50回.総合練習問題6解答マクロVBA練習問題の解答ページです。マクロVBA練習問題 1問目 セルA1に、20120203 と入っています、これを、セルB2に、日付(2012/2/3) として出力して入れて下さい。2問目 セルA1に、日本太郎 と入っています、姓名の間の空白は半角スペースです。
第67回.総合練習問題7解答第78回.総合練習問題8解答
マクロVBA練習問題の解答ページです。マクロVBA練習問題 ・ダイアログで、Excelファイルを選択する ・指定されたExcelファイルの全ワークシートを印刷する ただし、非表示シートは対象外とする また、シートの全セルの背景色は消して下さい。
第81回.総合練習問題9解答マクロVBA練習問題の解答ページです。マクロVBA練習問題 フォルダごとバックアップするマクロの作成です。自身のブックのあるフォルダについて、以下の処理をして下さい ・サブフォルダ"BACKUP"を作成して下さい ・フォルダ内のすべてのエクセルファイルを"BACKUP"にコピ…
第86回.総合練習問題10解答マクロVBA練習問題の解答ページです。マクロVBA練習問題 表の見出しを残して、データ部分のみ消去してください。・A1セルを起点に1つのセル領域があります、・1行目は列見出しとして使用、A列は行見出しとして使用しています、・つまり、データ部はB2セルから開始されています、・データ部のみ入力データを消去してください。
練習問題1(For~Nextの練習)解答マクロVBA練習問題1の解答ページです。マクロVBA練習問題 ・客単価を計算して、D列に入れて下さい。※行数は2~11行の固定の記述で良いです。※客単価=売上÷客数。練習問題用のExcelファイル こちらからダウンロードできます。
練習問題2(最終行の取得の練習)解答マクロVBA練習問21の解答ページです。マクロVBA練習問題 ・金額を計算して、D列に入れて下さい、ただし、行数は随時変わるので、行数の変化に自動対応して下さい。※金額=数量×単価 練習問題用のExcelファイル こちらからダウンロードできます。
練習問題3(二重ループの練習)解答マクロVBA練習問題3の解答ページです。マクロVBA練習問題 100マス計算です。1行目の数値と、A列の数値の掛け算を、各交点のセルに入れて下さい。練習問題用のExcelファイル こちらからダウンロードできます。
練習問題4(Ifの練習)解答マクロVBA練習問題4の解答ページです。マクロVBA練習問題 ・箱数とバラ数を計算して、それぞれの列に入れて下さい。・1箱に満たない場合は、D列の箱数に"×"を入れて下さい。※入数とは、1箱に入る数量です。
新着記事NEW ・・・新着記事一覧を見る
ブール型(Boolean)のis変数・フラグについて|VBA技術解説(2024-04-05)
テキストの内容によって図形を削除する|VBA技術解説(2024-04-02)
ExcelマクロVBA入門目次|エクセルの神髄(2024-03-20)
VBA10大躓きポイント(初心者が躓きやすいポイント)|VBA技術解説(2024-03-05)
テンキーのスクリーンキーボード作成|ユーザーフォーム入門(2024-02-26)
無効な前方参照か、コンパイルされていない種類への参照です。|エクセル雑感(2024-02-17)
初級脱出10問パック|VBA練習問題(2024-01-24)
累計を求める数式あれこれ|エクセル関数応用(2024-01-22)
複数の文字列を検索して置換するSUBSTITUTE|エクセル入門(2024-01-03)
いくつかの数式の計算中にリソース不足になりました。|エクセル雑感(2023-12-28)
アクセスランキング ・・・ ランキング一覧を見る
1.最終行の取得(End,Rows.Count)|VBA入門
2.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
3.RangeとCellsの使い方|VBA入門
4.ひらがな⇔カタカナの変換|エクセル基本操作
5.繰り返し処理(For Next)|VBA入門
6.変数宣言のDimとデータ型|VBA入門
7.ブックを閉じる・保存(Close,Save,SaveAs)|VBA入門
8.並べ替え(Sort)|VBA入門
9.セルのクリア(Clear,ClearContents)|VBA入門
10.Findメソッド(Find,FindNext,FindPrevious)|VBA入門
- ホーム
- マクロVBA入門編
- マクロVBA練習問題解答
- 総合練習問題7解答
このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。
掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。