0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

データベースとスプレッドシート

Last updated at Posted at 2024-10-27

スプレッドシートを制御する標準的な方法

スプレッドシートは究極のノーコードツールで式を埋め込むことで様々なアプリケーションを簡単に作ることができます。

・簡単なスプレッドシートの使用例
https://qiita.com/kawamo55/items/4a0a733ea229cde8d57f


本格的なアプリケーションを作るとき使用するスプレッドシートの制御方法は

スプレッドシート 制御スクリプト
Excel VBA
LibreCalc LibreOffice Basic
Google Spredsheet GAS

上の2つはOld Visual Basic系の文法でGASはJavaScriptです。
これら全ては、全てPythonに置換えることが可能です。

Excelを例にPythonで制御する方法としては・・・

以下のURLで音声合成を呼び出す方法と同様に
https://qiita.com/kawamo55/items/8ebe565e8ef4177cecff
win32com.clientを使ってWindowsのActiveXオブジェクト(ExcelとDAO)を取得すると、Pythonで制御可能になるためVBAを使わなくても制御可能になります。

スプレッドシートとデータベースを組み合わせることのメリット

スプレッドシートは単独でもそれなりに使えるものが作れますが、複雑な式を沢山多用しだすと1つのセルを更新するたびに再計算が発生して動作の重いスプレッドシートが出来上がってしまいます。
更に、Excelで複数シートに分けることでデータの整合性を保とうとするとファイルの移動ができなくなったり、新たな処理を開始する場合の初期化が大変なことになったりします。
これを、避けるためにデータの制御ロジックはデータベースに置いてスプレッドシートには最終的な表示のみを置いて単純な式だけで構成することで重くならず、移動させても問題のないスプレッドシートが出来上がります。

ExcelとAccessデータベースをPythonで制御した例

以下の動画は、コマンドプロンプトから操作してExcelとAccessデータベースを使用した例です。
まだ単純な動作しかしませんが・・・

Excelだけではなく

pythonを使用すると、前動画のような制御をLbreCalcやGoogleSpreadシートで適用できます。
具体的な方法は・・・
また書いていきます!!

0
0
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
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?