엑셀 파일의 내용을 시트로
import합니다.
사용 전 서버모듈 설치와/plugins/ibsheet-excel.js스크립트 로드가 필요합니다.
이 함수를 호출하면 파일 선택 창이 나타나고, 사용자가 선택한 엑셀 파일이Cfg.Export속성에 지정한LoadExcel.jsp(또는LoadExcel.aspx)로 전달됩니다. 이 jsp 파일이 엑셀을 파싱해 JSON 형태로 시트에 반환합니다. 시트마다 반복 설정이 번거로우면 IBSheet.CommonOptions로 공통 적용할 수 있습니다.
엑셀 데이터를 시트에 어떻게 매핑할지는mode옵션이 결정합니다. (기본값HeaderMatch— 헤더 타이틀 매칭)
엑셀 다운로드/업로드 환경설정, 에러, 트러블슈팅 상세는 IBSheet 지원 포털의 엑셀 가이드 모음에서 확인하세요.
void loadExcel( param );
| Name | Type | Required | Description |
|---|---|---|---|
| append | boolean |
선택 | 시트의 기존 데이터를 뒤에 엑셀의 데이터를 추가할지 여부 설정을 하지 않으면 기존데이터는 모두 삭제한 후 엑셀의 데이터가 추가됨. 0(false):기존 데이터 제거 후 엑셀 데이터 추가 (default)1(true):기존 데이터에 엑셀 데이터 추가 |
| fileExt | string |
선택 | 업로드 가능한 파일 확장자를 구분자("|")로 연결하여 설정합니다. (default: "xls|xlsx") |
| maxFileSize | string |
선택 | 최대 업로드 가능한 파일 사이즈. (MB단위이며 설정하지 않으면 무제한입니다.) |
| mode | string |
선택 | "HeaderMatch", "NoHeader", "HeaderSkip", "FullLoad" 중에 하나의 문자열을 입력합니다.각 모드의 의미는 다음과 같습니다.
default: "HeaderMatch")
|
| next | object |
선택 | 데이터 로우 객체 지정한 행 위에부터 데이터 append. (append:1(true)일때만 사용 가능) |
| startRow | number |
선택 | 엑셀에서 시트가 몇번째 행에서 시작하는지 설정합니다. 설정하지 않으면 엑셀의 첫번째 행부터 (1부터시작) 읽어들임. |
| startCol | number |
선택 | 엑셀에서 시트가 몇번째 열에서 시작하는지 설정합니다. 설정하지 않으면 엑셀의 첫번째 열부터 (1부터시작) 읽어들임. mode: HeaderMatch의 경우 (7,12)에 있는 시트를 찾을 때, startRow: 7 만 설정해 줘도 그 Row에 헤더길이만큼 텍스트를 보기 때문에 startCol을 설정할 필요가 없다. 만약, startCol을 사용할 경우, 엑셀에 있는 시트에 첫번째 컬럼부터 startCol이 시작하게 된다. |
| workSheetName | string |
선택 | 읽어들일 엑셀 파일의 워크시트 명을 설정합니다. 일치하는 워크시트 명이 없으면 첫번째 워크시트를 읽습니다. |
| workSheetNameStrict | boolean |
선택 | workSheetName에 설정한 워크시트가 없는 경우 첫번째 워크시트를 로드하지 않고 -17 에러 코드를 반환합니다0(false):workSheetName에 설정된 워크시트가 없는 경우 첫번째 워크시트를 로드 (default)1(true):workSheetName에 설정된 워크시트가 없는 경우 -17 에러 코드를 반환 |
| workSheetNo | number |
선택 | 읽어들일 엑셀 파일의 워크시트 순번을 설정합니다. 설정하지 않으면 첫번째 워크시트를 읽습니다. |
| columnMapping | string |
선택 | 엑셀 컬럼 번호를 이용해서 시트의 열 순서에 따라 데이터를 로드하는 옵션입니다. 구분자("|")로 연결하여 설정합니다.(1번부터 시작) mode 속성값은 무시된다. |
| sendParam | object |
선택 | 엑셀 로드시 서버로 전달할 파라미터를 설정합니다. |
| endRow | number |
선택 | 엑셀에서 몇번째 행까지 읽어들일 지 설정합니다. 설정하지 않으면 끝까지 읽어들입니다. 0부터 시작합니다. |
| reqHeader | object |
선택 | 서버 전송 헤더에 사용자가 지정한 헤더 정보를 설정합니다. |
| skipEmptyRow | boolean |
선택 | 엑셀 로드 시 빈 행을 생략할 지 설정합니다.0(false):엑셀 로드 데이터에 빈 행 정보 포함1(true):엑셀 로드 데이터에 빈 행 정보 제외 (default) |
| workbookPassword | string |
선택 | 읽어들일 엑셀 파일에 비밀번호가 설정된 경우 사용하는 옵션입니다. xlsx 확장자 파일에서만 지원됩니다. |
| useXhr | boolean |
선택 | xhr 통신을 이용해 엑셀 파일을 로드합니다.0(false):xhr 통신 사용 안함 (default)1(true):xhr 통신 사용 |
| uploadImage | boolean |
선택 | 셀 위에 띄워진 이미지를 업로드할지 여부를 결정합니다. 0(false): 셀 위에 띄워진 이미지를 업로드하지 않음 1(true):셀 위에 띄워진 이미지를 업로드함 (default) |
| skipSEQ | boolean |
선택 | mode: NoHeader, HeaderSkip으로 데이터를 업로드할 때 SEQ 컬럼을 스킵하고 데이터를 업로드합니다. columnMapping을 설정한 경우에는 해당 인자가 동작하지 않습니다. (default: 0) |
| activeSheet | boolean |
선택 | 엑셀 업로드시 활성화된 워크시트를 업로드합니다. |

