記事一覧
帳票・メール連携入力チェックを一括で行い、エラーのセルに色を付ける申請書や登録用シートの必須項目・数値・日付・桁数をマクロでまとめてチェックし、エラーのセルを色付けしてコメントで理由を示す方法です。提出前の差し戻しを減らせます。帳票・メール連携複数シートの印刷設定を一括でそろえる(用紙・向き・1ページに収める)シートごとにばらばらの印刷設定を、マクロで一括してそろえる方法です。用紙サイズ・向き・余白・1ページに収める設定・ヘッダーとフッターをまとめて設定します。エラー対処実行時エラー9「インデックスが有効範囲にありません」の原因と直し方VBA で最もよく見るエラーの1つ、実行時エラー 9 の主な原因(シート名の違い、ブックが開いていない、配列の範囲外)と、原因を特定する手順、再発を防ぐ書き方を解説します。エラー対処実行時エラー1004 が出たときの原因と対処(アプリケーション定義またはオブジェクト定義のエラー)原因が多岐にわたる実行時エラー 1004 について、よくあるパターン(存在しないセル範囲、保護されたシート、別シートのセル参照、ファイル名の問題)ごとに原因と直し方を整理します。エラー対処実行時エラー13「型が一致しません」の原因と直し方数値を期待した場所に文字列や空白、エラー値(#N/A など)が入っていると出る実行時エラー 13 について、よくある原因と、値を確認してから計算する書き方を解説します。エラー対処On Error の正しい使い方(止まっても安全に終わるエラー処理の型)On Error Resume Next の乱用で起きる問題と、On Error GoTo を使ったエラー処理の基本の型を解説します。画面更新や計算方法を元に戻し、エラーの内容を記録する書き方です。業種別サンプル【食品製造】在庫ロットの賞味期限が近いものを一覧にして色分けする食品工場や倉庫の在庫一覧から、賞味期限までの残り日数を計算し、期限切れ・7日以内・30日以内の3段階で色分けして別シートに一覧化するマクロです。業種別サンプル【保険】契約一覧から更新月が近い顧客を抽出して案内リストを作る保険の契約一覧から、指定した月に満期・更新を迎える契約を抽出し、担当者別に案内リストを作るマクロです。担当者ごとのシート分割と件数集計までを行います。業種別サンプル【人材】勤怠データから月ごとの残業時間を集計し、上限に近い人を知らせる派遣スタッフや社員の日別の勤怠データから、1人ずつ月の残業時間を合計し、上限時間に近い人を色付けして知らせるマクロです。時刻の計算で間違えやすい点も解説します。業種別サンプル【不動産】物件台帳から空室一覧と空室期間を出し、長期空室を目立たせる賃貸物件の部屋ごとの台帳から、現在空室の部屋を抜き出し、空室になってからの日数を計算して、長期空室の部屋を目立たせた一覧を作るマクロです。業種別サンプル【銀行・経理】入金明細と請求データを照合して消込候補を作る銀行からダウンロードした入金明細と、請求データ(売掛金の一覧)を金額と振込名義で照合し、消込できそうな組み合わせと、確認が必要な入金を分けて一覧にするマクロです。ファイル・CSVCSV を文字化けさせずに読み込む(UTF-8 と Shift_JIS の扱い)CSV を Excel で開くと文字化けしたり、先頭の0が消えたりする問題を避けて、文字コードを指定して読み込むマクロです。ADODB.Stream を使った方法を解説します。ファイル・CSVシートの内容を UTF-8 の CSV で出力する(BOM の有無を選ぶ)シートのデータを UTF-8 の CSV ファイルとして書き出すマクロです。取り込み先のシステムに合わせて BOM あり・なしを選べるようにし、カンマを含む値の囲み方も解説します。ファイル・CSVファイルの存在確認とフォルダの作成(FileSystemObject の基本)出力先フォルダがなければ作る、同じ名前のファイルがあれば連番を付ける、といったファイル操作の基本を FileSystemObject で解説します。上書き事故を防ぐ書き方です。帳票・メール連携請求書をテンプレートから一括作成して PDF で保存する請求データの一覧から、請求書のテンプレートシートに1社ずつ値を差し込み、取引先ごとの PDF を一括で作るマクロです。ファイル名の付け方や確認の仕組みも解説します。帳票・メール連携Outlook でメールを一括作成・送信する(添付ファイル付き)宛先一覧から Outlook のメールを1件ずつ作成し、添付ファイルを付けて送信するマクロです。いきなり送信せず下書きで確認する方法や、誤送信を防ぐ工夫も解説します。データ集計・抽出条件に合う行だけを別シートに抽出する(オートフィルターの使い方)オートフィルターで条件に合う行を絞り込み、見えている行だけを別シートにコピーする方法です。複数条件、日付の範囲、該当なしのときの扱いまで解説します。データ集計・抽出VLOOKUP を使わずに大量データを高速に突合する(Dictionary で照合)2つの表をコードで照合して、片方にしかないデータや金額の違うデータを洗い出すマクロです。VLOOKUP を数万行に入れて重くなる問題を Dictionary で解決します。データ集計・抽出明細から月別×項目別の集計表を作る(ピボットテーブルを使わない方法)売上明細から「月×商品分類」のクロス集計表を、配列と Dictionary だけで作るマクロです。ピボットテーブルの更新忘れやレイアウト崩れを避けたいときに使えます。ファイル・CSVフォルダ内の Excel ファイルを一括で開いて1つにまとめる(Dir 関数)指定したフォルダにある複数の Excel ファイルを順番に開き、決まったシートのデータを1つのシートに集約するマクロです。開いたファイルを閉じ忘れない書き方も解説します。基本・高速化日付の扱い方(文字列の日付の変換・月末日・締め日の計算)CSV から取り込んだ文字列の日付を日付型に変換する方法、DateSerial を使った月末日や締め日の計算、和暦の表示など、日付で間違えやすい点をまとめます。データ集計・抽出複数シートのデータを1枚のシートに集約する支店別・月別など同じ形式の複数シートを、1枚の集計用シートにまとめるマクロです。見出しの扱い、元シート名の記録、集計シートの作り直しまで解説します。データ集計・抽出重複を除いた一覧を作り、件数を数える(Dictionary の使い方)取引先や商品コードの重複を除いた一覧と、それぞれの件数・合計金額を Dictionary で作る方法です。重複の削除機能との違いや、遅くならない書き方も解説します。基本・高速化最終行を正しく取得する方法(End(xlUp)・UsedRange・CurrentRegion の違い)データの最終行を取得する代表的な3つの方法と、空白行や書式だけ残ったセルで結果がずれる原因、実務で安全な書き方を解説します。基本・高速化マクロを速くする基本(画面更新の停止・計算の手動化・配列での一括処理)セルを1つずつ読み書きする遅いマクロを、画面更新の停止・計算方法の切り替え・配列での一括処理で速くする方法を、元に戻し忘れを防ぐ書き方とあわせて解説します。