0
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

ExcelからPython起動しよう。VBAは使わないよ。

Posted at

初めての投稿です。

Excelにデータを溜めて、Python実行することありませんか?
データ変更⇔実行を繰り返す場合、ExcelからPythonを起動したくありませんか?

ネット調べるとVBAを使う方法はありますが、私は好きじゃないのでこの方法を試しました。
※マクロ実行でセキュリティがどうのこうの聞かれるのがね。。。

#対象
下の全部が当てはまっている人
・Excelに溜めたデータを、Pythonで分析したい
・Excelをフロントエンドにしたい
・VBAは使いたくない
・Windowsを使っている

#概要
Excelのハイパーリンクを使って、batを起動します。
batファイルにPython起動の文を書いておけば、Excelからリンクを押しただけでPythonが動きますよ。

#0.最初の状態
下図のように、Excelファイルと、実行したいPythonファイルがあるとします。
image.png

1.batファイルの作成

下図のようなbatファイルを作成します。
保存場所は上のファイルと同じ場所です。
1行目は、cdで「%~dp0」まで移動します。「%~dp0」とは、このbatファイルが保存されたパスを示す値です。
2行目は、Pythonを起動文です。
image.png

#2.Excelにハイパーリンクを作成
Excelの好きなセルを右クリックし、「リンク」で先ほど作ったbatファイルを選択しましょう。
※ちなみにバージョンは2016です。
image.png

#3.実行
このハイパーリンクを押せば、自動的にbatが開き、そして自動的にPythonが起動します。
Pythonの中ではpandasでExcelデータを読み込むように設定しておけば良いですね。

#終わり
小技でしたが、VBAを使わなくても目的は達成できました。
宜しければお使いください。

0
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?