FullLoad 모드는 엑셀 업로드시 파일에 존재하는 모든 워크시트를 'NoHeader' 모드 상태로 업로드 다이얼로그에 로드하는 모드입니다.
로드된 워크 시트 중 한 가지를 선택한 뒤, 확인 버튼을 클릭해 선택된 워크 시트를 원본 시트에 로드하실 수 있습니다.
FullLoad 모드를 사용하시려면 반드시 다이얼로그 플러그인을 1.0.11 이후 버전으로, 서버모듈을 1.1.21 이후 버전으로, 엑셀 플러그인을 1.0.21 이후 버전으로 패치해주셔야 됩니다.
none
// 모드가 HeaderMatch, 엑셀이 5번째 로우의 위치, 워크시트 이름은 12월결산인 엑셀을 로드
var param = {startRow:5, mode:"HeaderMatch", workSheetName:"12월결산"};
sheet.loadExcel(param);
// 모드가 HeaderSkip, 엑셀이 4번째 로우, 3번째 컬럼부터 시작.
var param = {startRow:4, startCol:3, mode:"HeaderMatch"}
sheet.loadExcel(param);
// IBSheet의 첫번째 컬럼에 엑셀의 5번째 컬럼의 값을 로딩하고, IBSheet 의 5번째 컬럼에 엑셀의 1번째 컬럼의 값을 로딩
sheet.loadExcel({columnMapping:"5|4|3|2|1"});
| product | version | desc |
|---|---|---|
| excel | 0.0.0 | 기능 추가 |
| excel | 0.0.8 | reqHeader 기능 추가 |
| excel | 1.0.12 | workSheetNameStrict 기능 추가 |
| dialog | 1.0.11 | FullLoad 기능 추가 (servermodule: 1.1.21, excel: 1.0.21) |
| excel | 1.1.8 | next 기능 추가 |
| excel | 1.1.23 | uploadImage 기능 추가 (servermodule: 2.0.2) |
| excel | 1.1.31 | skipSEQ 기능 추가 (servermodule: 2.0.13) |
| excel | 1.1.32 | activeSheet 기능 추가 (servermodule: 2.0.15) |