@lifehacker

スポンサーリンク
VBA

Excel VBA | 数値を降順、文字列を昇順に並べる応用例

数値を降順、文字列を昇順に並べる応用例(VBA)「数値と文字列が混在した配列」を 数値は降順、文字列は昇順 に並べる方法を紹介します。ポイントは 数値と文字列を分けてソート → 結合 です。1. 汎用...
VBA

Excel VBA | 数値と文字列を完全に分けて、数値を先に並べてから文字列を並べる方法

数値と文字列を完全に分けて、数値を先に並べてから文字列を並べる方法(VBA)配列に 数値と文字列が混在している場合、単純にソートすると型の違いで期待通りにならないことがあります。そこで「数値だけを先に...
VBA

Excel VBA | 昇順・降順を切り替えられる汎用ソート関数

文字列や数値を混在させた配列をソートする方法(VBA)VBAでは配列に 文字列と数値が混在している場合、通常の比較演算子では型の違いでエラーになったり、期待通りに並ばないことがあります。そこで「型を統...
VBA

Excel VBA | 昇順・降順を切り替えられる汎用ソート関数

昇順・降順を切り替えられる汎用ソート関数(VBA)配列やDictionaryのキー・値をソートするときに「昇順」「降順」を切り替えられると便利です。以下は 汎用的なソート関数 の例です。1. 配列用の...
VBA

Excel VBA | キーと値を同時にソートして、結果を配列や新しいDictionaryに格納する方法

キーと値を同時にソートして、結果を配列や新しいDictionaryに格納する方法Scripting.Dictionary は順序を保持しないため、キーと値をペアとしてまとめてソート → 新しい配列やD...
VBA

Excel VBA | キーと値を両方ソートして出力する応用例

Dictionaryの「キー」と「値」を両方ソートして出力する応用例通常の Scripting.Dictionary は順序を保持しませんが、キー順・値順の両方で並べ替えて出力することが可能です。即時...
VBA

Excel VBA | 値でソートして出力するワンライナー

即時ウィンドウでDictionaryを「値」でソートして出力するワンライナーScripting.Dictionary は順序を保持しませんが、Itemsを配列として取得 → ソート → キーを逆引きし...
VBA

Excel VBA | キーと値をソートして出力するワンライナー

即時ウィンドウでDictionaryのキーと値をソートして出力する便利なワンライナーScripting.Dictionary はキーや値の順序を保持しませんが、Keysを配列として取得 → Sort ...
VBA

Excel VBA | キーと値のペアを即時ウィンドウに一気に出力する便利なワンライナー

即時ウィンドウでDictionaryのキーと値のペアを一気に出力する便利なワンライナーScripting.Dictionary の中身を即時ウィンドウでまとめて確認したいとき、キーと値のペアを一気に出...
VBA

Excel VBA | 即時ウィンドウでDictionaryのキー一覧を一気に確認する便利なワンライナー

即時ウィンドウでDictionaryのキー一覧を一気に確認する便利なワンライナーVBAの 即時ウィンドウ では、Scripting.Dictionary のキー一覧を一気に確認するために Join関数...
VBA

Excel VBA | 即時ウィンドウでコレクションやDictionaryの中身を確認する方法

即時ウィンドウでコレクションやDictionaryの中身を確認する方法VBAの 即時ウィンドウ は、配列やオブジェクトだけでなく Collection や Scripting.Dictionary の...
VBA

Excel VBA | 即時ウィンドウで配列やオブジェクトの中身を詳しく確認する方法

即時ウィンドウで配列やオブジェクトの中身を詳しく確認する方法VBAの 即時ウィンドウ は「変数の値を確認・変更」するだけでなく、配列やオブジェクトの中身を詳しく調べるのにも使えます。大量データや複雑な...
VBA

Excel VBA | 即時ウィンドウで関数を直接呼び出して結果を確認する方法

即時ウィンドウで関数を直接呼び出して結果を確認する方法VBAの 即時ウィンドウ は「変数の値を確認・変更」するだけでなく、関数やプロシージャを直接呼び出して結果を確認することもできます。これを使うと「...
VBA

Excel VBA | 即時ウィンドウで関数を直接呼び出して結果を確認する方法

即時ウィンドウで関数を直接呼び出して結果を確認する方法VBAの 即時ウィンドウ は「変数の値を確認・変更」するだけでなく、関数やプロシージャを直接呼び出して結果を確認することもできます。これを使うと「...
VBA

Excel VBA | 即時ウィンドウで変数の値を直接変更してテストする方法

即時ウィンドウで変数の値を直接変更してテストする方法VBAの 即時ウィンドウ は「変数の値を確認する」だけでなく、実行中に変数の値を直接変更してテストすることもできます。これを使うと「コードを修正せず...
VBA

