Spread.NET 表格控件 V12.1 正式發(fā)布!加入動(dòng)態(tài)數(shù)組,讓公式運(yùn)算更具效率

Spread.NET是一個(gè)在功能和布局上與 Excel 高度類似的 .NET表格控件,目前已廣泛應(yīng)用于財(cái)務(wù)、預(yù)算、工程、統(tǒng)計(jì)等領(lǐng)域的信息系統(tǒng)開(kāi)發(fā)中,通過(guò)強(qiáng)大的數(shù)據(jù)處理引擎和靈活的數(shù)據(jù)可視化呈現(xiàn),為商業(yè)表單控制面板提供了豐富、有效的內(nèi)容信息。

Spread.NET 表格控件 V12.1 正式發(fā)布!加入動(dòng)態(tài)數(shù)組,讓公式運(yùn)算更具效率

如今,Spread.NET 的全新版本 V12.1 已經(jīng)正式發(fā)布,該版本包含了諸多功能亮點(diǎn),如動(dòng)態(tài)數(shù)組支持(可大幅簡(jiǎn)化計(jì)算公式,提高公式運(yùn)算效率)、公式追蹤、交替樣式支持、與 VSTO 類似的基于 1 的索引、類似 RTD 的異步函數(shù)等。

在列舉 Spread.NET V12.1 的全部功能之前,請(qǐng)下載最新安裝程序,以便同步體驗(yàn)!

動(dòng)態(tài)數(shù)組支持:大幅簡(jiǎn)化計(jì)算公式,提高公式運(yùn)算效率

Excel 2019 推出了動(dòng)態(tài)數(shù)組函數(shù),用于簡(jiǎn)化復(fù)雜計(jì)算公式:使用動(dòng)態(tài)數(shù)組,返回值將自動(dòng)“輸出”到相鄰單元格中(未使用的)。用戶只需編寫一個(gè)簡(jiǎn)單的公式,而不是編寫復(fù)雜的數(shù)組公式就可解決多單元格問(wèn)題。

Spread.NET 表格控件 V12.1 正式發(fā)布!加入動(dòng)態(tài)數(shù)組,讓公式運(yùn)算更具效率

Excel 動(dòng)態(tài)數(shù)組功能預(yù)覽

作為一款與 Excel 高度類似的表格控件,在 Spread.NET V12.1 中,也加入了如 Excel 動(dòng)態(tài)數(shù)組一樣的功能。

如何在 Spread.NET 中使用動(dòng)態(tài)數(shù)組

首先,需要在 Spread 設(shè)計(jì)器中啟用動(dòng)態(tài)數(shù)組——默認(rèn)情況下,動(dòng)態(tài)數(shù)組不會(huì)自動(dòng)啟用,您需要通過(guò)以下方式之一顯式啟用它們:在Windows窗體的 Spread 設(shè)計(jì)器(Spread Designer)中,有一個(gè)新的“公式”選項(xiàng)卡,如下圖:

Spread.NET 表格控件 V12.1 正式發(fā)布!加入動(dòng)態(tài)數(shù)組,讓公式運(yùn)算更具效率

如何在 Spread.NET 中使用動(dòng)態(tài)數(shù)組

在“計(jì)算引擎”菜單中選中“動(dòng)態(tài)陣列”框,以啟用對(duì)動(dòng)態(tài)陣列的支持。

除此之外,您也可以使用代碼(通過(guò)調(diào)用 CalculationFeatures 函數(shù)),啟用動(dòng)態(tài)數(shù)組:

[C#]

fpSpread1.AsWorkbook().WorkbookSet.CalculationEngine.CalcFeatures = GrapeCity.Spreadsheet.CalcFeatures.DynamicArray;

[VB]

FpSpread1.AsWorkbook().WorkbookSet.CalculationEngine.CalcFeatures = GrapeCity.Spreadsheet.CalcFeatures.DynamicArray

舉例:鍵入類似“= {1,1,2,2,3}”的公式,該公式硬編碼水平溢出的數(shù)組值如下圖:

Spread.NET 表格控件 V12.1 正式發(fā)布!加入動(dòng)態(tài)數(shù)組,讓公式運(yùn)算更具效率

水平陣列使用','分隔符水平溢出

鍵入“= {1; 1; 2; 2; 3}}”這樣的公式,它硬編碼垂直溢出的數(shù)組值如下圖:

Spread.NET 表格控件 V12.1 正式發(fā)布!加入動(dòng)態(tài)數(shù)組,讓公式運(yùn)算更具效率

垂直數(shù)組使用';' 分隔符垂直溢出

鍵入“= {1,1,2,1,3; 1,1,2,1,3; 1,2,3,2,5; 1,2,3,2,5; 1,2 ,2,2,5}“ 這樣的公式,其硬編碼水平和垂直溢出的二維數(shù)組值如下圖:

Spread.NET 表格控件 V12.1 正式發(fā)布!加入動(dòng)態(tài)數(shù)組,讓公式運(yùn)算更具效率

