シーゴの Excel 研究室

タイトル変更しました (旧称:今日を乗り切るExcel研究所)

VBA100本ノック解答記事一覧

VBA100本ノックとは

VBA100本ノックとは「Excelの神髄」様の Twitter 企画で、2021 に開催されました。

excel-ubara.com

コロナ禍で世間が落ち込んでいる中、 本企画は VBA プログラマを元気づけ、前向きな気持ちを取り戻させた、素晴らしい企画だったと思います。

遅まきながら、拙プログでもその何本かに挑戦(便乗)し、解答記事としています。 そろそろ自分でも何をどこまでやったのか把握できなくなってきたので、このページで管理しておきます。 とても全部はできなさそうですが、すでに塩漬けになっているものもあり、時間をみつけて追加したいと思います。

解答プログラムとしては、ただ解いただけでは面白くないので、どれもちょっと捻くれた答えになっています。 時にはかなりマニアックな内容になっていると思いますが、興味のある方のため、できるだけ調べて解説も付けるようにしています。

バグや質問等あれば、コメントか Twitter にてお知らせください。

 



 

VBA100本ノック解答記事一覧

問題と解説記事 本ブログ解答記事 技術要素
1本目:セルのコピー 【VBA】別シートにセル範囲をコピーしたい【100本ノック】 Worksheets.FillAcrossSheets メソッド
2本目:セルのコピー
3本目:セルの消去
4本目:セルの消去 【VBA】入力セルをクリアしたい【100本ノック】 Range.DirectPrecedents プロパティ、
参照先のトレース
5本目:セルの計算 【VBA】空文字列セルを空白セルにクリアしたい【100本ノック】 空白セル、
ユーザー定義関数
6本目:セルに計算式 【VBA】条件を満たす行のみセル内容を一括変更したい【100本ノック】 Range.AutoFilter メソッド、
Range.AdvancedFilter メソッド、
Worksheet.ShowAllData メソッド、
7本目:日付データの扱い
8本目:点数の合否判定
9本目:フィルターコピー 【VBA】表から特定のデータのみを別シートに抽出したい【100本ノック】 Range.AdvancedFilter メソッド、
フィルターオプション
10本目:行の削除 【VBA】セルの値によって行を削除したい【100本ノック】 Range.Sort メソッド
11本目:セル結合の警告
12本目:セル結合の解除
13本目:文字列の部分フォント
14本目:社外秘シート削除
15本目:シートの並べ替え
16本目:無駄な改行を削除
17本目:重複削除(ユニーク化)
18本目:名前定義の削除
19本目:図形のコピー
20本目:ブックのバックアップ
21本目:バックアップファイルの削除
22本目:FizzBuzz発展問題
23本目:シート構成の一致確認
24本目:全角英数のみ半角
25本目:マトリックス表をDB形式に変換 【VBA】横持ちデータを縦持ちに変換したい【100本ノック】 配列数式
26本目:ファイル一覧作成
27本目:ハイパーリンクのURL
28本目:シートをブックに分割
29本目:画像の挿入
30本目:名札作成(段組み)
31本目:入力規則
32本目:Excel終了とテキストファイル出力
33本目:マクロ記録の改修
34本目:配列の左右回転
35本目:条件付き書式
36本目:列の並べ替え
37本目:グラフの色設定
38本目:1シートを複数シートに振り分け
39本目:数値リストの統合(マージ)
40本目:複数ブックの統合
41本目:暗算練習アプリ
42本目:データベース形式に変換 【VBA】階層見出しをデータ構造に変換したい【100本ノック】 「空白を無視する」貼り付け、
Range.PasteSpecial メソッド、
Range.AutoFilterメソッド
43本目:CSV出力
44本目:全テーブル一覧作成
45本目:テーブルに列追加
46本目:名前定義に使える文字
47本目:Window操作
48本目:配列と数値型
49本目:条件付き書式の判定
50本目:トリボナッチ数列
51本目:シート一覧と印刷ページ数
52本目:複数シートの一括印刷
53本目:テーブルの扱いと年齢計算
54本目:シートのChangeイベント
55本目:他ブックのマクロを起動
56本目:数式内の自身のシート名を消す
57本目:ファイルの更新日時
58本目:番号リストを簡潔にした文字列で返す
59本目:12ヶ月分のシートを四半期で分割
60本目:「株式会社」の表記ゆれ置換
61本目:「ふりがな」の取得と設定
62本目:独自のZLOOKUP関数を作成
63本目:複数シートの連結
64本目:リンクされた図(カメラ機能)
65本目:固定長テキスト出力 【VBA】固定長テキスト形式でデータを保存したい【100本ノック】 PRN 形式、Format 関数
66本目:全サブフォルダからファイルを探す 【VBA】ファイルを高速に検索したい【100本ノック】 PowerShell、WMI、WQL、
システムインデックス、WSSQL
67本目:ComboBoxとListBox
68本目:全テキストボックスの転記
69本目:ダブルクリックでセル結合を解除
70本目:ステータスバーに1秒ごとに時刻表示
71本目:パワーポイントへグラフを貼り付け
72本目:ITをDXに変換(文字列操作)
73本目:新規ブックにボタン作成しマクロ登録
74本目:1シート複数表をDB形式に変換 【VBA】ワークシートのデータを Power Query で加工したい【100本ノック】 テーブル化、ListObject、
Power Query、M言語、
Excel.CurrentWorkbook 関数
75本目:ログインフォームの作成
76本目:ボタンの表示名の位置へ移動
77本目:シート挿入イベント
78本目:グラフのデータ範囲拡張
79本目:Wordにセル範囲を図として挿入
80本目:読み取り専用で保存できないブックにする
81本目:全フィルターの絞り込解除
82本目:ブックのドキュメントプロパティを取得
83本目:請求書を作成してPDF出力
84本目:ブックの自動バックアップ
85本目:請求日から入金予定日を算出
86本目:全シートの総当たり表を作成
87本目:数式のシート間の依存関係
88本目:クロスABC分析作成 【VBA】業務用語で計算式を表したい【100本ノック】 名前参照、名前の定義、
配列数式、暗黙的交差参照、
動的配列関数、LET 関数、
XLOOKUP関数、累積構成比、
89本目:2つのフォルダの統合
90本目:セルに重なっている画像の削除
91本目:時間計算(残業時間の月間合計) 【VBA】時間の計算をしたい【100本ノック】 Date 型の演算、日時関数、
シリアル値
92本目:セルの色を16進で返す関数
93本目:複数ブックを連結して再分割 【VBA】Excelファイルを開かずにデータを取り出したい【100本ノック】 外部参照数式、動的配列数式、
スピル、UNIQUE関数
94本目:表範囲からHTMLのtableタグを作成 【VBA】Excel で作成した表を HTML に変換したい【100本ノック】 フレームワーク設計
95本目:図形のテキストを検索するフォーム作成
96本目:Accessデータを取得(マスタ結合&抽出)
97本目:Accessデータを取得(グループ集計)
98本目:席替えルールが守られているか確認
99本目:行列前後左右が違うように自動席替え
100本目:WEBから100本ノックのリストを取得