DioDocs for Excel
DioDocs for Excel
xlsm ファイルのインポートとエクスポート
ファイル操作 > xlsm ファイルのインポートとエクスポート

このセクションでは、xlsm ファイル(マクロを含むファイル)のインポートおよびエクスポート方法について説明しています。

本製品は、マクロを含む xlsm ファイルの読み込み、変更、保存に対応しています。OpenFileFormat 列挙体が「Xlsm」の場合は、マクロがインポートされ、SaveFileFormat が「Xlsm」の場合は、マクロがエクスポートされます。なお、本製品ではマクロは実行できません。

xlsm ファイルをインポートおよびエクスポートする際、すべてのマクロはデータとともに保持されます。つまり、xlsm ファイルを開く際にマクロもインポートされ、保存する際にマクロもエクスポートされます。また、インポート/エクスポート時は、フォームコントロールや ActiveX コントロールも保持されます。

本製品には、xlsm ファイルのインポートおよびエクスポートの際に使用できる様々なオプションがあり、XlsmOpenOptions クラスおよび XlsmSaveOptions クラスにあるプロパティにて設定することができます。インポートおよびエクスポートのオプションの詳細については、「インポートとエクスポートのオプション」を参照してください。

注意:xlsm ファイルをインポートまたはエクスポートする際にマクロは保持しますが、マクロを実行することはありません。

xlsm ファイルをインポートしエクスポートする方法については、次のサンプルコードを参照してください。

C#
コードのコピー
// ファイル名を指定して xlsm ファイルを開きます
var workbook = new Workbook();
workbook.Open("testfile.xlsm");

// xlsm ファイルとして保存します
var workbook = new Workbook();
workbook.Save("file.xlsm");

// xlsm ファイルとしてストリームに保存します
var workbook = new Workbook();
var request = WebRequest.CreateHttp("https://path/to/excel/file/upload");
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
var workbookContent = new MemoryStream();
workbook.Save(workbookContent, SaveFileFormat.Xlsm);
workbookContent.Seek(0, SeekOrigin.Begin);
request.ContentLength = workbookContent.Length;
using (var reqStream = request.GetRequestStream())
{
    workbookContent.CopyTo(reqStream);
}