Word 2016 からメールを送信すると文字化けする

Last Update:
(※ 2018 年 6 月 11 日に Japan Office Developer Support Blog に公開した情報のアーカイブです。) こんにちは、Office 開発サポート チームの中村です。 今回の記事では、Word 2016 からテキスト形式のメールを送信するときの以下の動作について記載します。1. は Word 2016 での意図した仕様変更による動作です。2. は、Word 2016 製品の不具合によって生じます。 メール タイトルや本文などが UTF-8 で送信される 差し込み印刷でタイトルは ANSI(SJIS) / 本文は UTF-8 で送信される Word 2016 からのテキスト形式のメールの送信では、Simple MAPIを使用しています。以下に記載する動作変更への対応として、Simple MAPI API が拡張され、従来 ANSI 用であ...

Read More

(オートメーション - VSTO) .NET での Office ソリューション開発時の開発環境のバージョン選定 (最新版)

Last Update:
(※ 2017 年 2 月 7 日に Japan Office Developer Support Blog に公開した情報のアーカイブです。) こんにちは、Office 開発 サポート チームの中村です。 今回は、C# や VB.NET を使って .NET Framework 上で動作する Office をオートメーションするプログラムや、VSTO でOffice ソリューション (アドインや、プログラムが組み込まれた Office ファイル) を作成するときに必要な環境構成について記載します。 過去の投稿で、当時の製品でのバージョン選定について記載していましたが、古い情報になってしまいましたので、本記事では、現在サポートされる製品バージョンについての最新情報を記載したいと思います。動作の仕組みの説明などは、過去の投稿で詳しく説明していますのでぜひ合わせてご参照ください。 2017&#x...

Read More

1. Office PIA 経由で Office 製品をオートメーションすることによる、Office オブジェクトモデルの操作

Last Update:
(※ 2012 年 2 月 15 日に Japan Office Developer Support Blog に公開した情報のアーカイブです。) こんにちは、Office 開発系サポートの柴田 茂 (sshibata) です。 本稿で表現している、Office オートメーションとは、Windows 上の全く別のアプリケーションを使用して、Office によって通常は手動やマクロによって行われる処理を、自動化する仕組みとなります。例えば、Excel のオートメーションを使用すれば、新規ブックの作成、ブックへのデータ入力、グラフの作成などの作業を自動的に実行させることができます。Excel などの Microsoft Office アプリケーションでは、通常はユーザー インターフェイスを介して手動で実行する機能のほぼすべてを、オートメーションによってプログラムから実行することができます。 M...

Read More

Microsoft Office 製品を Windows のプラットフォーム上で別アプリケーションから操作する場合のテクノロジについて

