コード全般

カテゴリーに分けられない記事をまとめています。
コードの書き方や演算子、ワークブック間の作業について記事を用意しています。

ExcelVBA

Rangeオブジェクトを使って範囲指定した値をワークシート間で代入する|VBA

「範囲指定したセルの情報を別のワークシートに貼り付ける」という作業をVBAを使って表現してみます。コピー&ペーストを連想してしまうのですがやることは「代入」です。代入の方が処理速度も速いしコードもシンプルになります。是非お試しください。
ExcelVBA

【Rangeオブジェクト】範囲指定セルのコピー&ペースト|イコールで高速に処理

範囲指定セルのコピー&ペーストはイコールで高速に処理できます。Rangeオブジェクトを使って範囲指定されたセルの値でコピペを実行します。実際はコピペではなく値の代入ですがコピペと同じ効果を実現しつつ処理速度も速いのでこの方法を採用しました。
ExcelVBA

VBA|複数のシートをコピーしてから新規ブックとして保存する

複数のシートをコピーしてから新規ブックとして保存する方法を紹介。ポイントは3つ。1、「複数のシートを別ブックにコピーしたい」2、「コピー先のブックではコピー元の表示(印刷範囲など)を維持したい」3、「作成した別ブックを保存したい」です。
ExcelVBA

【検索】Findメソッドを使って完全一致で文字列を探す方法|VBA

VBAには文字列を探す方法がいくつかあります。本記事ではFindメソッドの使い方を紹介します。3つのポイントをもとに解説を進めます。|1_Findメソッドとは2_どんなパラメータがあるのか3_完全一致で文字列を探す方法|の3つです。
ExcelVBA

VBA|パスワード付きワークシートの保護と解除を単一プロシージャで実行する

「VBAでワークシートの保護と解除を行いたいです。」という質問をいただきました。ExcelVBAでもワークシートの保護と解除を用意する事ができます。1つのプロシージャの中で保護と解除を使い分ける事で効率よくマクロを運用する事ができますよ。
ExcelVBA

マクロで文字列の置換はVBA関数のReplace|4つの方法を比較

置換についてはどの方法を使えばよいのか分からないという質問が多いです。実際に方法は複数存在します。本記事では4つの方法を深堀し比較して1つの結論を出しました。マクロで文字列の置換はVBA関数のReplace関数1択です。
ExcelVBA

VBA|InputBoxメソッドで戻り値空白とキャンセルの処理を分ける

InputBoxメソッドでは戻り値空白の時とキャンセルボタンが押された時の処理を分ける事ができます。本記事ではInputBoxメソッドと一緒にIsNumeric関数を使ってユーザーが使いやすい操作環境を用意します。
ExcelVBA

VBAのFindメソッドは変数が難しい|文字列検索はLike演算子!

私は特定の文字列や数値の検索時にFindメソッドは使いません。戻り値であるRangeオブジェクトの扱いが難しいからです。本記事ではFindメソッドの問題点を整理したうえでより簡単なLike演算子を使ったコードを紹介します。
ExcelVBA

マクロでフォルダ内のファイル名を取得|Excel以外の拡張子にも対応

「フォルダ内のファイル名を簡単に取得出来ませんか?」という問い合わせに対する回答を用意しました。マクロなら対応可能です。Excel以外の拡張子でもファイル名を取得する事ができます。拡張子を絞りたい方にも関連記事を用意しています。
ExcelVBA

VBA|最後のシートまで処理を繰り返す|変数をうまく使いこなそう

最後のシートまで処理を繰り返す時の定番は「For Each ~ Nextステートメント」ですが初心者様には「難しい」様です。今回はFor Each ~ Nextステートメントを「使う」or「使わない」2通りの方法でシートを周回してみます。