dSPACEツールの使い方を日本語で

ExcelのデータをAutomationDeskから読み込む方法

下準備
下図のようなExcelを作っておく。
excel_file
Desktop上に保存しておく。
AutomationDeskで新しいプロジェクトを作成し、Sequence、String(3個)、 Floatの各オブジェクトを作成する。
ProjectTree
分かりやすいようStringオブジェクトの名前を変更。
filenamechanged
StringオブジェクトをダブルクリックするとValue Editorが開かれるので、ファイルのパス、名前、シートの名前を次のように入れていく。
EnterFileNameEnterFilePathEnterSheetName
SequenceにExecブロックを置く。
ExecBlockPut
下図のようにスクリプトを書く。
script
import win32com.client
ExcelAppl = None
try:
ExcelAppl=win32com.client.Dispatch("Excel.Application")
ExcelAppl.visible=1
ExcelAppl.Workbooks.Open(os.path.join(_AD_.FilePath,_AD_.FileName))
Workbook=ExcelAppl.Workbooks.Item(_AD_.FileName)
Sheet = Workbook.Worksheets.Item(_AD_.SheetName)
myvalue = Sheet.Range("B4").Value
print "cell B4のValueは%fです" % Sheet.Range("B4").Value
finally:
#del Data
del Sheet
del Workbook
del ExcelAppl
Executeすると.. (MyData.xlsxを閉じてからExecuteを実行する)
output_result
次に、ある範囲のデータを読み出す方法。
準備
Stringオブジェクトとして ReadStartCell 、ReadEndCell  を、
Listオブジェクトとして ReadRangeList をプロジェクトに追加する。
objectadded
以下のスクリプトを追加する。
_AD_.ReadStartCell = 'A1'
_AD_.ReadEndCell = 'C5'
Data = Sheet.Cells.Range(_AD_.ReadStartCell,_AD_.ReadEndCell).Value
_AD_.ReadRangeList=map(list,Data)
scriptadded
実行すると、各行の値がListオブジェクトに入れられる。
range_read_result

Popular Posts

About Me

Weizen Beer A dSPACE user

Icons made by Toast from www.flaticon.com is licensed by CC 3.0 BY

Blog Archive

Labels

Labels

Recent Comments

Recent Post

Video Of Day

Recent

Ad Banner

Popular Posts