* 조건에 따른 색상 설정.
초기화 과정에서는 그런 기능은 없습니다. 따라서 조회 XML안에 TR,TD에 속성을 넣으시거나 조회 후 현재와 같이 스크립트를 통해 주는 방법 밖에는 없습니다. 여기서 약간의 팁을 드리자면 보통 이런 작업을 할때는 스크립트와 시트 객체간의 호출이 많아질 수로 속도가 느려지게 됩니다. 따라서 최대한 속도를 빠르게 하기 위해서는 연산이 필요한 부분은 한번에 스크립트로 가져와 연산하고 이후 한꺼번에 반영하는 것이 좋습니다.
간단한 예를 보여드리자면 아래와 같습니다.
속도가 느려지는 작업 예)
for(var i=0;i<mySheet.LastRow;i++){
if(mySheet.CellValue(i,8)<300){
mySheet.CellFontColor(i,8) = mySheet.WebColor("#FF0000");
}
}
속도가 빠른 작업 예)
//8번 컬럼의 전체 데이터를 string 형태로 받는다.
var data = mySheet.GetRangeValue(0,8,mySheet.LastRow,8);
//스크립트 안에서 모두 작업한다.
var dataArr = data.split("^");
var rtnArr = new Array();
for(var i=0;i<dataArr.length;i++){
if(dataArr[i]<300){
//300 보다 작은 값은 모두 rtnArr배열에 넣는다.
rtnArr.push(i);
}
}
//한번에 시트에 반영하기 위해 받은 내용을 갖고 XML을 만든다.
var xmlstr = "<?xml version='1.0'?><sheet><data>";
for(var i=0;i<rtnArr.length;i++){
xmlstr += "<TR ROW='"+rtnArr[i]+"' COL='8'><TD COLOR='RED'></TD></TR>";
}
xmlstr += "</data></sheet>";
//만들어진 xml을 한번에 반영한다.
mySheet.LoadSearchXml(xmlstr , false, -1,true);
'Work Source > javascript(iBSheet)' 카테고리의 다른 글
자바스크립트 날짜(DATE) 계산 라이브러리 (0) | 2012.10.18 |
---|---|
iBSheet 에서 Row크기가 커서 스크롤시 부드럽게 안넘어갈 때 팁! (0) | 2012.03.28 |
시트내에서 소계 및 누계낼때 ShowSubSum() (0) | 2012.03.16 |
iBSheet 3.4.0.300 도움말 파일 (api) (0) | 2012.03.02 |