エクセルファイルの読み書きと自動化には、さまざまなプログラミング言語を利用できます。Java、Python、およびVBAについて概要、説明、サンプルソース、本家サイトURLを以下に示します。
【Java】
概要: Javaでは、Apache POI ライブラリを使用してエクセルファイルの読み書きを行うことができます。
説明: Apache POIは、Microsoft Officeファイルと互換性のあるファイル形式に対応したJava用のライブラリです。エクセルファイル(.xls、.xlsx)の読み書きに特化したHSSFおよびXSSFというコンポーネントが含まれています。
サンプルソース:
import org.apache.poi.ss.usermodel.*; import org.apache.poi.xssf.usermodel.XSSFWorkbook; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; public class ExcelReadWrite { public static void main(String[] args) throws IOException { FileInputStream fis = new FileInputStream("input.xlsx"); Workbook workbook = new XSSFWorkbook(fis); Sheet sheet = workbook.getSheetAt(0); // Read cell value Row row = sheet.getRow(0); Cell cell = row.getCell(0); System.out.println(cell.getStringCellValue()); // Write cell value cell.setCellValue("New Value"); // Save the changes FileOutputStream fos = new FileOutputStream("output.xlsx"); workbook.write(fos); workbook.close(); fos.close(); fis.close(); } }
本家サイトURL: https://poi.apache.org/
【Python】
概要: Pythonでは、openpyxl、pandas、xlrd、xlwtなどのライブラリを使用してエクセルファイルの読み書きができます。ここでは、よく使われるopenpyxlを紹介します。
説明: openpyxlは、PythonでExcelファイル(.xlsx)の読み書きを行うためのライブラリです。
サンプルソース:
import openpyxl # Read Excel file workbook = openpyxl.load_workbook("input.xlsx") sheet = workbook.active # Read cell value cell_value = sheet["A1"].value print(cell_value) # Write cell value sheet["A1"] = "New Value" # Save the changes workbook.save("output.xlsx") workbook.close()
本家サイトURL: https://openpyxl.readthedocs.io/
【VBA】
概要: VBA(Visual Basic for Applications)は、Microsoft Officeアプリケーション向けのプログラミング言語で、Excelマクロとして使用できます。
説明: VBAを使用すると、Excelのオブジェクト(ワークシート、セルなど)にアクセスし、読み書きや自動化を行うことができます。
サンプルソース:
Sub ReadWriteExcel() Dim workbook As Workbook Dim sheet As Worksheet Dim cell As Range ' Open Excel file Set workbook = Workbooks.Open("input.xlsx") Set sheet = workbook.Worksheets(1) ' Read cell value Set cell = sheet.Cells(1, 1) MsgBox cell.Value ' Write cell value cell.Value = "New Value" ' Save the changes workbook.SaveAs "output.xlsx" workbook.Close End Sub
本家サイトURL: https://docs.microsoft.com/en-us/office/vba/api/overview/excel
これらのプログラミング言語やライブラリを使って、エクセルファイルの読み書きや自動化を実現できます。選択する言語やライブラリは、既存のスキルやプロジェクトの要件に応じて選ぶと良いでしょう。