IRONXL FOR PYTHON の使用方法 Python を使用した Excel ファイルのデータベース テーブルへのインポート方法 カーティス・チャウ 更新日:6月 22, 2025 IronXL をダウンロード pipダウンロード 無料トライアル LLM向けのコピー LLM向けのコピー LLM 用の Markdown としてページをコピーする ChatGPTで開く このページについてChatGPTに質問する ジェミニで開く このページについてGeminiに問い合わせる ジェミニで開く このページについてGeminiに問い合わせる 困惑の中で開く このページについてPerplexityに問い合わせる 共有する Facebook で共有 Xでシェア(Twitter) LinkedIn で共有 URLをコピー 記事をメールで送る 今日のデータ駆動型の世界では、データを効率的に取り扱い、処理することは、あらゆる組織や個人にとって不可欠なタスクです。 豊富なライブラリ エコシステムを備えたPython は、 pandasライブラリなどのデータ操作と管理のための強力なツールを提供します。 一般的なシナリオの 1 つは、 Excelスプレッドシートからデータを抽出またはインポートし、さらに分析したり他のシステムと統合したりするために、データベースにデータを保存または挿入する必要があることです。 このチュートリアルでは、このプロセスを自動化し、Excel シート ファイルからデータをシームレスに読み取り、データベースに挿入できるようにする Python スクリプトを作成する方法について説明します。 このチュートリアルを完了すると、データ移行タスクを効率的に処理できるようになります。 始めましょう! Python を使用して Excel ファイルをデータベース テーブルにインポートする方法 まず、IronXL ライブラリをインストールします。 IronXL を使用して Excel ファイルをメモリにロードします。 作業したい特定のスプレッドシートを読み込みます。 インポートする正確なデータ範囲を選択します。 Python を使用して、SQLite や MySQL 接続データベースなどの任意のデータベースとの接続を確立します。 インポートしたデータを収容するために、SQLite データベース内に新しいテーブルを作成します。 Excel ファイルから選択した行を、新しく作成した SQLite テーブルに挿入します。 作成された SQLite テーブルからデータを取得して選択し、さらに分析または処理します。 このチュートリアルでは、Excel ファイルの処理効率で有名な Python ライブラリであるIronXLを使用します。 IronXL をスクリプトに統合することで、Excel スプレッドシートからシームレスにデータを抽出し、データベースにスムーズに挿入してさらに分析や処理を行うことができます。 IronXLとは? IronXL は Iron Software によって開発された Python ライブラリであり、Python アプリケーション内で直接 Excel ファイルを読み取り、生成、編集するための強力な機能を提供します。 特に、IronXL は Microsoft Excel のインストールから独立しており、さまざまな環境間での展開を簡素化します。 IronXL を使用すると、開発者は次のメリットを得られます。 クロスプラットフォーム サポート: Windows、macOS、Linux、Docker、Azure、AWS プラットフォームでシームレスな操作を実現し、多様な開発セットアップへの適応性を確保します。 データのインポートとエクスポート: XLS、XLSX、CSV、TSV ファイルからのデータのインポートを簡単に処理できます。また、ワークシートをこれらの形式にエクスポートしたり、相互運用性を高めるために JSON にエクスポートしたりする柔軟性も備えています。 暗号化機能: IronXL の暗号化機能を活用してデータのセキュリティを確保し、XLSX、XLSM、XLTX ファイルをパスワードで保護できます。 数式と再計算: Excel の数式を簡単に操作でき、シートを編集するたびに自動的に再計算されるという利点も加わり、データ操作の正確性と信頼性が確保されます。 セルのスタイル設定:フォントスタイル、サイズ、背景パターン、境界線、配置を調整して個々のセルの外観をカスタマイズし、Excel ドキュメントの視覚的なプレゼンテーションを強化します。 幅広いドキュメント形式: XLS、XLSX、XLST、XLSM、CSV、TSV などのさまざまな形式をサポートしている IronXL により、開発者はさまざまなシナリオでデータを簡単かつ効率的に処理できるようになります。 それでは、まずIronXLのインストールから始めましょう。 ステップ1: IronXLライブラリをインストールする 最初のステップは、IronXL ライブラリをインストールすることです。 コマンドプロンプトでIronXLをインストールするには、次のコマンドを実行します。 pip install IronXL pip install IronXL SHELL ステップ2: Excelワークブックを読み込む 次のステップはExcelファイルを読み込むことです。このチュートリアルでは、以下のExcelファイルを使用します。 ! Pythonを使用してExcelファイルをデータベーステーブルにインポートする方法: 図1 - Excelファイルの入力例 次のコードは、既存の Excel ファイルをメモリに読み込みます。 from ironxl import * # Supported for XLSX, XLS, XLSM, XLTX, CSV, and TSV # Assign a license key (retrieved from IronXL website) License.LicenseKey = "IRONSUITE.ABC.XYZ.COM.15796-DEPLOYMENT.TRIAL-5X63V4.TRIAL.EXPIRES.27.MAY.2024" # Load the Excel workbook into memory workbook = WorkBook.Load("sample_excel.xlsx") from ironxl import * # Supported for XLSX, XLS, XLSM, XLTX, CSV, and TSV # Assign a license key (retrieved from IronXL website) License.LicenseKey = "IRONSUITE.ABC.XYZ.COM.15796-DEPLOYMENT.TRIAL-5X63V4.TRIAL.EXPIRES.27.MAY.2024" # Load the Excel workbook into memory workbook = WorkBook.Load("sample_excel.xlsx") PYTHON 上記の Python コード スニペットは、IronXL ライブラリを使用して"sample_excel.xlsx"という名前の Excel ブックを読み込む方法を示しています。 まず、必要な Python モジュールを IronXL からインポートします。 次に、ライブラリの使用を検証するためにライセンス キーが割り当てられます。 無料のライセンス キーはIronXL Web サイトから取得できます。 最後に、 Loadメソッドを使用して、指定された Excel ブックを開き、メモリに読み込みます。 これにより、データの読み取り、セル値の変更、書式設定の適用など、プログラムによるコンテンツの後続の操作が可能になります。 ステップ3: ワークシートの選択 IronXL を使用して Excel ブック内のワークシートを選択するには、ワークシートのインデックスまたは名前を指定できます。 # Select the first worksheet in the loaded Excel workbook worksheet = workbook.WorkSheets[0] # Select the first worksheet in the loaded Excel workbook worksheet = workbook.WorkSheets[0] PYTHON この行は、読み込まれた Excel ブックの最初のワークシートを選択し、それを変数worksheetに割り当てて、ブック内の特定のワークシートに対して後続の操作を実行できるようにします。 これにより、Excel シートからワークシート変数に Excel データが読み込まれます。 ステップ4: データベース接続を開く このチュートリアルでは、MySQL データベース サーバーの代わりに SQLite データベースを使用します。 データベース操作を開始するには、まずデータベースへの接続を確立します。 import sqlite3 # Connect to SQLite database (or create it if it doesn't exist) conn = sqlite3.connect('data.db') import sqlite3 # Connect to SQLite database (or create it if it doesn't exist) conn = sqlite3.connect('data.db') PYTHON 上記の行は、"data.db"という名前の SQLite データベースへの接続を確立します。 指定されたデータベースが存在しない場合は、自動的に作成されます。 この接続により、クエリの実行やデータ操作の実行など、SQLite データベースとの後続の対話が可能になります。 ステップ5: テーブルを作成する 次のステップは、データベースにデータベーステーブルを作成し、Excelファイルからデータをインポートすることです。SQLiteデータベースにテーブルを作成するには、接続オブジェクトを使用してSQLステートメントを実行します。 # Create a cursor object for database operations cursor = conn.cursor() # Define and execute SQL to create a table if it doesn't exist cursor.execute(''' CREATE TABLE IF NOT EXISTS customer ( id INTEGER, FirstName TEXT, LastName TEXT, Gender TEXT, Country TEXT, Age INTEGER ) ''') # Create a cursor object for database operations cursor = conn.cursor() # Define and execute SQL to create a table if it doesn't exist cursor.execute(''' CREATE TABLE IF NOT EXISTS customer ( id INTEGER, FirstName TEXT, LastName TEXT, Gender TEXT, Country TEXT, Age INTEGER ) ''') PYTHON 上記のコード スニペットは、SQLite データベース接続内で SQL コマンドを実行するためにカーソル オブジェクトを初期化します。 "id"、"FirstName"、"LastName"、"Gender"、"Country"、および"Age"の列を持つ"customer"という名前のテーブルを作成します。 テーブルがまだ存在しない場合は、指定された列のデータ型に従ってテーブルが作成されます。 ステップ6: Pythonを使用してデータベースにデータをインポートする ここで、新しく作成したテーブルにデータを挿入します。 Excel ファイルをインポートし、そのデータを SQLite データベースに挿入します。 # Iteratively insert data from Excel worksheet into SQLite database for i in range(2, 11): # Extracting values from columns A to F in Excel worksheet values_tuple = ( worksheet[f"A{i}"].StringValue, worksheet[f"B{i}"].StringValue, worksheet[f"C{i}"].StringValue, worksheet[f"D{i}"].StringValue, worksheet[f"E{i}"].StringValue, worksheet[f"F{i}"].StringValue ) # Executing SQL INSERT command cursor.execute("INSERT INTO customer VALUES (?, ?, ?, ?, ?, ?)", values_tuple) # Commit data insertion to the database conn.commit() # Iteratively insert data from Excel worksheet into SQLite database for i in range(2, 11): # Extracting values from columns A to F in Excel worksheet values_tuple = ( worksheet[f"A{i}"].StringValue, worksheet[f"B{i}"].StringValue, worksheet[f"C{i}"].StringValue, worksheet[f"D{i}"].StringValue, worksheet[f"E{i}"].StringValue, worksheet[f"F{i}"].StringValue ) # Executing SQL INSERT command cursor.execute("INSERT INTO customer VALUES (?, ?, ?, ?, ?, ?)", values_tuple) # Commit data insertion to the database conn.commit() PYTHON 上記のコードは、Excel ワークシートの 2 行目から 10 行目を反復処理し、各行の A 列から F 列の値を抽出します。 これらの値はタプルに格納され、"customer"テーブルに挿入されるデータを表します。 次に、カーソルは SQL INSERT コマンドを実行し、値のタプルをテーブルに組み込みます。 このプロセスは行ごとに繰り返され、Excel ファイルから SQLite データベースにデータが効率的にインポートされます。 最後に、 conn.commit()はトランザクションをコミットし、変更がデータベースに保存され、永続化されるようにします。 ステップ7: データベースからデータを読み取る データが正しく挿入されたかどうかを確認するには、SELECT クエリを使用して SQLite データベースの 'customer' テーブルからデータを読み取ることができます。 例えば: # Execute a SELECT query to retrieve all data from the 'customer' table cursor.execute("SELECT * FROM customer") # Fetch all rows from the result set rows = cursor.fetchall() # Print each row to verify inserted data for row in rows: print(row) # Close the database connection to release resources conn.close() # Execute a SELECT query to retrieve all data from the 'customer' table cursor.execute("SELECT * FROM customer") # Fetch all rows from the result set rows = cursor.fetchall() # Print each row to verify inserted data for row in rows: print(row) # Close the database connection to release resources conn.close() PYTHON 上記のコードは、SQLite データベースの 'customer' テーブルに対して SELECT クエリを実行し、すべての行を取得します。 取得された行は、 fetchall()メソッドを使用して 'rows' 変数に格納されます。 次に、各行が繰り返し印刷され、"customer"テーブルに挿入されたデータが表示されます。 最後に、 close()メソッドを使用してデータベース接続が閉じられ、リソースが解放されます。 Pythonを使用してExcelファイルをデータベーステーブルにインポートする方法:図2 - データベース出力からの読み取り 完全なコードは次のとおりです。 import sqlite3 from ironxl import * # Supported for XLSX, XLS, XLSM, XLTX, CSV, and TSV # Assign a license key (retrieved from IronXL website) License.LicenseKey = "IRONSUITE.ABC.XYZ.COM.15796-DEPLOYMENT.TRIAL-5X63V4.TRIAL.EXPIRES.27.MAY.2024" # Load the Excel workbook into memory workbook = WorkBook.Load("sample_excel.xlsx") # Select worksheet at index 0 worksheet = workbook.WorkSheets[0] # Connect to SQLite database (or create it if it doesn't exist) conn = sqlite3.connect('data.db') # Create a cursor object for database operations cursor = conn.cursor() # Define and execute SQL to create a table if it doesn't exist cursor.execute(''' CREATE TABLE IF NOT EXISTS customer ( id INTEGER, FirstName TEXT, LastName TEXT, Gender TEXT, Country TEXT, Age INTEGER ) ''') # Clear any existing data from the table cursor.execute("DELETE FROM customer") # Iteratively insert data from Excel worksheet into SQLite database for i in range(2, 11): # Extracting values from columns A to F in Excel worksheet values_tuple = ( worksheet[f"A{i}"].StringValue, worksheet[f"B{i}"].StringValue, worksheet[f"C{i}"].StringValue, worksheet[f"D{i}"].StringValue, worksheet[f"E{i}"].StringValue, worksheet[f"F{i}"].StringValue ) # Executing SQL INSERT command cursor.execute("INSERT INTO customer VALUES (?, ?, ?, ?, ?, ?)", values_tuple) # Commit data insertion to the database conn.commit() # Execute a SELECT query to retrieve all data from the 'customer' table cursor.execute("SELECT * FROM customer") # Fetch all rows from the result set rows = cursor.fetchall() # Print each row to verify inserted data for row in rows: print(row) # Close the database connection to release resources conn.close() import sqlite3 from ironxl import * # Supported for XLSX, XLS, XLSM, XLTX, CSV, and TSV # Assign a license key (retrieved from IronXL website) License.LicenseKey = "IRONSUITE.ABC.XYZ.COM.15796-DEPLOYMENT.TRIAL-5X63V4.TRIAL.EXPIRES.27.MAY.2024" # Load the Excel workbook into memory workbook = WorkBook.Load("sample_excel.xlsx") # Select worksheet at index 0 worksheet = workbook.WorkSheets[0] # Connect to SQLite database (or create it if it doesn't exist) conn = sqlite3.connect('data.db') # Create a cursor object for database operations cursor = conn.cursor() # Define and execute SQL to create a table if it doesn't exist cursor.execute(''' CREATE TABLE IF NOT EXISTS customer ( id INTEGER, FirstName TEXT, LastName TEXT, Gender TEXT, Country TEXT, Age INTEGER ) ''') # Clear any existing data from the table cursor.execute("DELETE FROM customer") # Iteratively insert data from Excel worksheet into SQLite database for i in range(2, 11): # Extracting values from columns A to F in Excel worksheet values_tuple = ( worksheet[f"A{i}"].StringValue, worksheet[f"B{i}"].StringValue, worksheet[f"C{i}"].StringValue, worksheet[f"D{i}"].StringValue, worksheet[f"E{i}"].StringValue, worksheet[f"F{i}"].StringValue ) # Executing SQL INSERT command cursor.execute("INSERT INTO customer VALUES (?, ?, ?, ?, ?, ?)", values_tuple) # Commit data insertion to the database conn.commit() # Execute a SELECT query to retrieve all data from the 'customer' table cursor.execute("SELECT * FROM customer") # Fetch all rows from the result set rows = cursor.fetchall() # Print each row to verify inserted data for row in rows: print(row) # Close the database connection to release resources conn.close() PYTHON 結論 結論として、このチュートリアルでは、データ操作、具体的には Excel データの抽出とデータベースへの挿入に対する自動化されたアプローチについて説明しました。 このプロセスは、データ管理の効率を高めるだけでなく、データ処理の取り組みの可能性を最大限に引き出します。 Python と IronXL のパワーを活用してデータ ワークフローを最適化し、自信を持ってプロジェクトを推進しましょう。 よくある質問 Pythonを使用してExcelファイルからデータをデータベースにインポートするにはどうすれば良いですか? Excelファイルを読み込むには、最初に`WorkBook.Load()`を使用し、その後ワークシートを選択してSQLiteと接続し、データを挿入する方法でIronXLライブラリを使用することができます。 PythonでExcelファイルを処理するためにIronXLを使用する利点は何ですか? IronXLは、Microsoft ExcelをインストールせずにExcelファイルを処理することができ、クロスプラットフォーム操作をサポートし、暗号化や数式再計算のような強力な機能を提供し、データ抽出と挿入のプロセスを効率的に管理します。 PythonプロジェクトでIronXLを使用するにはどうすれば良いですか? PythonプロジェクトにIronXLをインストールするには、コマンド `pip install IronXL` を使用します。これにより、IronXLがPython環境に追加され、Excelファイルを効率的に処理できるようになります。 Microsoft ExcelがインストールされていなくてもPythonでExcelファイルを処理することは可能ですか? はい、IronXLを使用すればMicrosoft ExcelがインストールされていなくてもExcelファイルを処理することができます。IronXLはExcelファイルを独立して読み取り、編集、書き込みを行うための必要なすべての機能を提供します。 PythonでExcelデータを保存するためにデータベーステーブルを作成するプロセスは何ですか? Pythonでデータベーステーブルを作成するには、SQLiteの`sqlite3`モジュールを使用できます。`connect()`を使用して接続を確立した後、カーソルオブジェクトを通じてSQL `CREATE TABLE`文を実行します。 ExcelデータがSQLiteデータベースに正常に挿入されたかどうかを確認するにはどうすれば良いですか? テーブルに対して`SELECT`クエリを実行し、`fetchall()`メソッドを使用して結果セットからすべての行を取得して印刷することにより、挿入を確認できます。 Pythonを使用してExcelからデータベースへのデータマイグレーションのステップは何ですか? ステップにはIronXLのインストール、Excelファイルの読み込み、ワークシートの選択、データベースへの接続、テーブルの作成、およびSQL `INSERT`コマンドを使用したデータの挿入のためのExcel行の反復が含まれます。 IronXLはPythonでExcelの数式を処理し再計算することができますか? はい、IronXLはExcelの数式をサポートしており、再計算が可能です。これにより、Pythonアプリケーション内でのExcelファイル操作に包括的なソリューションを提供します。 IronXLはExcelファイル処理のためのクロスプラットフォーム操作をサポートしていますか? はい、IronXLはクロスプラットフォーム操作をサポートしており、Windows、macOS、Linux、Docker、Azure、AWSなどの環境を含み、さまざまな開発セットアップに対応した多目的な選択肢となります。 IronXLはPythonアプリケーションのデータワークフローをどのように強化しますか? IronXLは効率的なデータ抽出、操作、および挿入機能を提供することでデータ管理プロセスを最適化し、データ駆動アプリケーションのパフォーマンスを向上させます。 カーティス・チャウ 今すぐエンジニアリングチームとチャット テクニカルライター Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。 関連する記事 更新日 6月 22, 2025 複数のシートを持つ Excel ファイルを Python で読む方法 この記事では、Python で IronXL を使用して複数の Excel シートを読む方法を探ります。 詳しく読む 更新日 6月 22, 2025 Pandas を使用せずに Python で Excel ファイルを読む方法 (Interop 不要) Microsoft Excel を扱う際、最初に思い浮かぶのは Pandas ですが、パフォーマンスと速度を提供する IronXL のような他の強力なライブラリもあります。 詳しく読む 更新日 6月 22, 2025 Python を使用して Excel に画像を挿入する方法 この記事では、Python で IronXL を使用して Excel に画像を挿入するプロセスを案内します。 詳しく読む Python を使用して Excel ファイルに行を挿入する方法Python で Excel ファイルを編...
更新日 6月 22, 2025 複数のシートを持つ Excel ファイルを Python で読む方法 この記事では、Python で IronXL を使用して複数の Excel シートを読む方法を探ります。 詳しく読む
更新日 6月 22, 2025 Pandas を使用せずに Python で Excel ファイルを読む方法 (Interop 不要) Microsoft Excel を扱う際、最初に思い浮かぶのは Pandas ですが、パフォーマンスと速度を提供する IronXL のような他の強力なライブラリもあります。 詳しく読む
更新日 6月 22, 2025 Python を使用して Excel に画像を挿入する方法 この記事では、Python で IronXL を使用して Excel に画像を挿入するプロセスを案内します。 詳しく読む