概要
AutoItを使ってExcelを開いてセルの値をとってくる方法
Excelから値を読み込む
シンプルに1つセルを読み込む場合、下記のようになります。
sample1.au3
# include <Excel.au3>
; Excelを起動します
$oExcel = _Excel_Open()
; Excelで開くファイルを指定します(下記ではデスクトップ上のtest.xlsxを開く想定)
$oWorkbook = _Excel_BookOpen($oExcel, "C:\Users\username\Desktop\test.xlsx")
; A1セルを読み取る
$value = _Excel_RangeRead($oWorkbook, Default, "A1")
Excelで指定したシートから値を読み込む
前述のサンプルに加え、シートの切り替えを加えます。
sample2.au3
# include <Excel.au3>
; Excelを起動します
$oExcel = _Excel_Open()
; Excelで開くファイルを指定します(下記ではデスクトップ上のtest.xlsxを開く想定)
$oWorkbook = _Excel_BookOpen($oExcel, "C:\Users\username\Desktop\test.xlsx")
; --- 追加部分。シートの選択を行っている ---
$configSheetName = "Sheet2"
$oExcel.Sheets ($configSheetName).Select
;--- ---
; A1セルを読み取る
$value = _Excel_RangeRead($oWorkbook, Default, "A1")
Excelがうまく開けなかった場合、エラーのポップアップを表示する
ファイルパスの指定がうまくいかなかった場合などにエラーのポップアップを表示させる場合のサンプル
sample3.au3
# include <Excel.au3>
# include <MsgBoxConstants.au3> ; --- 追加1 ポップアップのinclude ---
; Excelを起動します
$oExcel = _Excel_Open()
; --- 追加2 Excelが開けなかった場合、開けなかった旨をポップアップで表示し終了します ---
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "エラー", "Excelが起動できませんでした。")
; --- ---
; Excelで開くファイルを指定します(下記ではデスクトップ上のtest.xlsxを開く想定)
$oWorkbook = _Excel_BookOpen($oExcel, "C:\Users\username\Desktop\test.xlsx")
; --- 追加3 指定したファイルが開けなかったらその旨をポップアップで表示しExcelをクローズ、終了します ---
If @error Then
MsgBox($MB_SYSTEMMODAL, "エラー", "指定したファイルが開けませんでした。ファイルパスを確認してください")
_Excel_Close($oExcel)
Exit
EndIf
; --- ---
; A1セルを読み取る
$value = _Excel_RangeRead($oWorkbook, Default, "A1")