ExcelVBA

ExcelVBA

〖ExcelVBA・マクロ〗処理を一時停止する方法まとめ|Application.Wait と DoEvents の違いと正しい使い分け

ExcelVBAでマクロを書いていると、次のような場面に出くわすことがあります。処理の途中で「少し待ちたい」画面を更新させながら処理を続けたい「固まったように見える」状態を回避したいそんなときに登場するのが Application.Wait...
ExcelVBA

〖ExcelVBA・マクロ〗エラーが出た際に安全に処理する方法|On Errorの実践テンプレ集(初心者向け)

VBAを書いていると、どうしても避けられないのが「エラーで止まる」問題です。途中でエラーが出て処理が止まる画面更新OFFのまま固まったように見えるイベントOFFのまま別マクロが動かなくなる原因が分からず、結局「動かないマクロ」になるそこで重...
ExcelVBA

〖ExcelVBA・マクロ〗MsgBoxを自動で閉じる方法|一定時間で自動Dismissする通知の作り方

ExcelVBAでメッセージを出すとき、通常は次のように書きます。しかしこの標準のMsgBoxはユーザーがボタンを押すまで処理が止まるため、次のようなニーズが出てきます。一定時間だけメッセージを表示して自動で閉じたいポップアップ案内をユーザ...
ExcelVBA

〖ExcelVBA・マクロ〗実行時エラー9「インデックスが有効範囲にありません」の原因と対処法まとめ

ExcelVBAでマクロを実行したとき、次のエラーが出て止まったことはありませんか?実行時エラー '9'インデックスが有効範囲にありませんこのエラーは、VBA初心者が必ずと言っていいほど遭遇する代表的なエラーです。しかも原因が1つではないた...
ExcelVBA

〖ExcelVBA・マクロ〗「配列の引数で型が一致しません」の原因と対処法まとめ|ByRef/Variant/1次元2次元の落とし穴

VBAで配列を使っていると、よく出るのがこのエラーです。「型が一致しません」「ByRef 引数の型が一致しません」(配列を渡したときに)「型が一致しません」特に多いのは「配列を引数として渡した瞬間」に発生するパターンです。この記事では、原因...
ExcelVBA

〖ExcelVBA〗InStrで「見つからない(0)」原因と対処法まとめ|大文字小文字・空白・改行・見えない文字

「VBA InStr 見つからない」で検索してここに来た方の多くは、本当は文字が含まれているはずなのに、InStrが0を返す状態に困っているはずです。まず結論から言うと、InStrは見つからない場合は0を返します。つまり、コードが間違ってい...
ExcelVBA

〖ExcelVBA〗一定時間操作がなければ自動保存するマクロ|Excelを開いたまま放置しても安心

Excelを開いたまま作業していると、こんな不安がありませんか?作業途中で席を外した「保存しなきゃ」と思いながら忘れたPCのトラブルやフリーズが怖いそこで今回は、Excelを開いたまま一定時間操作がなければ自動保存するマクロを紹介します。「...
ExcelVBA

〖ExcelVBA・マクロ〗Excelを閉じるときに強制保存するマクロ|保存忘れをゼロにする方法

Excelでよくあるトラブルの1つが、保存忘れです。編集したのに保存せず閉じてしまった閉じる確認で「保存しない」を押してしまった共有ファイルで、最後の編集が保存されていなかったこうした事故を防ぐ一番確実な方法は、閉じるときに自動で保存してし...
ExcelVBA

〖ExcelVBA・マクロ〗Excelを閉じるとき「未保存なら警告」する強制確認マクロ|保存忘れ事故を防ぐ

Excelで作業していて、次のような経験はありませんか?編集したのに保存せず閉じてしまった閉じた後に「保存しておけばよかった…」となった複数人で使うファイルで、保存忘れがよく起きるExcelは閉じるときに「保存しますか?」の確認が出ますが、...
ExcelVBA

〖ExcelVBA〗セルの表示形式を一括で「標準」に戻すマクロ|数値・日付の崩れをリセット

Excelを使っていて、次のような状態に困ったことはありませんか?数値なのに左寄せになっている日付が文字列扱いになって計算できないCSVを貼り付けたら表示形式がバラバラどこかに「文字列」や「ユーザー定義」が残っているこういうとき、原因はほと...