使用GAMS讀取Excel和保存Excel

無論讀取還是保存,都需要使用gdx文件作爲中介。

 

讀取時,先將excel的數據轉換到gdx中,然後讀取數據至內存。

eg:

 

 

set

i/usa,eu,row/

t/2005*2010/

;

parameters

LandRate(i,t)

CapitalRate(i,t)

SkLabRate(i,t)

UnskLabRate(i,t)

NatResRate(i,t)

test(i)

;

 

$call "gdxxrw ../data/trend.xlsx output=../data/trend.gdx par=NatResRate rng=NatRes! par=LandRate rng=Land! par=CapitalRate rng=Capital!  par=SkLabRate rng=SkLab! par=UnskLabRate rng=UnskLab!"

 

$GDXIN ../data/trend.gdx

$load LandRate CapitalRate SkLabRate UnskLabRate NatResRate

$GDXIN

display

LandRate

CapitalRate

SkLabRate

UnskLabRate

NatResRate;

 

 

 

 

將數據保存至excel時,首先要將內存中的變量或者參數保存成gdx形式,如後轉到到excel。

eg:

 

 

execute_unload "../data/ReTest.gdx" NatResRate

execute 'gdxxrw.exe ../data/ReTest.gdx output=../data/ReTest.xlsx par=NatResRate rng=sheet1!'

 

注意:當data目錄下已經存在ReTest.xlsx文件時,再次保存相同的文件名,並不會覆蓋原來的文件,而是在這個文件上繼續添加數據。

 

 

 

 

詳細參考:http://www.gams.com/docs/excel/

發佈了89 篇原創文章 · 獲贊 9 · 訪問量 28萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章