mori– Author –
-
【Excel VBA】印刷時の改ページ位置を一定間隔で自動設定する方法
大量のデータが入力されたExcelシートを印刷すると、意図しない場所で改ページされてしまい、表の途中で切れて見づらくなってしまうことはありませんか? 手作業で一つずつ改ページを設定するのは、データ量が多いと非常に手間がかかります。 VBAを使えば... -
【Excel VBA】印刷時のヘッダー・フッターを自由自在に設定する方法
Excelで作成した帳票やレポートを印刷する際、各ページに「文書のタイトル」「日付」「ページ番号」「ファイル名」などを記載するヘッダーやフッターは欠かせません。これらの設定を手作業で行うのは手間がかかりますが、VBAを使えば定型的な設定をすべて... -
【Excel VBA】印刷を自動化する4つの基本パターン(シート・ブック・範囲指定)
定型的なレポートや資料を作成する際、毎回同じシートやセル範囲を選択して印刷するのは手間がかかります。VBAを使えば、「印刷」ボタン一つで、決まった対象を、決まった設定で印刷する処理を自動化し、作業効率を大幅に向上させることができます。 この... -
【Excel VBA】Excelのセル範囲をJSON形式に変換して出力する方法
Web APIとの連携や、最新のWebアプリケーションでデータをやり取りする際、**JSON(JavaScript Object Notation)**形式のデータが標準的に使われます。Excelで管理しているデータを、このJSON形式に変換して出力したい、というニーズは年々高まっています... -
【Excel VBA】ワークシートをテンプレートとしてHTMLレポートを自動生成する方法
VBAで複雑なHTMLレポートを作成する際、すべてのHTMLコードをVBAのコード内に文字列として記述するのは、非常に非効率でメンテナンスも困難です。 そこで今回は、HTMLの骨格を別のワークシートに「テンプレート」として記述しておき、VBAでそのテンプレー... -
【Excel VBA】Excelのセル範囲をHTMLのに変換する関数
Excelの表データを、WebページやHTMLメールで表示するための<table>タグに変換したい、というニーズは非常に多くあります。しかし、Forループで"<tr>"や"<td>"といったタグを文字列として連結していく方法は、コードが煩雑になりがちで... -
【Excel VBA】HTMLを自在に生成する「万能関数」の作り方 (Optional引数)
これまでの記事で、「特殊文字のエスケープ」「タグで囲む」「属性の追加」といった、HTML生成のための部品となる関数を個別に作成してきました。 今回はその集大成として、これらの部品をすべて内包し、引数の与え方によって様々なパターンのHTML要素を1... -
【Excel VBA】ハイパーリンク(aタグ)を動的に作成する自作関数
VBAでHTMLを生成する際、単なるテキストだけでなく、クリック可能なハイパーリンク(<a>タグ)を作成したい場面は頻繁にあります。ハイパーリンクは、<a href="リンク先URL">表示テキスト</a>のように、hrefという属性を持つのが特徴で... -
【Excel VBA】動的なタグ名でHTML要素を作成する自作関数
VBAでHTMLを生成する際、あるセルは<h1>タグで、別のセルは<p>タグで囲みたい、というように、内容に応じてHTMLタグを動的に変更したい場合があります。 この記事では、指定した文字列を、指定したタグ名で囲むシンプルな自作関数と、それを前... -
【Excel VBA】HTMLの特殊文字をエスケープ処理する最強の関数
Excelのセルに入力されたテキストをVBAでHTMLファイルに出力する際、> や <、& といった文字がセルに含まれていると、HTMLのタグと誤認されてしまい、表示が崩れる「文字化け」ならぬ「タグ化け」が起きてしまいます。 これを防ぐには、これらの... -
【Excel VBA】HTMLファイルを作成し、UTF-8で書き出す基本の方法
Excelで管理しているデータを、簡易的なWebページやHTML形式のレポートとして出力したい、という場合があります。VBAを使えば、HTMLタグを文字列として組み立て、.htmlファイルとして保存することが可能です。 この記事では、ADODB.Streamオブジェクトを利... -
【Excel VBA】Accessへのデータ登録で使うトランザクション処理 (Commit/Rollback)
ExcelからAccessへ大量のデータをインポートする際、「もし処理の途中でエラーが発生したらどうなるのか?」と考えたことはありますか?通常、エラーが起きた時点で処理は中断され、データが中途半端に登録された「壊れた」状態になってしまいます。 この... -
【Excel VBA】Accessに対しSQLコマンド(UPDATE/INSERT)を実行する方法
VBAでAccessデータベースを操作する際、一件ずつレコードを処理するのではなく、「条件に合う全てのレコードを一度に更新したい」または「新しいレコードを一件、SQLで直接追加したい」という場合があります。 このようなデータ操作には、SQL言語で記述し... -
【Excel VBA】Accessデータベースに新規レコードを追加する方法 (DAO)
Excelで日々のデータを入力・集計し、その結果をマスターデータが保管されているAccessのデータベースに登録したい、という運用は非常に一般的です。VBAを使えば、Excelから直接Accessデータベースに接続し、新しいデータ(レコード)を追加する処理を自動... -
【Excel VBA】PowerPointの図形に合わせてExcelグラフを貼り付ける方法
VBAでPowerPoint資料を自動作成する際、グラフなどを「常にスライドの決まった位置に、決まったサイズで」貼り付けたいと思うことは多いでしょう。座標を数値で指定するのは微調整が大変です。 この記事では、より直感的で高精度な方法として、PowerPoint... -
【Excel VBA】Excelの表をPowerPointに貼り付け、サイズと位置を調整する方法
Excelで作成した表をPowerPointのスライドに貼り付ける作業は、レポート作成などで頻繁に発生します。VBAを使えば、このコピー&ペーストのプロセスを自動化できるだけでなく、貼り付けた表のサイズやスライド上の位置を正確に指定することまで可能です。 ... -
【Excel VBA】PowerPointプレゼンテーションを自動作成する方法
Excelで分析したデータやグラフを使って、定期的にPowerPointで報告資料を作成する、といった作業は多くのビジネスシーンで発生します。VBAを使えば、こうしたPowerPointのプレゼンテーション作成も自動化することが可能です。 この記事では、Excel VBAか... -
【Excel VBA】Word文書の特定の場所にExcelのグラフを貼り付ける方法
定型の報告書を作成する際、「この見出しのすぐ下に、今月の売上グラフを貼り付けたい」というように、文書内の決まった位置にExcelのグラフを挿入したいケースは頻繁にあります。 VBAを使えば、あらかじめWord文書に用意しておいた**「目印(プレースホル... -
【Excel VBA】既存のWord文書の末尾にデータを追記する方法
月次レポートや業務日誌など、既存のWord文書に新しい情報をどんどん付け加えていきたい、というケースはよくあります。VBAを使えば、既存文書を開いて、現在の内容を保持したまま末尾に新しいテキストや表を追加する、といった処理を自動化できます。 こ... -
【Excel VBA】Word文書の書式を自動設定する方法(スタイル・配置)
VBAを使ってExcelからWord文書を作成する際、データをただ貼り付けるだけでなく、見出しのスタイルを適用したり、中央揃えにしたりと、体裁まで整えたいと思うことは多いでしょう。 VBAを使えば、そうしたWordの書式設定も完全に自動化できます。この記事... -
【Excel VBA】ExcelのデータをWord文書に書き出し、表として貼り付ける方法
Excelで管理しているデータを、テキストと表を組み合わせた体裁の整ったWord文書として出力したい、というニーズは非常に多いです。VBAを使えば、単にテキストを書き出すだけでなく、セル範囲をそのままWordの表として貼り付ける、といった高度な操作も自... -
【Excel VBA】Word文書を自動作成して文字を入力・保存する方法
Excelで集計したデータを元に、Wordで報告書や送付状を自動作成したい、と考えたことはありませんか? ExcelのVBAを使えば、Wordアプリケーションを裏で操作し、文書の作成から文字の入力、保存までを全自動で行うことが可能です。 この記事では、VBAでWor... -
【Excel VBA】Excelの表データをXMLツリー構造で出力する方法
Excelで管理している表形式のデータを、システム連携などで使われる階層構造のXMLファイルとして出力したい、という場面は非常に多くあります。 手作業での変換は困難ですが、VBAを使えばこのプロセスを自動化できます。この記事では、Excelのセル範囲を読... -
【Excel VBA】XMLの要素に属性(Attribute)を追加する方法
VBAでXMLを生成する際、<item>商品A</item>のような単純な要素だけでなく、<item id="A-001">商品A</item>のように、要素の開始タグ内に属性を追加して、IDや分類などのメタデータを格納したい場合があります。 この記事では、VBA... -
【Excel VBA】セル内の改行を除去してXML要素を作成する方法
Excelのセルに入力されたデータをVBAでXMLファイルに出力する際、セル内に含まれる改行コードが原因で、意図しないXMLが生成されてしまうことがあります。 この記事では、セルから取得した値の改行コードをReplace関数で除去し、クリーンなデータにしてか... -
【Excel VBA】XML宣言を持つ空のXMLファイルを作成する方法
VBAを使って外部システムと連携するためのデータを作成する際など、XMLファイルをゼロから生成したい場合があります。整形式のXMLドキュメントを作成する上での第一歩は、ファイルの先頭に「XML宣言」を記述することです。 この記事では、VBAでMSXML2.DOMD... -
【Excel VBA】文字化け知らず!UTF-8でCSVファイルを出力する方法(ADODB.Stream)
Excel VBAで作成したCSVファイルをWebシステムにアップロードしたり、異なるOSのPCで開いたりした際に、文字が「???」のように表示される**「文字化け」**に悩まされた経験はありませんか? これは、Excelが標準で出力するCSVの文字コード(Shift_JISなど... -
【Excel VBA】既存のテキストファイルにデータを追記する方法 (Appendモード)
VBAでファイルを作成する際、毎回新しいファイルとして上書きするのではなく、「既存のファイルに新しいデータをどんどん付け加えていきたい」という場合があります。典型的な例が、操作ログやデータ収集の記録です。 この記事では、VBAでファイルを**「追... -
【Excel VBA】Format関数を使い、列ごとに自由な書式でテキスト出力する方法
Excelデータをテキストファイルに出力する際、単にセルの値をそのまま書き出すだけでは不十分な場合があります。「商品IDを5桁のゼロ埋めにしたい」「日付を『令和〇年〇月〇日』の形式にしたい」「数値を3桁区切りにしたい」など、列ごとに異なるフォーマ... -
【Excel VBA】セルの書式や表示形式を維持したままCSV出力する方法(.Textプロパティ)
ExcelのデータをVBAでCSVファイルに出力する際、「日付が意図しないシリアル値になった」「"¥"マークや桁区切りカンマが消えてしまった」といった経験はありませんか? これは、VBAがセルの「中身の値(Value)」を読み取っているために起こる現象です。 こ...