二維數(shù)組垂直和水平溢出

在相鄰空白單元格中放置值的行為稱為“填充(Spilling)”,當(dāng)選擇溢出范圍內(nèi)的任何單元格時(shí),Spread.NET 會(huì)用淺藍(lán)色邊框,指示公式的“填充范圍”,并且FormulaTextBox將單元格公式顯示為已禁用且不可編輯。

Spread.NET 動(dòng)態(tài)數(shù)組的強(qiáng)大功能

Spread.NET 現(xiàn)在支持六種動(dòng)態(tài)數(shù)組函數(shù):

- SEQUENCE和RANDARRAY函數(shù)可以生成順序或隨機(jī)數(shù)據(jù)的數(shù)組

- FILTER、SORT、SORTBY和UNIQUE函數(shù)主要用于篩選、排序、刪除重復(fù)項(xiàng)等功能

使用動(dòng)態(tài)數(shù)組,當(dāng)您的數(shù)據(jù)發(fā)生變化時(shí),設(shè)計(jì)器將自動(dòng)調(diào)整大小并重新計(jì)算,讓您的數(shù)據(jù)分析工作前所未有的簡(jiǎn)單。

Spread.NET 動(dòng)態(tài)數(shù)組的使用場(chǎng)景

僅使用帶有 RANDARRAY 的 SORTBY,即可為列表創(chuàng)建隨機(jī)排序:

Spread.NET 表格控件 V12.1 正式發(fā)布!加入動(dòng)態(tài)數(shù)組,讓公式運(yùn)算更具效率

使用SORTBY和RANDARRAY隨機(jī)排序值列表

僅使用SEQUENCE和NOW函數(shù),實(shí)現(xiàn)每10分鐘創(chuàng)建一個(gè)時(shí)間表計(jì)劃標(biāo)題:

Spread.NET 表格控件 V12.1 正式發(fā)布!加入動(dòng)態(tài)數(shù)組,讓公式運(yùn)算更具效率

使用SEQUENCE安排每隔十分鐘

僅使用三個(gè)公式和TRANSPOSE、SORT、UNIQUE和SUMIFS函數(shù),直接在單元格中創(chuàng)建數(shù)據(jù)透視交叉分析表:

Spread.NET 表格控件 V12.1 正式發(fā)布!加入動(dòng)態(tài)數(shù)組,讓公式運(yùn)算更具效率

僅使用三個(gè)公式創(chuàng)建的數(shù)據(jù)透視交叉分析表

Spread.NET設(shè)計(jì)器增強(qiáng):加入公式追蹤功能

在使用公式時(shí),有時(shí)需要了解公式中引用了哪些單元格的數(shù)據(jù),這就涉及到公式追蹤的操作。在 Spread.NET V12.1 中,這些用于公式追蹤的工具可以在Trace Precedents,Trace Dependents和Remove Arrows中的Formula Auditing組下找到:

Spread.NET 表格控件 V12.1 正式發(fā)布!加入動(dòng)態(tài)數(shù)組,讓公式運(yùn)算更具效率

新增如 Excel 般的行、列交替樣式支持

Spread.NET V12.1 加入了如 Excel 般的行、列交替樣式支持,為交替行或列(通常稱為色帶)添加顏色,以便使工作表中的數(shù)據(jù)更易于瀏覽,此功能包括對(duì)內(nèi)置 Excel 樣式和主題的支持,如顏色漸變和圖案填充。

Spread.NET 表格控件 V12.1 正式發(fā)布!加入動(dòng)態(tài)數(shù)組,讓公式運(yùn)算更具效率

Spread.NET 表格控件 V12.1 正式發(fā)布!加入動(dòng)態(tài)數(shù)組,讓公式運(yùn)算更具效率

新增如 Excel 般的行、列交替樣式支持

實(shí)現(xiàn)方法:當(dāng)需使用交替樣式時(shí),直接調(diào)用 AlternatingRows類包裝的新接口即可,或者您也可以直接調(diào)用GrapeCity.Spreadsheet.dll的新公共接口來(lái)創(chuàng)建交替的行和列樣式。

與 VSTO 類似的基于 1 的索引:更易于 VBA 代碼移植

通過(guò)創(chuàng)建IWorkbook,Spread.NET 為所有 GrapeCity.Spreadsheet.IWorkbook API(如Microsoft Excel® VSTO API)提供了與 VSTO 類似的基于 1 的索引,這樣做的目的是:可以輕松地將 Excel VBA 代碼或舊的 Spread COM 代碼(基于 1 的行和列索引部分)移植到 .NET 平臺(tái)下(后者曾一直使用基于 0 的索引來(lái)支持以前版本中的所有 API,以實(shí)現(xiàn) CLS) 。

Spread.NET 為何要使用基于1的索引

