2013-03-17 14 views
6

私の会社では、開発環境と運用環境でLinuxを使用しています。しかし、我々はマシンに金融市場データを取得するために、アドインを使用しているサードパーティのアプリケーションを使用しているため、WindowsとExcelを実行するマシンがあります。アドインには、これらのデータをローカルマシンに取得してからMySqlデータベースに返すための機能(Excel機能と同様)が用意されています。私たちはまた、タスクを自動化するためにいくつかのVBAスクリプトを開発しましたが、まだ結果に満足していません。 私はすべてのこれらのジョブを実行するためにはPythonを使用して検討しているが、中にジャンプする前に、私はExcelを操作するためPythonのオートメーションExcel

  1. 使用のpythonを行うことができますPythonパッケージを(そのアドイン付き)を見つけると、その機能を使用する必要がありますExcelを開くことなく?用
  2. 私はExcelを開くために必要がある場合は、私は毎日のスクリプトを実行する、そのタスクを自動化する必要がある、または日の特定の瞬間に(市場データは、特定の時間を供給する必要がある)

感謝提案

答えて

8

あなたは、PythonのWin32の拡張が必要になります - http://sourceforge.net/projects/pywin32/

は、その後、あなたがCOMを使用することができます。

from win32com.client import Dispatch 
excel = Dispatch('Excel.Application') 
wb = excel.Workbooks.Open(r'c:\path\to\file.xlsx') 
ws = wb.Sheets('My Sheet') 
# do other stuff, just like VBA 
wb.Close() 
excel.Quit() 

スクリプトをWindowsタスクスケジューラに配置して、必要な時間だけ実行することができます。

+0

は、あなたが私の新しい質問を見てみることはできますか? http://stackoverflow.com/questions/15929676/access-data-in-excel-reuter-from-python – nam

0

代わりに、openpyxlを使用することもできます。

import openpyxl 
wb= openpyxl.Workbook() 
ws = wb.get_active_sheet() 
ws.title = 'My Title' 
wb.save('C:\\Development\\Python\\alpha.xlsx') 

ここでは、私が作業している本の章です。

https://automatetheboringstuff.com/chapter12/

関連する問題