Last Update:
(※ 2012 年 2 月 15 日に Japan Office Developer Support Blog に公開した情報のアーカイブです。) こんにちは、Office 開発系サポートの柴田 茂 (sshibata) です。私の投稿では、Microsoft Office 製品を、Windows のプラットフォーム上で別アプリケーションから操作する場合にどんなテクノロジを検討すべきかというテーマについて記載致します。 .NET Framework が登場するはるか前の時代から、Windows 上で動作するOffice アプリケーションに介入してアプリケーションソフト間でデータを転送・共有するための仕組みは存在していました。それが、OLE と呼ばれる規格(Object Linking and Embedding) であったり、DDE というテクノロジであったり(Dynamic Data E...

Read More

Office オートメーションで割り当てたオブジェクトを解放する - Part2

Last Update:
(※ 2012 年 2 月 28 日に Japan Office Developer Support Blog に公開した情報のアーカイブです。)   こんにちは、Office 開発系サポート 森 健吾 (kenmori) です。 今回の投稿では、Office オートメーションの実装コードで割り当てたオブジェクトを解放する – Part1 の続編を記載いたします。続編では、前回の投稿でベスト プラクティスとして紹介した解放処理に対して解説を実施した後、正しくオブジェクト解放を実施しない場合に生じる影響についてご紹介します。 最初に、オブジェクト解放漏れがあると、主に以下のような事象があるということは先に述べておきます。 ・意図とは異なる COM オブジェクトに接続され、想定とは異なる結果を返し、アプリケーションの動作に予期せぬ影響を与えます。・通常のメソッド実行にも関わらず COMEx...

Read More

Office オートメーションで割り当てたオブジェクトを解放する – Part1

Last Update:
(※ 2012 年 2 月 9 日に Japan Office Developer Support Blog に公開した情報のアーカイブです。) こんにちは、Office 開発系サポート 森 健吾 (kenmori) です。 今回の投稿では、Office オートメーションの実装コードで割り当てたオブジェクトを解放するというテーマにて記載いたします。.NET Framework 上で動作するカスタム アプリケーションにおいて、Office オートメーションで処理を実装する場合には割り当てたオブジェクトを確実に解放することをお勧めします。 2016/12/2 Updateサンプル コードを中間オブジェクトも解放するよう、より適切な形に変更しました。 2017/3/28 Updateアプリケーション終了前に一部のオブジェクトを解放するよう、サンプル コード...

Read More

Office サーバー サイド オートメーションの代替案について

Last Update:
(※ 2014年 5 月 7 日に Japan SharePoint Support Team Blog に公開した情報のアーカイブです。) こんにちは、SharePoint サポートの 森 健吾 (kenmori) です。 今回の投稿では、Office 開発サポートを担当していた時期に記載した下記投稿 Office サーバーサイド オートメーションの危険性の続編として、その代替案を記載いたします。 タイトル : Office サーバー サイド オートメーションの危険性についてアドレス: https://officesupportjp.github.io/blog/Office サーバー サイド オートメーションの危険性について/ 上記投稿のおさらいとなりますが、例えば以下のような機能を Web サーバー上で Office API を使用したオートメーションで実装することはサポートされ...

Read More

Office サーバー サイド オートメーションの危険性について

Last Update:
(※ 2014 年 4 月 11 日に Japan Office Developer Support Blog に公開した情報のアーカイブです。) こんにちは、Office 開発系サポート 森 健吾 (kenmori) です。 今回の投稿では、Office サーバー サイド オートメーション (非対話型オートメーション) に対する正しい理解を持っていただくことを目的として記載いたします。 はじめに 結論からお伝えしますと Office のサーバー サイド オートメーション (非対話型オートメーション) を、マイクロソフトはサポートしておりません。 前提として、サーバーにインストールされた Office クライアント アプリケーションを使用したオートメーションを実施して、クライアント側の処理をサーバー側で集中して代行するなどの機能をライセンスを持たないエンドユーザーに提供した場合は、Micr...

Read More

Officeソリューション開発時の開発環境のバージョン選定について

Last Update:
(※ 2012 年 5 月 23 日に Japan Office Developer Support Blog に公開した情報のアーカイブです。) こんにちは Office 開発系サポートの森 健吾 (kenmori) です。 今回の投稿では .NET Framework 上で動作する Office ソリューションを開発する際に、検討すべき開発環境のバージョン選定のために必要となる情報について記載いたします。 以下の内容でご説明させていただきます。 2017/2 Update 新しい Visual Studio と Office バージョンについての記事を以下に投稿しました。 タイトル : [オートメーション / VSTO] .NET での Office ソリューション開発時の開発環境のバージョン選定 (最新版)アドレス : https://officesupportj...

Read More

Excel ユーザー定義関数に機能説明や独自ヘルプをリンクする方法

Last Update:
(※ 2017 年 11 月 21 日に Japan Office Developer Support Blog に公開した情報のアーカイブです。) こんにちは、Office 開発サポート チームの中村です。 Excel には、セルに設定する式として、SUM() のように計算に関するものや、IF() のように論理条件を制御するものなど、様々なワークシート関数が用意されています。既存のワークシート関数で要望を満たすものがない場合、マクロで実装した独自処理を、ユーザー定義関数として登録することができます。 このブログを訪れる方の多くは、ユーザー定義関数を登録すること自体はご存知の方が多いかと思いますが、このようなユーザー定義関数を作成するときにその関数に機能説明やヘルプを追加する方法について、公開情報からは分かりづらい点もありますので、本記事で紹介したいと思います。 1. ユーザー定義関数の作...

Read More