プログラミング

【Python】VBAをPythonで再現してみる①

投稿日:2021年3月7日 更新日:

以前に「エクセル」で出来るプログラミングとして「VBA」を紹介しましたが
今回は「Python」でその中身を再現していきたいと思います。

VBAをPythonで再現してみよう

「VBA(Visual Basic for Applications)」とは、Excel,Word,PowerPointなどOfficeのアプリの機能をカスタマイズできるものですね。

今回再現していくものとして「セルの値を取得」をやっていきます。

VBAでの「セルの値を取得」についてはこちら。

Pythonでエクセルを操作する

今回「python」でエクセルを操作するために「openpyxl」を使っていきます。

「openpyxl」についてはこちら。

セルの値を表示させよう

今回はセル[A1]の値をメッセージボックスに表示させていきます。

まずは新規のエクセルファイルを作成して、セル[A1]に値を入力しましょう。

「Hello」と入力してみました。
保存して閉じておきましょう。

モジュールをインポートしよう

まずはメッセージボックスを表示させるための「messagebox」と「openpyxl」をインポートしていきましょう。

from tkinter import messagebox
import openpyxl as xl

エクセルファイルを指定して読み込もう

先ほど作成したエクセルファイルのパスを「excel_path」の中に代入していきます。

from tkinter import messagebox
import openpyxl as xl

-----------------------------------------------------------

excel_path = r"C:\○○○○\python.xlsx"
wb = xl.load_workbook(excel_path)
sheet = wb['Sheet1']

これで読み込んだエクセルファイルのシート選択まで完了です。

セルの値を表示させよう

まずは「a」という変数を設定して、そこにセル[A1]の値を代入します。

from tkinter import messagebox
import openpyxl as xl

excel_path = r"C:\○○○○\python.xlsx"
wb = xl.load_workbook(excel_path)
sheet = wb['Sheet1']

------------------------------------------------------------

a = sheet['A1'].value

次にメッセージボックスに表示させるために「messagebox.showinfo」に「a」の中身を渡します。

from tkinter import messagebox
import openpyxl as xl

excel_path = r"C:\○○○○\python.xlsx"
wb = xl.load_workbook(excel_path)
sheet = wb['Sheet1']
a = sheet['A1'].value

------------------------------------------------------------
messagebox.showinfo('セルの値',a)

wb.close()

「セルの値」はメッセージボックスの名前です。
好みで変えてください。

最後にエクセルファイルを閉じます。

実行してみよう

「vba.py」を実行して確認してみましょう。

このように表示されたでしょうか。

まとめ

「python」でエクセルを操作すればファイルを開かなくても、中身を確認することができますね。
以前に「画像の貼り付け」なども試した記事があるので参考にしてください。
それではまた。

「画像の貼り付け」についてはこちら。

-プログラミング
-

執筆者:


comment

メールアドレスが公開されることはありません。

関連記事

【Python】Flaskで掲示板を作ってみよう①

前回「Flask」の動作を確認することができたので「掲示板」の作成をやっていきたいと思います。今回は「index.html」を表示させるところまでいきたいと思います。 前回の記事はこちら 【Pytho …

【Python】Excelファイルを読み込もう

前回作成したExcelファイルを読み込んでみたいと思います。今回も「openpyxl」を使っていきますよ~。 Excelファイルを読み込んでみよう openpyxlをインポートしよう まず、「open …

【Python】加工した画像を保存してみよう

これまで「OpenCV」を使って、画像の読み込み、表示、リサイズなどを実践してきました。今回は、その加工した画像を保存してみたいと思います。 加工した画像を保存してみよう 今回も、前回のコードに追記す …

Anaconda(アナコンダ)について

Pythonを学習していくにあたって様々な用語を目にします。今回はその1つである、Anacondaについて触れていきます。 Anacondaとは AnacondaはPythonが入っているのは勿論のこ …

PHP開発環境

今回は実際にXAMPPをインストールし、PHPの開発環境を構築していきます。 XAMPPとは X:Xross-PlatformA:ApacheM:MariaDBP:PHPP:Perlそれぞれの頭文字を …

YouTube