Excel VBA | ウォッチ式と即時ウィンドウを組み合わせてリアルタイムに変数を追跡する方法

ウォッチ式と即時ウィンドウを組み合わせてリアルタイムに変数を追跡する方法VBAのデバッグでは ウォッチ式 と 即時ウィンドウ を組み合わせることで、変数の変化をリアルタイムに追跡できます。これにより「...
VBA

Excel VBA | ウォッチ式を使って条件付きで停止する方法(ブレークポイントを置かずに変数監視で止める)

VBAで「ウォッチ式を使って条件付きで停止する方法」ブレークポイントを置かずに、変数の値を監視して条件付きで停止する方法が「ウォッチ式」です。ウォッチ式を使うと「特定の変数がある値になったときだけ止め...
VBA

Excel VBA | 「条件付きブレークポイント(特定の値のときだけ止める)」の使い方

VBAで「条件付きブレークポイント」を使う方法通常のブレークポイントは「その行に到達したら必ず止まる」仕組みですが、条件付きブレークポイントを使うと「特定の値のときだけ止まる」ようにできます。大量ルー...
VBA

Excel VBA | パフォーマンス改善のコツ

なるほど!「パフォーマンス改善のコツ」といっても、対象によって少し違いますが、ここでは VBAやプログラム設計で処理速度を上げるための一般的な工夫 をまとめます。パフォーマンス改善の基本ポイント1. ...
VBA

Excel VBA | クラスやモジュール間の公開/非公開

