Applies ToExcel for Microsoft 365

Excel の Python は、バージョン 2407 (ビルド 17830.20128) 以降、および Windows 上の月次エンタープライズ チャネル (バージョン 2408 (ビルド 17928.20216) 以降で、Windows で現在のチャネルを実行している Enterprise ユーザーと Business ユーザーが使用できるようになりました。バージョン 2405 (ビルド 17628.20164) 以降の Windows で現在のチャネルを実行しているファミリー ユーザーと個人ユーザーはプレビュー段階で利用できます。 Excel の Python は、 Microsoft 365 Insider Program を通じて現在のチャネル (プレビュー) を実行している Education ユーザー向けにプレビューで利用できます。 現在、Semi-Annual エンタープライズ チャネルでは使用できません。

最初に Excel for Windows に展開し、後で他のプラットフォームにロールアウトします。 可用性の詳細については、「 Excel の Python の可用性」を参照してください。

Python in Excel で問題が発生した場合は、Excel で [ヘルプ][フィードバック] の順に選択し、問題を報告してください。

Python in Excel を初めて使用する場合は、 「 Excel での Python の概要 」と「Excel での Python の概要」から始めます。

Python は Microsoft Cloud で実行されます 

Excel の Python は、Microsoft Cloud 上のセキュリティで保護されたコンテナーで Excel によって使用される Python コードを実行し、エンタープライズ レベルのセキュリティを準拠した Microsoft 365 接続エクスペリエンスとして使用します。 OneDrive に保存されているドキュメントで他のユーザーと作業したり、Excel でデータの分析機能を使用したりすることも、Microsoft 365 接続エクスペリエンスに準拠している他の例です。 

Excel の Python は、次の属性を持つ Microsoft Cloud で実行されます。

  • Python コードは、Azure Container Instances上に構築されたハイパーバイザー分離コンテナーで実行されます。

  • コンテナーには、Python と Anaconda によって提供されるセキュリティで保護されたライブラリのキュレーション セットがあります。

  • この環境では、Anaconda から直接提供されるソースビルドの Python とライブラリを含む、Anaconda Distribution for Python を使用します。

  • Python コードは、コンピューター、デバイス、またはアカウントにアクセスできません。

  • Python コードにネットワーク アクセス権がありません。

  • Python コードには、ユーザー トークンへのアクセス権がありません。

  • Python コードは、Python 数式の一部として組み込みの xl() 関数を使用して、参照を介してデータにアクセスできます。 つまり、Python 数式では、ブック内のセル値を、セル参照に基づいて読み取ったり、外部データ ソースの値をPower Query接続名で読み取ったりできます。

  • Python コードは、関数が入力されたセルの Python コードの結果を表示する =PY() Excel 関数を介してブックに出力を返します。 Python 関数は、マクロ、VBA コード、その他の数式などの他のオブジェクト型を返すことはできません。

  • Python コードは、数式、グラフ、ピボットテーブル、マクロ、VBA コードなど、ブック内の他のプロパティにアクセスできません。

  • ブックが開いている限り、またはタイムアウトが発生するまで、コンテナーはオンラインのままです。

  • データは Microsoft Cloud に保持されません。

よく寄せられる質問

Excel の Python は、インターネットまたは信頼されていないソースからブックを開く場合、Excel と同じセキュリティ ポリシーに従います。 

インターネットから Python コードを含むブックを開いた場合、Excel 保護ビューはブックで Python 数式を実行しません。 ブックがMicrosoft Defender Application Guardで開かれている場合、Python 数式は既定では実行されません。

さらに、Excel の Python では、信頼されていないブック内の Python 数式を独自の専用ハイパーバイザー分離コンテナー内で実行し、開いている他のブックから実行されている他の Python コードとの潜在的な相互作用や干渉を防ぎます。 

Excel の Python では、コンテナーを使用して Azure で Python コードを実行します。 コンテナーは、システムの残りの部分に影響を与えずにアプリケーションとサービスを実行できる、分離されたセキュリティで保護された環境です。 コンテナーのセキュリティと信頼性を確保するために、定期的な更新プログラムとパッチが適用されます。

Python とライブラリは、データのセキュリティと数値の結果の一貫性を維持するために、次の方法で更新されます。

  • パッチは、Azure Container Instance が実行されている基になるオペレーティング システムに適用されます。 これにより、コンテナーがデータに影響を与える可能性のある脆弱性や悪用から保護されます。 これは自動的に行われ、入力は不要です。

Python 環境の定期的な更新は、Python と Anaconda によって提供されるライブラリを使用してリリースされます。 これらのバージョンには、Python および Anaconda コミュニティからの最新のセキュリティ修正と機能強化が含まれています。 これらのリリースは、ブログの投稿とドキュメントを通じて発表されます。 これはセットアップ不要で自動的に実行され、Microsoft は既定で最新の環境に設定されます。 既存のブックは、ブックが作成された環境のバージョンに対して引き続き計算され、新しいバージョンがある場合はアップグレードするように求められます。 このアプローチは、数値の結果が一貫性を保ち、ユーザーとorganizationを常に最新の状態に保つのに役立ちます。

お客様のプライバシーは Microsoft にとって重要です。 詳細については、Microsoft のプライバシーに関する声明を参照してください。 

Microsoft 365 接続エクスペリエンスのデータ保護ポリシーを確認するには、「Microsoft 365 の接続済みエクスペリエンス」を参照してください。 

ブック データで Copilot を使用する場合のデータ保護ポリシーを確認するには、「Microsoft 365 Copilotのデータ、プライバシー、セキュリティ」を参照してください。

ブックからコンテナーに送信されるデータの処理方法については、「Office に必要なサービス データ」を参照してください。

はい。Excel の Python は、一般的なデータ保護規則 (GDPR) と欧州連合データ境界 (EUDB) の苦情です。 欧州連合 (EU) のお客様は、EU でコンテナーを実行しています。 多国籍テナントは、Office Configuration Service を介してヨーロッパで実行されるすべてのコンテナーを構成できます。 コンプライアンスの詳細については、「Azure、Dynamics 365、Microsoft 365 コンプライアンス オファリング」を参照してください。

Excel の Python では、保存データは処理または格納されません。 データはデータです。 サードパーティと共有されることも、Copilot による AI トレーニングにも使用されません。

いいえ。

はい。 コンプライアンスの詳細については、「Azure、Dynamics 365、Microsoft 365 コンプライアンス オファリング」を参照してください。

ユーザー コードは、最小限の特権アカウントでハイパーバイザー分離コンテナーで実行されます。

Excel の Python では、コンテナーで実行されるすべてのものが悪意があると想定し、コンテナーの入力と出力を厳密に制限します。 数式によって参照されるデータにのみアクセスできます。 戻ることができるのは、値または画像のみです。 

Excel の Python は、ハイパーバイザーの分離またはネットワークの境界を破るために検出されたものをブロックする権利を留保します。

その他の考慮事項 

Excel で Python のセキュリティ警告を切り替えるためにレジストリを更新する 

次のコマンドは、レジストリを更新して、Excel の Python のセキュリティ警告設定を変更する方法を示しています。 Windows デバイスで管理者特権のコマンド プロンプトからコマンドを実行します。 

  1. このコマンドを使用して、すべてのセキュリティ警告を無効にします。 これは、Excel の Python の既定の設定です。reg add HKCU\software\policies\microsoft\office\16.0\excel\security /v PythonFunctionWarnings /t REG_DWORD /d 0 /f 

  2. Python 数式を含むブックを開くときにセキュリティ プロンプトを有効にするには、このコマンドを使用します。 Excel ビジネス バーでセキュリティ警告通知を有効にします。reg add HKCU\software\policies\microsoft\office\16.0\excel\security /v PythonFunctionWarnings /t REG_DWORD /d 1 /f

  3. 開いているブックですべての Python 関数が実行されないようにするには、このコマンドを使用します。 Python 関数はエラー #BLOCKED! を返します。reg add HKCU\software\policies\microsoft\office\16.0\excel\security /v PythonFunctionWarnings /t REG_DWORD /d 2 /f

Microsoft は引き続き Excel で Python の監視と調整を行い、ユーザーとデータを安全に保ちます。 これには、ユーザー エクスペリエンスとレジストリ設定の将来の変更が含まれる場合があります。

Microsoft の製品とサービスに影響を与えるセキュリティの脆弱性のレポートを最新の状態に保つには、 Microsoft Security Response Center Update Guide を参照してください。

関連記事 

ヘルプを表示

その他のオプションが必要ですか?

サブスクリプションの特典の参照、トレーニング コースの閲覧、デバイスのセキュリティ保護方法などについて説明します。

コミュニティは、質問をしたり質問の答えを得たり、フィードバックを提供したり、豊富な知識を持つ専門家の意見を聞いたりするのに役立ちます。