DOCM ファイル形式とは?
.docm ファイルは、Microsoft Office 2007 で導入された Microsoft Word によって作成されるマクロ有効文書です。.docm 形式は .docx 形式と密接に関連していますが、主な違いは、文書内の反復的なタスクを自動化する埋め込み VBA マクロを保存している点です。通常の .docx はマクロを保持できないため、Word はマクロを含む文書を自動的に .docm として保存します。
.docx と同様に、.docm ファイルは圧縮された ZIP アーカイブ ベースの Open XML パッケージであり、書式設定されたテキスト、画像、図形、グラフなどを含めることができます。内部的には、パッケージには VBA プロジェクトを保持するバイナリ部分の word/vbaProject.bin と、コンテンツやスタイル用の標準的な XML 部分が含まれています。
.docm ファイルを開いて編集できるアプリケーションには、Microsoft Word、LibreOffice Writer、WPS Office Writer などがあります。Google Docs や Word for the web でも .docm ファイルを開くことができますが、VBA マクロを完全に実行することはできません。
セキュリティと安全性
リスク: HIGHDOCM は、コードを実行する VBA マクロを保持できるため、最も注意が必要な形式の一つです。マクロ有効の Word/Excel 文書は、古くからマルウェア(Emotet や、請求書・履歴書を装ったダウンローダーなど)の配信手法として使われてきました。攻撃は、ユーザーを誘導して «コンテンツの有効化» や «マクロを有効にする» をクリックさせ、マクロにマルウェアをダウンロード・実行させるというソーシャルエンジニアリングの手法をとります。防御策:(1) 2022年以降、Microsoft はインターネットから取得した Office ファイル(Mark of the Web)のマクロをデフォルトでブロックしています。予期しないファイルに対してこの警告を無視しないでください。(2) 依頼した覚えのない .docm ファイルのマクロは絶対に有効にしないでください。特に、プレーンテキストであるべき文書がマクロ有効形式で届いた場合は注意が必要です。(3) 不審な内容を安全に読むには、Word VBA が実行されない Google Docs、Word for the web、LibreOffice で開くか、.docx として保存してマクロを除去してください。(4) ウイルス対策ソフトと Office を最新の状態に保ってください。
形式の詳細
概要DOCM ファイルを開くプログラム
技術的詳細
詳細仕様| MIME タイプ | application/vnd.ms-word.document.macroEnabled.12 |
| マジックバイト | 50 4B 03 04 ("PK" - ZIP ローカルファイルヘッダー、.docx と同一) |
| コンテナ形式 | ZIP アーカイブ (Office Open XML パッケージ) |
| 圧縮 | DEFLATE、ZIP コンテナ内のエントリごとに適用 |
| メイン文書パーツ | word/document.xml - 文書本体を保持する UTF-8 WordprocessingML XML |
| マクロストレージ | word/vbaProject.bin - VBA マクロプロジェクトを保持するバイナリ OLE2/CFBF コンテナ (MS-OVBA 形式) |
| コンテンツタイプ宣言 | [Content_Types].xml が macroEnabled.12 コンテンツタイプを宣言し、.docm を .docx と区別する |
| 暗号化 | AES (ECMA-376 Agile Encryption) によるオプションのパスワード暗号化。パッケージを OLE2/CFBF エンベロープでラップする |
| 一般的なファイルサイズ | 20 KB - 10 MB。テキストのみのファイルは小さく、埋め込み画像やメディアがサイズの大半を占める |
| バイト順序 | ZIP フィールドおよび OLE2 VBA ストレージにおいてリトルエンディアン |
| 整合性チェック | ZIP エントリごとの CRC-32。VBA プロジェクトおよび文書パッケージ用のオプションのデジタル署名 |
| サポートされているプラットフォーム | Windows, macOS, Linux (LibreOffice), ウェブ (ほとんどのブラウザで閲覧のみ) |
| .docx との関係 | 構造的には .docx と同一。違いはコンテンツタイプ宣言と追加された word/vbaProject.bin パーツ |
| VBA エンジン | Microsoft Visual Basic for Applications (VBA)。マクロ有効の Excel (.xlsm) や PowerPoint (.pptm) ファイルと同じエンジンを使用 |
| 最大アーカイブエントリ数 | ZIP の制限である 65,535 エントリ(実際にはほとんど達することはない) |
| エンコーディング | 混合:ZIP コンテナ内の UTF-8 XML テキストパーツとバイナリ OLE2 (vbaProject.bin) |
| リリース日 | 2007 (Word 2007 / Office Open XML) |
| 最新バージョン | OOXML transitional/strict per ISO/IEC 29500; current Microsoft 365 build of the schema |
| オープンスタンダード | はい · ロイヤリティフリー |
| 仕様書 | learn.microsoft.com |
DOCM の変換
コミュニティ Q&A
ユーザーからの質問まだ質問はありません。DOCM ファイルについて最初の質問をしてみましょう。