PY 関数

適用先
Excel for Microsoft 365 Excel for Microsoft 365 for Mac

セルに =PY と入力し、オートコンプリート メニューから PY 関数を選択すると、セル編集エクスペリエンスが Python エディターに変換されます。 詳細については、「 Excel での Python の概要」と「Excel でのPython の概要」を参照してください。 

重要

PY 関数を Excel の数式バーから直接入力したり、表示したりすることはできません。代わりに、Python エディターによって生成されてセルに挿入されます。 PY 関数の構文は、主にアドインが Python 数式を直接挿入または読み取るために使用されます。 また、Python 数式を含むセルで FORMULATEXT 関数を使用する場合にも表示されます。 

構文

PY 関数は、セキュリティで保護された Microsoft Cloud ランタイムで Python コードを実行します。 結果は、Python オブジェクトまたは Excel 値として返されます。 

=PY(python_code,return_type) 

引数 説明
python_code
(必須)
セキュリティで保護された Microsoft Cloud ランタイムで実行する Python コード。 静的テキストである必要があります。
return_type
(必須)
目的の戻り値の型を指定します。 静的な数値 0 または 1 である必要があります。
  • 0 は Excel 値を示します。
  • 1 は Python オブジェクトを示します。

Excel 参照

Python コードは、カスタム Python 関数を使用して Excel の値を参照できます xl().  

xl()関数では、次の Excel オブジェクトの参照がサポートされています。

  • 範囲
  • 名前
  • テーブル
  • 画像
  • 接続のPower Query

xl()関数は、省略可能な headers 引数をサポートします。 headers 引数は、最初の行にヘッダーがあるかどうかを指定します。 たとえば、 xl("A1:Z10", headers=True) はセル A1:Z1 がヘッダーであることを示します。 

解説

  • PY 関数は FORMULATEXT によって表示され、アドインによって書き込まれ、読み取られます。
  • PY 関数は、Python エディターを使用して表示されるため、 数式バー には表示されません。 
  • PY 関数は、他の Excel 関数では使用できません。 他の関数と共に使用する場合は、数式を入力できません。
  • python_code引数とreturn_type引数の両方を静的にする必要があります。

例 1 では、Python plus 演算子を使用して、3 つのテキスト フラグメントから "Hello World" を生成します。 

=PY('Hello' + ' ' + 'World',0) 

 ———————————————————————————

例 2 では、 xl() 関数を使用して Table1 からデータを取得し、結果を Python オブジェクトとして返します。 

=PY("xl(""Table1[#All]"", headers=True)",1)