SpreadJSは、以下で説明するような、さまざまなセルの操作を提供します。
次のサンプルコードは、セル値を取得します。
JavaScript |
コードのコピー
|
---|---|
$(document).ready(function () { var spread = new GC.Spread.Sheets.Workbook(document.getElementById("ss"),{sheetCount:3}); var sheet = spread.getActiveSheet(); sheet.getCell(0, 0).formatter("0.00_);(0.00)"); sheet.getCell(1, 0).formatter("0.00_);(0.00)"); sheet.getCell(0, 1).formatter("0.00_);(0.00)"); sheet.getCell(1, 1).formatter("0.00_);(0.00)"); // Textプロパティに値を設定します。 sheet.getCell(0, 0).text("10"); // SetTextメソッドを呼び出して値を設定します。 sheet.setText(1, 0, "10"); // Valueプロパティに値を設定します。 sheet.getCell(0, 1).value(10); // SetValueメソッドを呼び出して値を設定します。 sheet.setValue(1, 1, 10); //セル値を取得します。 $("#button1").click(function() { alert("Obtaining cell values by referring to Text property: " + sheet.getCell(0, 0).text() + "\n" + "Obtaining cell values by calling GetText method: " + sheet.getText(1, 0) + "\n" + "Obtaining cell values by referring to Value property: " + sheet.getCell(0, 1).value() + "\n" + "Obtaining cell values by calling GetValue method: " + sheet.getValue(1, 1)); }); }); |
次のサンプルコードは、アクティブセルを設定します。
JavaScript |
コードのコピー
|
---|---|
$("#button1").click(function () { // セル(3,3)をアクティブセルとして設定します。 activeSheet.setActiveCell(3, 3); }); |
次のサンプルコードは、アクティブセルの位置を設定します。
JavaScript |
コードのコピー
|
---|---|
$("#button1").click(function () { // セル(3,3)をアクティブセルとして設定します。 sheet.setActiveCell(3, 3); // アクティブセルを左上に表示します。 sheet.showCell(3, 3, GC.Spread.Sheets.VerticalPosition.top, GC.Spread.Sheets.HorizontalPosition.left); }); |
次のサンプルコードは、複数の選択領域を作成します。
JavaScript |
コードのコピー
|
---|---|
$(document).ready(function () { var spread = new GC.Spread.Sheets.Workbook(document.getElementById("ss"),{sheetCount:3}); var sheet = spread.getActiveSheet(); // 複数のセル範囲の選択を有効にします。 sheet.selectionPolicy(GC.Spread.Sheets.SelectionPolicy.MultiRange); // 2つの選択領域を作成します。 sheet.addSelection(0, 0, 2, 2); sheet.addSelection(3, 3, 2, 2); }); |
次のサンプルコードは、複数の選択領域を取得します。
JavaScript |
コードのコピー
|
---|---|
window.onload = function() { var spread = new GC.Spread.Sheets.Workbook(document.getElementById("ss"),{sheetCount:3}); var activeSheet = spread.getActiveSheet(); activeSheet.setRowCount(5); activeSheet.setColumnCount(5); $("#button1").click(function() { // 選択領域を取得します。 var selectedRanges = spread.getActiveSheet().getSelections(); for(var i = 0; i < selectedRanges.length; i++) { console.log("---------------------------"); console.log("Using Range class"); console.log("-------------------------"); console.log("Selected top row index: " + selectedRanges[i].row); console.log("Number of selected rows: " + selectedRanges[i].rowCount); console.log("Selected first column index: " + selectedRanges[i].col); console.log("Number of selected columns: " + selectedRanges[i].colCount); } }); } |
次のサンプルコードは、条件付き書式を設定します。
JavaScript |
コードのコピー
|
---|---|
window.onload = function() { var spread = new GC.Spread.Sheets.Workbook(document.getElementById("ss"),{sheetCount:3}); var activeSheet = spread.getActiveSheet(); // それぞれの条件付きスタイルを作成します。 var styleBlue = new GC.Spread.Sheets.Style(); var stylePink = new GC.Spread.Sheets.Style(); var styleLime = new GC.Spread.Sheets.Style(); var styleYellow = new GC.Spread.Sheets.Style(); var styleEmpty = new GC.Spread.Sheets.Style(); styleBlue.backColor = "blue"; styleBlue.foreColor = "white"; stylePink.backColor = "pink"; styleLime.backColor = "lime"; styleYellow.backColor = "yellow"; styleEmpty.backColor = undefined; styleEmpty.foreColor = undefined; // それぞれのセルに条件付き書式を設定します。 activeSheet.conditionalFormats.addCellValueRule( GC.Spread.Sheets.ConditionalFormatting.ComparisonOperators.EqualsTo, 0, undefined, styleEmpty, [new GC.Spread.Sheets.Range(1, 1, 1, 1)]); activeSheet.conditionalFormats.addCellValueRule( GC.Spread.Sheets.ConditionalFormatting.ComparisonOperators.LessThan, 10,undefined,styleBlue, [new GC.Spread.Sheets.Range(1, 1, 1, 1)]); activeSheet.conditionalFormats.addCellValueRule( GC.Spread.Sheets.ConditionalFormatting.ComparisonOperators.Between, 20,50,stylePink, [new GC.Spread.Sheets.Range(2, 1, 1, 1)]); activeSheet.conditionalFormats.addCellValueRule( GC.Spread.Sheets.ConditionalFormatting.ComparisonOperators.Between, 50,80,styleLime, [new GC.Spread.Sheets.Range(3, 1, 1, 1)]); activeSheet.conditionalFormats.addCellValueRule( GC.Spread.Sheets.ConditionalFormatting.ComparisonOperators.GreaterThan, 80, undefined, styleYellow, [new GC.Spread.Sheets.Range(4, 1, 1, 1)]); activeSheet.getCell(2, 1).value(25); activeSheet.getCell(3, 1).value(77); activeSheet.getCell(4, 1).value(88); } |
次のサンプルコードは、セルの位置とサイズを取得します。
JavaScript |
コードのコピー
|
---|---|
spread.getActiveSheet().bind(GC.Spread.Sheets.Events.CellClick, function (e, info) { if(info.sheetArea ===GC.Spread.Sheets.SheetArea.viewport) { console.log("Clicked cell index (" + info.row + "," + info.col + ")"); // 指定のインデックスに位置する標準セルの座標情報を取得します。 var cellRect = spread.getActiveSheet().getCellRect(info.row, info.col); console.log("X coordinate:" + cellRect.x); console.log("Y coordinate:" + cellRect.y); console.log("Cell width:" + cellRect.width); console.log("Cell height:" + cellRect.height); } }); |
次のサンプルコードは、セルのインデックスを取得します。
JavaScript |
コードのコピー
|
---|---|
var spread = new GC.Spread.Sheets.Workbook($("#ss")[0]); var activeSheet = spread.getActiveSheet(); $("#ss").click(function (e) { // マウスでクリックされた、固定行/列または行/列ヘッダ以外の標準セルに対し、セルインデックスを取得します。 var offset = $("#ss").offset(); var x = e.pageX - offset.left; var y = e.pageY - offset.top; var target = spread.getActiveSheet().hitTest(x, y); if(target && (target.rowViewportIndex === 0 || target.rowViewportIndex === 1) && (target.colViewportIndex === 0 || target.colViewportIndex === 1)) { console.log("Row index of mouse-clicked cells: " + target.row); console.log("Column index of mouse-clicked cells: " + target.col); } }); |