VBAにおける「公開/非公開」の考え方Excel VBAでは、クラスモジュールや標準モジュールの中で定義したプロシージャや変数を「外部から使えるか/内部だけで使えるか」を制御できます。これが「公開(P...
VBA

Excel VBA | フォルダ内の全 CSV を 1 枚の Excel に統合するテンプレート

複数の CSV ファイルを 1 つの Excel ワークブックにまとめたいときの VBA マクロ設計例 を紹介します。これを使えば「フォルダ内の全 CSV を順番に読み込み → 1 枚のシートに統合」...
VBA

Excel VBA | API 連携風のログ&エラー管理テンプレ

こちらは、Excel VBAで「API連携風のログ&エラー管理テンプレート」を構築するための設計例です。API呼び出しのような処理を模倣しつつ、ログ記録・エラー管理・再実行性・通知を備えた堅牢な構成に...
VBA

Excel VBA | Outlook メール通知付きのバッチ処理の設計

バッチ処理の完了・失敗を自動でメール通知する仕組みを、Excel VBA+Outlookで作る例です。構成は「処理→結果集計→メール送信→ログ記録」。安全に運用できるよう、リトライ・例外処理・スケジュ...
VBA

Excel VBA | ByRef(参照渡し)を積極活用した実例

ここでは 実務でよく使う「別分野」 をテーマにして、すべて ByRef(参照渡し)を積極活用した実例 をまとめて提示します。実務の別分野:ByRef 具体例セット(全 6 種)フォルダ一括処理(ByR...
VBA

Excel VBA | 関数の戻り値と ByRef の使い分け — 設計フロー(チェックリスト+コード例)

初心者が「戻り値」と「ByRef」をどう使い分けるか迷わないように、設計判断フローをチェックリスト形式で整理しました。各ステップに対応するコード例も付けています。設計チェックリスト返す値は1つだけか?...
VBA

Excel VBA | 安全に ByRef を使う設計パターン(コード例付き)

ByRef は「呼び出し元の変数を直接書き換える」ため便利ですが、初心者が使うと副作用で混乱しやすいです。そこで 安全に使うための設計パターン をコード例付きで整理します。1. 複数値返却パターン目的...
VBA

Excel VBA | 「危険な ByRef の使い方」— 初心者がよくハマる罠集

VBA初心者が ByRef(参照渡し) を使うときに陥りやすい罠を整理しました。ByRefは便利ですが、呼び出し元の変数が直接書き換わるため、意図しない副作用が起きやすいです。1. デフォルトが By...
Java

Java | switch文を戦略パターンにリファクタリングする練習問題

「switch文を戦略パターンにリファクタリングする練習問題」をいくつか用意しました。実務でありがちなケースを題材にしています。練習問題1:注文ステータス管理元コード(switch)switch (s...
VBA

Excel VBA | 配列とオブジェクトの参照渡しのトリッキーな挙動

配列やオブジェクト(Range、Worksheet)の「参照渡し」特有のトリッキーな例を詳しく解説配列やオブジェクト(Range、Worksheet)は「中身」と「参照(どこを指しているか)」が分かれ...
VBA

Excel VBA | 引数にオブジェクト(Workbook/Range/Worksheet)を渡すベストプラクティス

VBAで「Workbook / Worksheet / Range」などのオブジェクトを引数に渡すベストプラクティスExcel VBAでは、プロシージャにオブジェクトを渡すことで柔軟な処理が可能になり...
VBA

Excel VBA | IsMissing と Optional の細かい制約(Variant の場合)

要点まとめVBAで Optional と IsMissing を組み合わせる場合、Variant型の引数だけが特別扱いされます。IsMissing は「その引数が省略されたかどうか」を判定する唯一の方...
VBA

Excel VBA | ByVal/ByRef のメモリやパフォーマンス面での違い

結論VBAにおける ByVal と ByRef の違いは「コピーを渡すか」「元の変数の参照を渡すか」という点にあり、メモリやパフォーマンス面では データのサイズや型によって影響が変わる。小さな値なら差...
VBA

Excel VBA | ByVal と ByRef(値渡し/参照渡し)

最初に押さえるポイントは「渡した値が呼び出し元で変わるかどうか」。ByVal(値渡し):中で変えても呼び出し元は変わらない。ByRef(参照渡し):中で変えたら呼び出し元も変わる。直感イメージByVa...
VBA

Excel VBA | 引数を省略可能にする Optional の使い方

「Optional」は 引数を省略できるようにする仕組み です。普通の引数は必ず渡さないとエラーになりますが、Optionalを付けると「渡してもいいし、渡さなくてもいい」になります。基本の書き方Su...
VBA

Excel VBA | 戻り値のある Function(関数)プロシージャの書き方

Excel VBAの function(関数)プロシージャの基本最初に押さえるポイントは「Subは命令を実行するもの」「Functionは“計算して値を返す”もの」。Functionは“入力→処理→出...
VBA

Excel VBA | 実務用 VBA コード集(テンプレ付き)

業務でよく使う 「安全に動く」「再利用できる」テンプレートコード集 をまとめました。ログ出力やエラー処理を組み込んでいるので、実務ですぐ活用できます。1. 基本構造(ログ+エラー処理付き)Option...
Java

Java | フォールスルーを使わないで同じ挙動を実現するリファクタ例(戦略パターンなど)

「フォールスルーを使って複数条件をまとめる」代わりに、戦略パターン(Strategy Pattern)などの設計パターンを使うと、より柔軟で保守性の高いコードになります。戦略パターンでのリファクタ例元...
VBA

Excel VBA | 「ログ出力」と「エラー処理」を組み込んだExcel VBAマクロのテンプレート

初心者でも実務で使いやすいように、「ログ出力」と「エラー処理」を組み込んだExcel VBAマクロのテンプレートを紹介します。これをベースにすれば、業務用マクロを安全に運用できます。実務マクロテンプレ...
VBA

Excel VBA | 命名規則チェックリスト(VBA/一般プロジェクト向け)

プロジェクト全体で命名を統一するためのチェックリストです。初心者でも使いやすいように整理しました。モジュール名 接頭辞を付ける(例:mod、cls、frm) 役割が分かる名前(例:modCalc、cl...
VBA

Excel VBA | プロジェクト全体の命名規則(接頭辞や名前空間の統一)

プログラムが大きくなると、モジュール・関数・変数の名前がバラバラだと管理が難しくなります。そこで「命名規則」をプロジェクト全体で統一することが重要です。初心者向けに整理してみます。命名規則を統一する目...
VBA

Excel VBA | Module設計・命名規則まとめ

プログラミング初心者向けに、VBAや一般的なプログラムにおける「モジュール設計」と「命名規則」を整理してまとめます。モジュール設計の基本モジュールは「処理をまとめる箱」です。大きなプログラムを整理する...
VBA

Excel VBA | ByValとByRefの違い(値渡しと参照渡し)

少し抽象的に聞こえる言葉だけど、実際は「中身のコピーを渡すのか」「そのものを渡すのか」という違いです。VBAでは引数の前に ByVal/ByRef を付けて制御します。基本の考え方ByVal(値渡し)...
VBA

Excel VBA | 「Subプロシージャ」と「Functionプロシージャ」の違い

初心者向けに 「Subプロシージャ」と「Functionプロシージャ」の違い、そして引数・戻り値の使い方を丁寧に解説します。SubプロシージャとFunctionプロシージャの違い項目Subプロシージャ...
VBA

Excel VBA | 在庫管理や売上処理でよくあるバグ

了解です!ここでは 在庫管理や売上処理でよくあるバグ を例に挙げて、修正版コードと解説をまとめます。実務でありがちな「間違い探し」形式です。よくあるバグと修正例1. 在庫更新で商品コードが見つからない...
VBA

Excel VBA | VBAの基本構文・ループ・条件分岐・変数宣言 などを題材に「バグ修正(間違い探し)」形式の練習問題

「バグ修正(間違い探し)」形式の練習問題を用意しました。初心者がつまずきやすい VBAの基本構文・ループ・条件分岐・変数宣言 などを題材にしています。各問題は「間違ったコード例」を提示するので、どこが...
VBA

Excel VBA | 中級・上級 VBA 総合セット(100問)

カテゴリ一覧制御構文・ロジック(10問)配列・コレクション・Dictionary(10問)Range・セル操作(10問)シート・ブック操作(10問)イベント処理(10問)ユーザーフォーム・UI(10問...
VBA

Excel VBA | Range(“A1”).CurrentRegion をそのまま配列にする高速テク

Excel VBA で 表全体を一気に配列に読み込むには、Range("A1").CurrentRegion.Value を使うのが定番です。これにより「A1 を含む連続したセル範囲(表全体)」を 二...
VBA

Excel VBA | 多列の配列処理(3次元配列の考え方)

Excel VBA で Range.Value を読み込むと 2次元配列(行 × 列) が得られます。「3次元配列」は Excel のセル範囲から直接は得られませんが、複数シートや複数テーブルをまとめ...
VBA

Excel VBA | 複数列を配列で扱う例(2次元配列処理)

Excel VBA で Range.Value を配列に読み込むと、二次元配列(行 × 列)として扱えます。これを使うと「複数列のデータをまとめて処理 → 一括で書き戻す」ことができます。基本の考え方...
VBA

Excel VBA | 配列を Dictionary に変換して高速検索する例

Excel VBA では、配列をそのままループして検索すると 線形探索(1件ずつチェック) になるため遅くなります。そこで Scripting.Dictionary を使うと、キーで即座に検索できるの...
VBA

Excel VBA | For Each の代わりに For i を使う理由

「For Each…Next」は すべての要素を順番に処理する のに便利ですが、処理する対象を選びたいときや インデックス番号を使いたいときには「For i…Next」が有利です。For i を使うメ...
VBA

Excel VBA | 配列高速化と For Each の使い分けまとめ

Excel VBA で繰り返し処理をするとき、「For Each…Next」 と 「配列に読み込んで一括処理」 のどちらを選ぶかで速度や書きやすさが変わります。実務ではこの使い分けが重要です。For ...
VBA

Excel VBA | 実務で役立つ「配列に読み込んで一度に書き戻す」高速化テクニック

Excel VBA でセルを 1つずつ処理すると遅い のはよくある悩みです。原因は「セルへのアクセスが都度 Excel に問い合わせる」ため。これを改善する方法が 配列にまとめて読み込み → VBA内...
Java

Java | switch文のデバッグでフォールスルーを見つける方法

「switch文のデバッグでフォールスルーを見つける方法」ですね。実務でよくハマるポイントなので、整理してコツをまとめます。フォールスルーとは?breakを書き忘れると次のcaseまで処理が流れる現象...
VBA

Excel VBA | 上級問題セット

ここでは VBA の上級者向けとして、以下の分野をすべて網羅した問題セットを紹介します。クラスモジュールDictionaryJSON(Parse/Serialize)Web API 呼び出し(WinH...
VBA

Excel VBA | 中級者向け VBA 練習問題(配列 / 文字列 / ファイル処理)

ここからは 中級者向けの VBA 練習問題(配列・文字列処理・ファイル処理)を合計 20問 用意。すべて 模範解答コードつき なので、すぐ試せます。配列・Split・Join・Dir・FileSyst...
Java

Java | 実務で使う switch 文のテンプレート集(例外・ログ対応つき)

「実務で使える switch 文のテンプレート集」を、例外処理やログ出力を組み込んだ形でまとめてみます。業務コードでは「ただ分岐する」だけでなく、異常系の扱いやログ記録が重要になるので、それを意識した...
Java

Java | if文・switch文の書き換えトレーニング

if文で書いた処理をswitch文に書き換える」ことで、条件分岐の理解が深まります。ここではトレーニング用の例題をいくつか用意して、if文 → switch文の変換を見ていきましょう。例題1:曜日表示...
Java

Java | 例外階層 × ロギング設計ベストプラクティス

では以下に、「例外階層 × ロギング設計ベストプラクティス」〜例外種別に応じたログレベル設計・運用テンプレート〜を、実務教材スタイル(クラス構造+設計思想+コード表+運用方針表) でまとめます。1. ...
Java

Java | 例外階層の設計テンプレート(アプリ全体で統一する例外方針)

「例外階層の設計テンプレート(アプリ全体で統一する例外方針)」は、チーム開発や長期運用の現場で必須の“例外ポリシー設計”です。ここでは、アプリ全体で共通化する例外階層図分類ルール(業務/システム/基盤...
スポンサーリンク