ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
エラーメッセージ
Microsoft Excel
次の機能はマクロなしのブックに保存できません:
・VB プロジェクト
これらの機能を含むファイルを保存するには、[いいえ] をクリックして
Excel マクロ有効ファイル形式を選択してください。
[はい] [いいえ] [ヘルプ]
このメッセージは Excel が「ブックに VBA / マクロが含まれているのに、それを保持できないファイル形式で保存しようとしている」と警告するものです。
.xlsx と .xlsm の違い
| 拡張子 | 名称 | マクロ保持 | 用途 |
|---|---|---|---|
| .xlsx | Excel ブック | 不可 | マクロなし共有用 |
| .xlsm | Excel マクロ有効ブック | 可能 | マクロあり業務ファイル |
| .xlsb | Excel バイナリブック | 可能 | 大量データ・高速読込 |
| .xls | Excel 97-2003 形式 | 可能(古い) | 互換性用 |
| .xltm | マクロ有効テンプレ | 可能 | テンプレ配布 |
| .xlam | アドイン | 可能 | 機能拡張配布 |
対処1: マクロ有効ブック (.xlsm) として保存(推奨)
- 「いいえ」をクリックして警告ダイアログを閉じる
- ファイル → 名前を付けて保存
- ファイルの種類のドロップダウンから 「Excel マクロ有効ブック (*.xlsm)」 を選択
- ファイル名は同じで OK(拡張子のみ
.xlsmに) - 「保存」
対処2: マクロを削除して .xlsx 保存
マクロが不要な場合(特に他者から受け取ったファイルで、マクロを使わない場合)は VBA を削除します。
1. Alt + F11 で VBA エディタを開く
2. 左ペインのプロジェクトツリーを展開
- VBAProject (Book1.xlsx)
- Microsoft Excel Objects
- Sheet1, Sheet2, ...
- ThisWorkbook
- 標準モジュール
- Module1, Module2, ...
3. 各モジュールを右クリック → 「Module1 の解放」
4. 「エクスポートしますか?」→「いいえ」
5. Sheet/ThisWorkbook のコードもすべて削除(コードペインで全選択 → Delete)
6. Excel に戻る → 上書き保存
原因: 何がマクロ扱いされるか
VBA だけでなく、以下も警告の対象になります:
- 標準モジュール / クラスモジュール / フォーム
- シート / ThisWorkbook のイベントプロシージャ(
Worksheet_Change等) - ActiveX コントロール(フォームのコマンドボタンなど)
- 古い Excel 4.0 マクロシート(XLM)
- 名前定義のうち
=EVALUATE()等を使った関数マクロ
マクロが混入したかの確認方法
方法1: VBA エディタ
Alt + F11 → プロジェクトツリーで Module/Class が存在するか
方法2: 開発タブ
ファイル → オプション → リボンのユーザー設定
→ 右側で「開発」にチェック → OK
→ 開発タブ → Visual Basic / マクロ で確認
方法3: ファイル名から推測
*_master.xlsm / *_業務.xlsm 等のリネーム履歴を確認
方法4: アンチウイルスログ
業務 PC で .xlsm がブロックされた履歴を確認
対処3: CSV / .xlsb で保存(用途別)
| 用途 | 推奨形式 |
|---|---|
| マクロを残して保存 | .xlsm |
| マクロ不要・互換性重視 | .xlsx |
| 大量データ(10 万行超) | .xlsb(バイナリ・高速) |
| システム間連携 | .csv(UTF-8 BOM 付き) |
| レガシー Excel と共有 | .xls(Excel 97-2003) |
マクロを使わない代替手段
企業 IT 部門の方針で .xlsm が禁止されているケースは多いです。代替を検討:
Power Query
データの取り込み・加工・更新は Power Query で組めば .xlsx のままマクロ不要です。
- データタブ → データの取得 → ファイル / DB / Web から
- クエリエディタで整形(フィルタ / 結合 / 集計)
- 「閉じて読み込む」でシートに反映
- 「すべて更新」でデータ再取得
Power Automate
ファイル操作・メール送信・他システム連携は Microsoft Power Automate で実装。
Office Scripts(Excel for the web / 365)
// Office Scripts は TypeScript ベース・クラウド保存
function main(workbook: ExcelScript.Workbook) {
const sheet = workbook.getActiveWorksheet();
const range = sheet.getRange("A1:A100");
range.setValues(/* ... */);
}
Office Scripts は VBA とほぼ同等のシート操作を、クラウド保存・組織内ガバナンス下で実行できます。
企業 IT ポリシーでの .xlsm 制限
| 制限 | 背景 | 回避 |
|---|---|---|
| .xlsm をメール添付禁止 | マクロ感染のリスク | SharePoint / Teams 共有 |
| マクロ自動実行を完全ブロック | Emotet 等のマクロウイルス対策 | 署名付きマクロ / 信頼できる場所 |
| 外部受領ファイルは保護ビュー | 不審マクロ実行防止 | 編集を有効にする時要注意 |
| SaaS 連携で .xlsm 不可 | API 標準形式が .xlsx | Power Query / API 経由に変更 |
署名付きマクロ(証明書)
業務利用で .xlsm を承認するには、デジタル署名を付けて配布元を保証する方法があります。
1. VBA エディタ → ツール → デジタル署名
2. 社内 PKI が発行したコード署名証明書を選択
3. 署名 → ファイル保存
4. 受領側は「信頼できる発行元」リストに発行者を追加
5. → マクロ警告なしで実行可能
FAQ
Q: 「はい」をクリックしたらマクロが消えた
A: 警告で「はい」= .xlsx のままマクロ削除して保存、です。元ファイルから復元できなければ復旧不能。常に「いいえ」を選んで .xlsm にしましょう。
Q: .xlsm にしても他のメンバーがマクロ警告を解除できない
A: Excel オプション → トラスト センター → マクロの設定で「警告を表示してすべてのマクロを無効にする」が標準。「信頼できる場所」にファイル保存フォルダを追加すると警告なしになります。
Q: マクロのコードを残したいが、共有時はマクロ無効にしたい
A: ThisWorkbook の Workbook_Open イベントで Application.EnableEvents = False 等の対策、もしくは「信頼できる場所」外では自動実行されないので通常運用で OK。
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページはありません
同階層のページはありません
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript base URL 取得方法|window.location.origin と SSR/Node.js 対応
- 4 YouTube Data API v3 エラー一覧|403/400/404 の主要原因と切り分け
- 5 Spring Frameworkのアノテーション一覧
- 6 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- IPv6とは|128bitアドレス・コロン16進表記/::省略・リンクローカル・SLAAC・デュアルスタック NEW 2026-06-22 12:34:44
- MAC アドレスフィルタリングの仕組みと限界 | ネットワーク入門 NEW 2026-06-22 12:19:10
- VPNとは|暗号トンネル・サイト間/リモートアクセス・IPsec/SSL-VPN/WireGuardを解説 NEW 2026-06-22 12:19:10
- WebRTC とは ブラウザ間 P2P の音声・映像・データ通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/2 とは 多重化・HPACK・バイナリフレーム | ネットワーク入門 NEW 2026-06-22 12:17:25
- Web通信プロトコル入門 HTTP/2・HTTP/3・WebSocket・gRPC・WebRTC | ネットワーク入門 NEW 2026-06-22 12:17:25
- gRPC とは HTTP/2 + Protocol Buffers の高速 RPC | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/3 (QUIC) とは UDP ベースの低遅延 Web 通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- WebSocket とは 全二重リアルタイム通信 ws/wss | ネットワーク入門 NEW 2026-06-22 12:17:25
- 証明書と認証局(CA)とは|X.509・信頼チェーン・DV/OV/EV・失効(CRL/OCSP)を解説 NEW 2026-06-22 12:17:24
- ファイアウォールとは|パケットフィルタ・ステートフル・DMZ・次世代FW(L4/L7)を解説 NEW 2026-06-22 12:17:24
- iptables/nftablesとは|テーブル・チェーン・ルール例・永続化をLinux視点で解説 NEW 2026-06-22 12:17:24
- HAProxy とは frontend/backend と設定例 | ネットワーク入門 NEW 2026-06-22 12:17:24
- CDN とは エッジキャッシュ・TTL・Cloudflare/CloudFront | ネットワーク入門 NEW 2026-06-22 12:17:24
- TLS/SSLの仕組み|ハンドシェイク・暗号スイート・前方秘匿性・証明書検証をわかりやすく解説 NEW 2026-06-22 12:17:24
コメントを削除してもよろしいでしょうか?