목차
무료 슬롯 데이터를 MS Excel 스프레드시트로 변환하는 도구입니다.
- 날짜
- 2005년 6월 10일; 2006년 12월 6일
이 문서에서는 다음에 대해 설명합니다.무료 슬롯무료 슬롯 파일에 저장된 데이터를 Excel 스프레드시트로 변환할 수 있는 유틸리티입니다.
- 참고
- 무료 슬롯는 Windows에서만 사용할 수 있습니다.
개요
- 주의
무료 슬롯더 이상 사용되지 않습니다(참조GAMS 42 무료 슬롯 출시 노트). 이용해주세요에이전트 ExcelWriter 연결대신.
무료 슬롯무료 슬롯 파일의 전체 내용을 MS Excel 스프레드시트 파일로 덤프하는 도구입니다(.xlsx또는.xls파일). 모든 식별자는 .XLSX 파일에 자체 시트를 갖습니다. Excel 2007 이상 최신 버전에서는 기본적으로xlsx파일; 그 이전 버전은 기본값으로.xls파일 형식. 예를 들어, 다음의 결과를 저장할 때trn스포츠모델 라이브러리의 모델:
C:\tmp>gamslib trnsport 모델 trnsport.gms 검색됨 C:\tmp>gams tnsport 무료 슬롯=trnsport lo=2 C:\tmp>gdxdump trnsport.무료 슬롯 기호 기호 치수 유형 기록 설명 텍스트 1 a 1 경우에 따라 플랜트 i의 Par 2 용량 2 b 1 경우에 시장 j의 Par 3 수요 3 c 2 Par 6 운송 비용(케이스당 수천 달러) 4 비용 0 Equ 1 목적 함수 정의 5d 2 파 6 거리(수천 마일) 6 수요 1 Equ 3 시장 j의 수요를 충족 7 f 0 Par 1 화물(1,000마일당 케이스당 달러) 8 i 1 통조림 공장 2개 세트 9 j 1 세트 3 시장 10 공급 1 Equ 2 공장 i의 공급 한도 준수 케이스에 11 x 2 Var 6 배송 수량 12 z 0 Var 1 총 운송 비용(단위: 천 달러) C:\tmp>
예제는 우리가 복사하는 방법을 보여줍니다.trnsport.gms모델 라이브러리에서 모델을 만든 다음 해결하세요. 옵션무료 슬롯=파일이름전체 기호 테이블을 무료 슬롯 파일에 저장합니다. 옵션lo=2GAMS에 로그를 파일에 저장하라고 지시합니다(이 경우trnsport.log) 화면에 쓰는 대신.gdxdump무료 슬롯 파일의 내용을 표시합니다(옵션기호모든 데이터가 아닌 목차만 표시합니다.
무료 슬롯 파일이 있으면 사용할 수 있습니다.무료 슬롯만들다.xlsx파일:
C:\tmp>gdx2xls trnsport.무료 슬롯 GDX2XLS 34.1.0 r644dbd9 2021년 1월 29일 출시 WEI x86 64bit/MS Window 출력 파일: C:\tmp\trnsport.xlsx C:\tmp>
MS Excel로 연 결과 XLSX 파일은 다음에 표시됩니다.그림 1.첫 번째 페이지는 모든 식별자가 알파벳순으로 정렬된 목차 페이지입니다. 변수를 클릭할 때x, 다음에 표시된 시트그림 2표시됩니다.
다음을 클릭하면 목차에 다시 접근할 수 있습니다.목차링크를 왼쪽 상단에 있습니다. 여기에 표시된 전체 프로세스는 섹션에 표시된 대로 자동화될 수 있습니다.모델 gdx2xls1: trnsport.무료 슬롯 가져오기. 보시다시피, 모든 식별자는 자체 시트에 저장됩니다. 색인 위치는 도메인을 표시하는 라벨이 있는 열을 얻습니다. 또는dim1, dim227234_27351스칼라.
자동필터
기본적으로 내보낸 테이블은 다음으로 구성됩니다.자동필터테이블. 이렇게 하면 쉽게 선택하고 결과를 정렬할 수 있습니다.
다른 열에 필터를 설정할 수 있습니다. 기준에 맞는 행만 표시됩니다. 필터에 사용된 열은 드롭다운 메뉴 헤더에 검은색 화살표 대신 파란색 화살표가 있으면 인식할 수 있습니다.
정렬은 여러 열에 대해 수행될 수도 있습니다: 예: 먼저 한 열을 기준으로 정렬한 다음 두 번째 열을 기준으로 정렬합니다.
자동 필터 생성은 .ini 파일의 옵션을 사용하여 끌 수 있습니다.
옵션
기본 ini 파일
옵션은 .INI 파일에 지정됩니다. 기본적으로 파일무료 슬롯.ini다음과 같은 디렉토리에 위치함무료 슬롯.exe상담을 받았습니다. 이 파일을 사용할 수 없는 경우 프로그램은 기본 설정을 계속 사용합니다.
사용자 정의 ini 파일
프로그램이 다른 .ini 파일을 사용하도록 지시하는 것도 가능합니다. 이는 다음 형식의 추가 인수를 사용하여 수행됩니다.@inifile. 예를 들면 다음과 같습니다:
C:\TMP> gdx2xls myfile.무료 슬롯 @myinifile.ini
이 경우 프로그램은 읽을 수 없습니다.무료 슬롯.ini다음과 같은 디렉토리에 위치무료 슬롯.exe그러나 오히려myinifile.ini현재 디렉토리에.
ini 파일은 두 개의 섹션을 포함할 수 있습니다:[설정]그리고[색상]. 가능한 모든 설정이 포함된 완전한 ini 파일은 다음과 같습니다.
[설정] inf=INF mininf=-INF EPS=EPS na=NA undf=INDF 스칼라시트=1 테이블 형식화=1 목=1 정렬톡=1 자동필터=1 프리즈헤더=1 인덱스 형식= 값형식= [색상] 헤더=17 몸=19 이탤릭체=48 [xml색상] 링크=#0000FF 헤더=#9999FF 본문=#FFFFCC 기울임꼴=#969696
설정 섹션
에 대한 전체 설명[설정]섹션은:
| [설정] | 설명 |
|---|---|
| inf | 특수 값은 수식 등에서 사용할 수 있도록 숫자 값에 매핑되어야 할 수 있습니다. 이 설정은 GAMS 값을 지정합니다.inf수량. 기본값은 문자열입니다.inf. |
| mininf | 이것은 매핑된 값입니다.-INF. 기본값은-INF. |
| eps | 이것은 사용할 매핑된 값입니다.eps. 기본값은eps. |
| 나 | 이것은 사용할 매핑된 값입니다.NA. 기본값은NA. |
| undf | 이것은 사용할 매핑된 값입니다.undf. 기본값은undf. |
| 스칼라시트 | 이 매개변수가 1로 설정되면 무료 슬롯는 스칼라 매개변수, 스칼라 방정식 및 스칼라 변수를 수집하기 위해 별도의 시트를 생성합니다. 이렇게 하면 단일 데이터 항목으로 생성되는 시트 수를 줄일 수 있습니다. 시트 이름은 고정되어 있습니다.스칼라. 기본적으로 이 옵션은 켜져 있습니다. |
| 테이블 형식화 | 이 옵션이 켜져 있으면 추가 표 서식(색상 추가 등)이 사용되어 표가 더 보기 좋게 만들어집니다. 이것이 필요하지 않은 경우 이 옵션을 끌 수 있습니다. 기본값:테이블 형식화=0. |
| toc | 추가 여부테이블목차 시트. 기본값은 이러한 테이블을 생성하는 것입니다. |
| sorttoc | 목차를 알파벳순으로 정렬할지 여부. 끄면 테이블은 무료 슬롯 파일에 식별자가 나타나는 순서대로 표시됩니다. 기본값은 정렬입니다. |
| 자동필터 | 자동 생성자동필터Excel에서 테이블을 활성화했습니다. |
| freezeheader | 헤더가 화면 밖으로 스크롤되지 않도록 고정된 상태로 유지하세요. |
| 색인 형식 | 색인 열의 사용자 정의 형식. 기본적으로 이는 빈 문자열입니다. |
| 값형식 | 값 열의 사용자 정의 형식. 기본적으로 이는 빈 문자열입니다. |
특수 값 설정의 예는 섹션에서 찾을 수 있습니다모델 무료 슬롯4: 특수 값 매핑.
색상 섹션
에 대한 전체 설명[색상]섹션은:
| [색상] | 설명 |
|---|---|
| 헤더 | 테이블 헤더의 배경으로 사용될 색상 인덱스입니다. 기본값은 17입니다. |
| 몸 | 테이블 본문의 배경으로 사용되는 색상 인덱스입니다. 기본값은 19입니다. |
| 이탤릭체 | 설명 텍스트를 작성할 때 글꼴에 사용되는 색상 인덱스입니다. 기본값은 밝은 회색(색상 인덱스 48)입니다. |
그[xmlcolors]섹션은 생성될 XML 파일의 색상을 지정하는 데 사용됩니다.
사용자 정의 형식
형식 문자열은 네 부분으로 구성됩니다:
[$x>0$ 형식];[$x<0$ 형식];[$x=0$ 형식];[문자열 형식]
Excel 도움말에 제시된 예는 다음과 같습니다:
#,###.00_);[빨간색](#,###.00);0.00;"판매량 "@
여기에 사용된 코드의 의미는 다음과 같습니다:
| 문자 서식 지정 중 | 설명 |
|---|---|
| #(숫자 기호) | 유효 숫자만 표시하고 중요하지 않은 0은 표시하지 않습니다. |
| , (쉼표) | 쉼표를 천 단위 구분 기호로 표시하거나 숫자를 천의 배수로 확장하려면 숫자 형식에 쉼표를 포함시키십시오. |
| 0(영) | 숫자의 자릿수가 형식에 있는 0보다 적은 경우 중요하지 않은 0을 표시합니다. |
| _(밑줄) | 숫자 형식에서 문자 너비만큼 공백을 생성하려면 밑줄을 포함하고 그 뒤에 문자를 입력하세요. 예를 들어 밑줄 뒤에 오른쪽 괄호가 오는 경우(예:_), 양수는 괄호로 묶인 음수와 올바르게 정렬됩니다. |
| [색상] | 다음 중 하나[검은색], [파란색], [청록색], [녹색], [마젠타색], [빨간색], [백색], [노란색]. |
| @ (표지판에서) | at 기호 포함(@) 셀에 입력된 텍스트를 표시하려는 섹션에 있습니다. |
추가 형식 문자는 다음과 같습니다:
| 문자 서식 지정 | 설명 |
|---|---|
| ? (물음표) | Courier New와 같은 고정 폭 글꼴로 포맷할 때 소수점이 정렬되도록 소수점 양쪽에 중요하지 않은 0에 대한 공백을 추가합니다. ?를 사용할 수도 있습니다. 다양한 자릿수를 갖는 분수의 경우. |
| 조건 | 조건은 다음과 같이 지정할 수 있습니다:[빨간색][<=100];[파란색][>100]. |
| 지수 | 숫자를 과학적인 형식으로 표시하려면 섹션에 지수 코드를 사용하십시오.E-, E+, E-, 또는E+. |
유용한 형식은 다음과 같습니다:
[설정] 값 형식=#.????
소수점에 숫자를 정렬하고 목록 파일과 마찬가지로 0을 점으로 표시합니다.
예
모델 gdx2xls1: trnsport.무료 슬롯 가져오기
이 예는 다음 문제를 해결합니다.trnsport.gms모델 라이브러리에서 모델을 만들고 전체 기호 테이블이 포함된 무료 슬롯 파일을 생성합니다. 이 무료 슬롯 파일은 Excel로 내보내지고 MS Excel이 실행되어 결과를 검사합니다. 이는 매우 빠르게 실행되어야 하는 작은 예입니다.
$onText
GDX2XLS 테스트. 모든 기호를 덤프합니다.
trnsport.gms를 trnsport.xlsx로 변환합니다.
$offText
'=gamslib trnsport'를 실행합니다.
'=gams trnsport lo=3 무료 슬롯=trnsport'를 실행합니다.
'=gdx2xls trnsport.무료 슬롯'를 실행합니다.
ExecuteTool 'win32.shellExecute trnsport.xlsx';
참고: 외부 프로그램의 등호는 우리가 쉘을 거치지 않는다는 것을 나타냅니다(예:command.com또는cmd.exe). 이렇게 하면 외부 프로그램을 찾을 수 없는 경우 안정성이 향상됩니다. 이러한 경우 적절한 오류가 발생합니다. '='가 없으면 이러한 오류는 감지되지 않고 GAMS 모델은 계속됩니다.
'executeTool 'win32.shellExecute trnsport.xlsx';` 명령은 Excel을 실행하여 .XLSX 파일을 볼 것입니다.
모델 gdx2xls2: indus89.무료 슬롯 가져오기
이 예는 다음 문제를 해결합니다.indus89.gms40888_41163
$onText
GDX2XLS 테스트. 모든 기호를 덤프합니다.
indus89.gms를 indus89.xlsx로 변환합니다. 이 소요
기호가 많기 때문에 더 길어집니다.
$offText
'=gamslib indus89'를 실행합니다.
'=gams indus89 lo=3 무료 슬롯=indus89'를 실행합니다.
'=gdx2xls indus89.무료 슬롯'를 실행합니다.
ExecuteTool 'win32.shellExecute indus89.xlsx';
모델 무료 슬롯3: 큰 테이블
이것은 GAMS에서 대규모 식별자를 생성하는 인위적인 예입니다. 이 매개변수는 Excel이 처리할 수 있는 행 수만큼 많은 요소를 포함합니다.
$onText
GDX2XLS 테스트. 65536-3=65533개의 레코드가 있는 단일 기호.
XLS가 처리할 수 있는 최대 행은 65536입니다. XLSX 파일은 백만 개가 약간 넘는 행을 허용합니다.
$offText
i / i1*i65533 / 설정;
매개변수 p(i);
p(i) = 균일(-100,100);
Execute_unload 'test.무료 슬롯', p;
'=gdx2xls test.무료 슬롯'를 실행합니다.
ExecuteTool 'win32.shellExecute test.xlsx';
행이 너무 많은 스프레드시트를 생성하면 XLSX 파일 기록기가 반환됩니다.OLE 오류 800A03EC. XML 파일을 생성할 때 Excel에서 파일을 로드할 때 오류가 발생합니다.
모델 무료 슬롯4: 특수 값 매핑
다음과 같은 특수 값을 저장하려면inf, eps, NA데이터베이스의 숫자 필드에서 무료 슬롯는 매핑을 사용합니다. 이 매핑은 INI 파일을 사용하여 변경할 수 있습니다.
$onText
GDX2XLS 테스트.
특수 값 매핑을 확인하세요.
$offText
$onEcho > m.ini
[설정]
inf=1.0e100
mininf=-1.0e100
EPS=0.0
na=#NA!
undf=#UNDF!
$offEcho
매개변수 p(*) / i1 inf, i2 -inf, i3 eps, i4 na /;
p('i5') = 1/0;
디스플레이 p;
* 매개변수 p를 p.xlsx에 저장
* 특수 값은 기본값으로 변환됩니다.
Execute_unload "p.무료 슬롯", p;
'=gdx2xls p.무료 슬롯'를 실행합니다.
ExecuteTool 'win32.shellExecute p.xlsx';
* 새 매핑을 사용하여 q.xls에 매개변수 p를 저장합니다.
* INF -> 1.0e100(숫자)
* -INF -> -1.0e100(숫자)
* EPS -> 0.0(숫자)
* NA -> #NA! (문자열)
* UNDF -> #UNDF! (문자열)
*
Execute_unload "q.무료 슬롯", p;
'=gdx2xls q.무료 슬롯 @m.ini'를 실행합니다.
ExecuteTool 'win32.shellExecute q.xlsx';
Excel이 이 숫자에 대해 작업을 수행할 수 있도록 하려면 숫자 값이 중요합니다.
모델 무료 슬롯8: 맞춤 형식
우리는 사용자 정의 값 형식을 사용하여 다양한 값에 색상을 지정합니다.x<0, x=0, x>0다르게. 소수점도 맞춥니다.
$onText
GDX2XLS 예: 사용자 정의 형식 사용
$offText
$onEcho > mexls.ini
[설정]
valueformat=[파란색]#.????;[빨간색]-#.????;[녹색]0.????;[자홍색]
$offEcho
'=gamslib mexls'를 실행합니다.
'=gams mexls lo=3 무료 슬롯=mexls'를 실행합니다.
'=gdx2xls mexls.무료 슬롯 @mexls.ini'를 실행합니다.
ExecuteTool 'win32.shellExecute mexls.xlsx';
모델 무료 슬롯9: 사용자 정의 형식 2
이것은 더 유용한 사용자 정의 형식을 사용합니다valueformat=#.????(참조그림 7).
$onText
GDX2XLS 예: 사용자 정의 형식 사용
$offText
$onEcho > align.ini
[설정]
값 형식=#.????
$offEcho
'=gamslib mexls'를 실행합니다.
'=gams mexls lo=3 무료 슬롯=mexls'를 실행합니다.
'=gdx2xls mexls.무료 슬롯 @align.ini'를 실행합니다.
ExecuteTool 'win32.shellExecute align.xlsx';