Cells GridWeb ile çalışma

Çalışma Sayfasında Cells’e Erişme

Bu konu, GridWeb’in en temel özelliğine bakarak hücreleri ele almaktadır: hücrelere erişim.

Her çalışma sayfası, GridCell nesnelerinin bir koleksiyonu olan bir GridCells nesnesi içerir. Bir GridCell nesnesi, Aspose.Cells.GridWeb’deki bir hücreyi temsil eder. GridWeb kullanarak herhangi bir hücreye erişmek mümkündür. Tercih edilen iki yöntem vardır:

Aşağıda, her bir yaklaşım tartışılmaktadır.

Cell Adını Kullanma

Tüm hücrelerin benzersiz bir adı vardır. Örneğin, A1, A2, B1, B2 vb. Aspose.Cells.GridWeb, geliştiricilerin hücre adını kullanarak istenen herhangi bir hücreye erişmesine olanak tanır. Hücre adını (bir dizin olarak) GridWorksheet’in GridCells koleksiyonuna geçirmeniz yeterlidir.

For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
//Accessing the worksheet of the Grid that is currently active
GridWorksheet sheet = gridweb.getWorkSheets().get(gridweb.getActiveSheetIndex());
//Accessing "B1" cell of the worksheet
GridCell cell = sheet.getCells().get("B1");

Satır ve Sütun İndekslerini Kullanma

Bir hücre, satır ve sütun indeksleri cinsinden konumuna göre de tanınabilir. Bir hücrenin satır ve sütun dizinlerini GridWorksheet’in GridCells koleksiyonuna geçirmeniz yeterlidir. Bu yaklaşım yukarıdakinden daha hızlıdır.

For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
//Accessing the worksheet of the Grid that is currently active
GridWorksheet sheet = gridweb.getWorkSheets().get(gridweb.getActiveSheetIndex());
//Accessing "B1" cell of the worksheet using its row and column indices
GridCell cell = sheet.getCells().get(0, 1);

Cell Değerine Erişme ve Değiştirme

Çalışma Sayfasında Cells’e Erişme hücrelere erişim tartışıldı. Bu konu, tartışmayı GridWeb API kullanarak hücre değerlerine nasıl erişileceğini ve değiştirileceğini gösterecek şekilde genişletir.

Bir Cell Değerine Erişme ve Değiştirme

Dize Değerleri

Bir hücreye erişmeden ve hücrenin değerini değiştirmeden önce, hücrelere nasıl erişeceğinizi bilmeniz gerekir. Hücrelere erişim için farklı yaklaşımlar hakkında ayrıntılar için bkz.Çalışma Sayfasında Cells’e Erişme.

Her hücrenin getStringValue() adında bir özelliği vardır. Bir hücreye erişildikten sonra geliştiriciler, hücrelerin dize değerine erişmek için getStringValue() yöntemine erişebilir.

For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
//Accessing the worksheet of the Grid that is currently active
GridWorksheet sheet = gridweb.getWorkSheets().get(gridweb.getActiveSheetIndex());
//Accessing "B1" cell of the worksheet
GridCell cell = sheet.getCells().get("B1");
//Inserting & modifying the string value of "B1" cell
cell.putValue("Hello Aspose.Grid");

Her Türlü Değer

Aspose.Cells.GridWeb ayrıca her hücre için özel bir yöntem olan putValue sağlar. Bu yöntemle, bir hücreye herhangi bir değer türünü (Boolean, int, double, DateTime ve string) eklemek veya değiştirmek mümkündür.

For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
//Accessing the worksheet of the Grid that is currently active
GridWorksheet sheet = gridweb.getWorkSheets().get(gridweb.getActiveSheetIndex());
//Accessing "B1" cell of the worksheet
GridCell cell = sheet.getCells().get("B1");
//Putting a value in "B1" cell
cell.putValue(Calendar.getInstance());

PutValue yönteminin, dize biçimindeki her türlü değeri alıp otomatik olarak uygun bir veri türüne dönüştürebilen aşırı yüklenmiş bir sürümü de vardır. Bunun gerçekleşmesi için aşağıdaki örnekte gösterildiği gibi true Boolean değerini putValue yönteminin başka bir parametresine iletin.

For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
//Accessing the worksheet of the Grid that is currently active
GridWorksheet sheet = gridweb.getWorkSheets().get(gridweb.getActiveSheetIndex());
//Accessing "B1" cell of the worksheet
GridCell cell = sheet.getCells().get("B1");
//Putting a numeric value as string in "B1" cell that will be converted to a suitable data type automatically
cell.putValue("19.4", true);