鑒于 Microsoft Excel ® 支持Visual Studio Tools for Office(VSTO)的Visual Basic for Applications(VBA)對(duì)象模型中基于1的索引,而 Spread.NET 的常見(jiàn)使用場(chǎng)景便是從支持宏的Microsoft中創(chuàng)建使用VBA和VSTO的電子表格應(yīng)用程序。所以,Spread.NET使用基于 1 的索引,將更易于 VBA 代碼移植。

實(shí)現(xiàn)方法:只需一次調(diào)用,即可獲得基于1的索引對(duì)象:

[C#]

IWorkbook iwb = WorkbookSet.CreateBase1Object(fpSpread1.AsWorkbook());

[VB]

Dim iwb As IWorkbook = WorkbookSet.CreateBase1Object(FpSpread1.AsWorkbook())

全新的異步函數(shù)和屬性,便于更新實(shí)時(shí)數(shù)據(jù)

Spread.NET 對(duì)創(chuàng)建自定義計(jì)算功能提供了豐富的支持,如使用AsyncFunction類創(chuàng)建類似RTD函數(shù)的異步函數(shù)。RTD 函數(shù)自 Excel 2002 引入,主要用于查看和更新實(shí)時(shí)數(shù)據(jù)。

在Spread.NET V12.1 中,您可以創(chuàng)建繼承自AsyncFunction的自定義計(jì)算函數(shù),實(shí)現(xiàn)對(duì)異步計(jì)算的支持,還可以通過(guò)各種FunctionAttributes來(lái)指示特殊函數(shù)的行為,如波動(dòng)率或返回?cái)?shù)組值。

如 Excel 般的“取消選擇”

在 Excel 中,使用CTRL鍵配合鼠標(biāo)或鍵盤可以選中或刪除特定的單元格。而在Spread.NET V12.1中也將提供該功能, 這意味著您可以輕松地選擇一系列單元格以應(yīng)用某些更改,對(duì)于需要選擇大范圍數(shù)據(jù)的使用場(chǎng)景來(lái)說(shuō),這個(gè)功能將非常實(shí)用!

新的 F4 鍵行為

Excel 支持在編輯公式引用時(shí)使用F4鍵,在絕對(duì)和相對(duì)列和行引用之間切換引用。這個(gè)功能在Spread.NET 中也得以實(shí)現(xiàn), 這種細(xì)節(jié)處更新可以使具有特定相對(duì)和絕對(duì)要求的公式比以前更易實(shí)現(xiàn)。

以上就是 Spread.NET V12.1 的主要新功能介紹,如需了解更多,請(qǐng)前往 Spread.NET 產(chǎn)品官網(wǎng)。

關(guān)于葡萄城

賦能開(kāi)發(fā)者!葡萄城公司成立于 1980 年,是全球領(lǐng)先的集開(kāi)發(fā)工具、商業(yè)智能解決方案、管理系統(tǒng)設(shè)計(jì)工具于一身的軟件和服務(wù)提供商。西安葡萄城是其在中國(guó)的分支機(jī)構(gòu),面向全球市場(chǎng)提供軟件研發(fā)服務(wù),并為中國(guó)企業(yè)的信息化提供國(guó)際先進(jìn)的開(kāi)發(fā)工具、軟件和研發(fā)咨詢服務(wù)。葡萄城的控件和軟件產(chǎn)品在國(guó)內(nèi)外屢獲殊榮,在全球被數(shù)十萬(wàn)家企業(yè)、學(xué)校和政府機(jī)構(gòu)廣泛應(yīng)用

極客網(wǎng)企業(yè)會(huì)員

免責(zé)聲明:本網(wǎng)站內(nèi)容主要來(lái)自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請(qǐng)進(jìn)一步核實(shí),并對(duì)任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對(duì)有關(guān)資料所引致的錯(cuò)誤、不確或遺漏,概不負(fù)任何法律責(zé)任。任何單位或個(gè)人認(rèn)為本網(wǎng)站中的網(wǎng)頁(yè)或鏈接內(nèi)容可能涉嫌侵犯其知識(shí)產(chǎn)權(quán)或存在不實(shí)內(nèi)容時(shí),應(yīng)及時(shí)向本網(wǎng)站提出書面權(quán)利通知或不實(shí)情況說(shuō)明,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)或不實(shí)情況證明。本網(wǎng)站在收到上述法律文件后,將會(huì)依法盡快聯(lián)系相關(guān)文章源頭核實(shí),溝通刪除相關(guān)內(nèi)容或斷開(kāi)相關(guān)鏈接。

2019-06-04
Spread.NET 表格控件 V12.1 正式發(fā)布!加入動(dòng)態(tài)數(shù)組,讓公式運(yùn)算更具效率
Spread.NET是一個(gè)在功能和布局上與 Excel 高度類似的 .NET表格控件,目前已廣泛應(yīng)用于財(cái)務(wù)、預(yù)算、工程、統(tǒng)計(jì)等領(lǐng)域的信息系統(tǒng)開(kāi)發(fā)中,通過(guò)強(qiáng)大的數(shù)

長(zhǎng)按掃碼 閱讀全文