Cells’e Formüller Ekleme

Aspose.Cells.GridWeb’in sunduğu en değerli özellik formül veya fonksiyon desteğidir. Aspose.Cells.GridWeb, çalışma sayfalarındaki formülleri hesaplayan kendi Formül Motoruna sahiptir. Aspose.Cells.GridWeb hem yerleşik hem de kullanıcı tanımlı işlevleri veya formülleri destekler. Bu konu, Aspose.Cells.GridWeb API kullanarak hücrelere formül eklemeyi ayrıntılı olarak ele almaktadır.

Formül Nasıl Eklenir ve Hesaplanır?

Bir hücrenin Formül özelliğini kullanarak hücrelerdeki formülleri eklemek, bunlara erişmek ve değiştirmek mümkündür. Aspose.Cells.GridWeb, basitten karmaşığa değişen kullanıcı tanımlı formülleri destekler. Ancak, çok sayıda yerleşik işlev veya formül (Microsoft Excel’e benzer) Aspose.Cells.GridWeb ile birlikte sağlanır. Yerleşik işlevlerin tam listesini görmek için lütfen buna bakın.desteklenen işlevlerin listesi.

For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
//Accessing the worksheet of the Grid that is currently active
GridWorksheet sheet = gridweb.getWorkSheets().get(gridweb.getActiveSheetIndex());
//Putting some values to cells
sheet.getCells().get("A1").putValue("1st Value");
sheet.getCells().get("A2").putValue("2nd Value");
sheet.getCells().get("A3").putValue("Sum");
sheet.getCells().get("B1").putValue(125.56);
sheet.getCells().get("B2").putValue(23.93);
//Calculating all formulas added in worksheets
gridweb.getWorkSheets().calculateFormula();
//Adding a simple formula to "B3" cell
sheet.getCells().get("B3").setFormula("=SUM(B1:B2)");

B3 hücresine eklenen ancak GridWeb tarafından hesaplanmayan formül

yapılacaklar:resim_alternatif_metin

Yukarıdaki ekran görüntüsünde, B3’e bir formül eklendiğini ancak henüz hesaplanmadığını görebilirsiniz. Tüm formülleri hesaplamak için, formülleri aşağıda gösterildiği gibi çalışma sayfalarına ekledikten sonra GridWeb denetiminin GridWorksheetCollection ‘ın measureFormula yöntemini çağırın.

For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
//Calculating all formulas added in worksheets
gridweb.getWorkSheets().calculateFormula();

Kullanıcılar ayrıca tıklayarak formülleri hesaplayabilir.Göndermek.

GridWeb’in Gönder düğmesini tıklatmak

yapılacaklar:resim_alternatif_metin

ÖNEMLİ : Bir kullanıcıKayıt etmek veyaGeri alma düğmeleri veya sayfa sekmeleri, tüm formüller GridWeb tarafından otomatik olarak hesaplanır.

Hesaplamadan sonra formül sonucu

yapılacaklar:resim_alternatif_metin

Diğer Çalışma Sayfalarından Cells’e Referans Verme

Aspose.Cells.GridWeb’i kullanarak, farklı çalışma sayfalarında depolanan değerlere formüllerinde başvurmak, karmaşık formüller oluşturmak mümkündür.

Farklı bir çalışma sayfasından bir hücre değerine başvurmak için sözdizimi SayfaAdı!HücreAdı şeklindedir.

For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
//Accessing the worksheet of the Grid that is currently active
GridWorksheet sheet = gridweb.getWorkSheets().get(gridweb.getActiveSheetIndex());
//Adding a bit complex formula to "A1" cell
sheet.getCells().get("A1").setFormula("=SUM(F1:F7)/ AVERAGE (E1:E7)-Sheet1!C6");

GridWeb’in GridCell’inde Veri Doğrulaması Oluşturma

Aspose.Cells.GridWeb eklemenizi sağlarVeri doğrulama GridWorksheet.getValidations().add() yöntemini kullanarak. Bu yöntemi kullanarak, belirtmeniz gerekirCell Aralık . Ancak, tek bir GridCell’de Veri Doğrulama oluşturmak istiyorsanız, bunu doğrudan GridCell.createValidation() yöntemini kullanarak yapabilirsiniz. Benzer şekilde, kaldırabilirsinizVeri doğrulama GridCell.removeValidation() yöntemini kullanarak bir GridCell’den.

Aşağıdaki örnek kod, birVeri doğrulama B3 hücresinde. 20 ile 40 arasında olmayan bir değer girerseniz, B3 hücresi görünecektir.Doğrulama Hatası şeklindekırmızı XXXX bu ekran görüntüsünde gösterildiği gibi.

yapılacaklar:resim_alternatif_metin

For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
//Access first worksheet
GridWorksheet sheet = gridweb.getWorkSheets().get(0);
//Access cell B3
GridCell cell = sheet.getCells().get("B3");
//Add validation inside the gridcell
//Any value which is not between 20 and 40 will cause error in a gridcell
GridValidation val = cell.createValidation(GridValidationType.WHOLE_NUMBER, true);
val.setFormula1("=20");
val.setFormula2("=40");
val.setOperator(OperatorType.BETWEEN);
val.setShowError(true);
val.setShowInput(true);

Özel Komut Düğmeleri Oluşturma

Aspose.Cells.GridWeb, Gönder, Kaydet ve Geri Al gibi özel düğmeler içerir. Tüm bu düğmeler, Aspose.Cells.GridWeb için belirli görevleri yerine getirir. Özel görevleri gerçekleştiren özel düğmeler eklemek de mümkündür. Bu konuda, bu özelliğin nasıl kullanılacağı açıklanmaktadır.

Aşağıdaki örnek kod, özel bir komut düğmesinin nasıl oluşturulacağını ve tıklama olayının nasıl işleneceğini açıklar. Özel komut düğmeniz için herhangi bir simgeyi kullanabilirsiniz. Gösterim amacıyla bu resim ikonunu kullandık.

yapılacaklar:resim_alternatif_metin

Aşağıdaki ekran görüntüsünde görebileceğiniz gibi, kullanıcı özel komut düğmesine tıkladığında A1 hücresine şunu söyleyen bir metin ekler:“Özel Komut Düğmem Tıklandı."

yapılacaklar:resim_alternatif_metin

For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
//Instantiating a CustomCommandButton object
CustomCommandButton button = new CustomCommandButton();
//Setting the command for button
button.setCommand("MyButton");
//Setting text of the button
button.setText("MyButton");
//Setting tooltip of the button
button.setToolTip("My Custom Command Button");
//Setting image URL of the button
button.setImageUrl("icon.png");
//Adding button to CustomCommandButtons collection of GridWeb
gridweb.getCustomCommandButtons().add(button);

Özel Komut Düğmesinin Olay İşleme

Aşağıdaki örnek kod, özel komut düğmesinin olay işlemesinin nasıl gerçekleştirileceğini açıklar.

For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
//Create custom command event handler to handle the click event
CustomCommandEventHandler cceh=new CustomCommandEventHandler(){
public void handleCellEvent(Object sender, String command){
//Identifying a specific button by checking its command
if (command.equals("MyButton"))
{
//Accessing the cells collection of the worksheet that is currently active
GridWorksheet sheet = gridweb.getWorkSheets().get(gridweb.getActiveSheetIndex());
//Putting value to "A1" cell
sheet.getCells().get("A1").putValue("My Custom Command Button is Clicked.");
sheet.getCells().setColumnWidth(0, 50);
}
}
};
//Assign the custom command event handler created above to gridweb
gridweb.CustomCommand = cceh;

GridWeb için hücreleri biçimlendirme

Olası Kullanım Senaryoları

GridWeb artık kullanıcıların hücre verilerini %3 gibi yüzde biçiminde girmelerini destekliyor ve hücredeki veriler otomatik olarak %3,00 olarak biçimlendirilecek. Bununla birlikte, hücre stilini, GridTableItemStyle.NumberType a 9 veya 10 olan Yüzde Biçimine ayarlamanız gerekir. 9 sayısı %3’ü %3 olarak biçimlendirir, ancak 10 sayısı %3’ü %3,00 olarak biçimlendirir.

GridWeb Çalışma Sayfasının Cell Verisini Yüzde Biçiminde Girin

Aşağıdaki örnek kod, A1 GridTableItemStyle.NumberType hücresini 10 olarak ayarlar, bu nedenle %3 giriş verisi, ekran görüntüsünde gösterildiği gibi otomatik olarak %3,00 olarak biçimlendirilir.

yapılacaklar:resim_alternatif_metin

Basit kod

For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
//Access cell A1 of first gridweb worksheet
GridCell cellA1 = gridweb.getWorkSheets().get(0).getCells().get("A1");
//Access cell style and set its number format to 10 which is a Percentage 0.00% format
GridTableItemStyle st = cellA1.getStyle();
st.setNumberType(10);
cellA1.setStyle(st);