УÑловноÑо ÑоÑмаÑиÑане в OOXML Ñе ÑÑÑÑои Ð¾Ñ Ð´Ð²Ðµ оÑделни ÑаÑÑи. УÑловиеÑо (ÑÑавнение, ÑоÑмÑла или ÑÑвпадение) опÑÐµÐ´ÐµÐ»Ñ ÐºÐ¾Ð¸ клеÑки Ñе клаÑиÑиÑиÑаÑ. ÐÑнÑниÑÑ Ð²Ð¸Ð´ (диÑеÑенÑиален ÑÑил, или dxf ÑÑглаÑно ÑÑандаÑÑа ECMA-376) опÑÐµÐ´ÐµÐ»Ñ ÐºÐ°Ðº Ð¸Ð·Ð³Ð»ÐµÐ¶Ð´Ð°Ñ Ñе. ÐиалоговиÑÑ Ð¿ÑозоÑÐµÑ Ð½Ð° Excel ÑкÑива Ñова Ñазделение, каÑо ви каÑа да попÑлниÑе и двеÑе едновÑеменно. HotXLS обаÑе изиÑква изÑиÑноÑо им задаване. Ðко ÑÑздадеÑе пÑавило cellIs Ð¾Ñ Delphi и пÑопÑÑнеÑе ÑÑила, пÑавилоÑо Ñе бÑде валидно, диапазонÑÑ Ñе е коÑекÑен, ÑоÑмÑлаÑа Ñе Ñе изÑиÑлÑва пÑавилно, но клеÑкиÑе нÑма да пÑоменÑÑ ÑвеÑа Ñи, ÑÑй каÑо инÑÑÑÑкÑиÑÑа е била âпÑи иÑÑина, не пÑоменÑй ниÑоâ? РазликаÑа Ð¼ÐµÐ¶Ð´Ñ ÑÑловиеÑо и ÑезÑлÑаÑа обÑÑнÑва заÑо нÑкои пÑавила Ð¸Ð·Ð³Ð»ÐµÐ¶Ð´Ð°Ñ Ð¿Ñавилно конÑигÑÑиÑани, но не маÑкиÑÐ°Ñ Ð½Ð¸Ñо.
HotXLS запиÑва ÑÑловно ÑоÑмаÑиÑане диÑекÑно в BIFF8 .xls и OOXML .xlsx Ñайлове, каÑо поддÑÑжа ÑÑÑо ÑоÑмаÑиÑан ÑекÑÑ (rich text runs) и Ñподелени ÑÑилове за клеÑки. Тези ÑÑнкÑии ÑподелÑÑ Ð¾Ð±Ñа логиÑеÑка ÑÑÑÑкÑÑÑа и неÑÑоÑвеÑÑÑвиÑÑа обикновено вÑÐ·Ð½Ð¸ÐºÐ²Ð°Ñ Ð² ÑоÑкиÑе на ÑвÑÑзване Ð¼ÐµÐ¶Ð´Ñ ÑÑÑ .
УÑловиеÑо изиÑква ÑÑил: dxf ÑоÑмаÑ
Ð XLSX ÑабоÑÐ½Ð¸Ñ Ð»Ð¸ÑÑ ÑÑавниÑелниÑе пÑавила Ñе ÑÑÐ·Ð´Ð°Ð²Ð°Ñ ÑÑез AddConditionalFormat, койÑо пÑиема диапазон, опеÑаÑÐ¾Ñ Ð¾Ñ TXLSXCfOperator и ÑоÑмÑла или лиÑеÑал, и вÑÑÑа индекÑа на новоÑо пÑавило в колекÑиÑÑа ConditionalFormats. ÐбекÑÑÑ Ð½Ð° пÑавилоÑо на ÑÑоÑвеÑÐ½Ð¸Ñ Ð¸Ð½Ð´ÐµÐºÑ ÑÑдÑÑжа ÑвойÑÑвоÑо Style, коеÑо опÑÐµÐ´ÐµÐ»Ñ Ð¾ÑвеÑÑванеÑо. ÐадайÑе ÑвÑÑ Ð·Ð° запÑлване и клеÑкиÑе Ñе го пÑиемаÑ; оÑÑавеÑе го пÑазен и Ñе полÑÑиÑе невидимоÑо пÑавило, опиÑано по-гоÑе.
var
Book: TXLSXWorkbook;
Sheet: TXLSXWorksheet;
Idx: Integer;
begin
Book := TXLSXWorkbook.Create;
try
Book.Open('kpi.xlsx');
Sheet := Book.Sheets[0];
// Negative variance: light red fill
Idx := Sheet.AddConditionalFormat('D2:D200', xlsxCfOpLessThan, '0');
Sheet.ConditionalFormats[Idx].Style.SetFillBgColor($FFFFC7CE);
// Duplicate order IDs get flagged the same way
Idx := Sheet.AddCondFormatDuplicateValues('A2:A200');
Sheet.ConditionalFormats[Idx].Style.SetFillBgColor($FFFFEB9C);
// Custom formula rule: highlight rows where actual misses 90% of target
Idx := Sheet.AddCondFormatExpression('B2:B200', '$C2<$B2*0.9');
Sheet.ConditionalFormats[Idx].Style.SetFillBgColor($FFFFC7CE);
Book.SaveAs('kpi-flagged.xlsx');
finally
Book.Free;
end;
end;
ЦвеÑовеÑе ÑÑк Ñа 32-биÑови ARGB ÑÑойноÑÑи, Ñака Ñе $FFFFC7CE ÑÑоÑвеÑÑÑва на познаÑÐ¸Ñ Ð¾Ñ Excel ÑвеÑлоÑеÑвен ÑвÑÑ Ð·Ð° маÑкиÑане, Ñ Ð½ÐµÐ¿ÑозÑаÑен алÑа байÑ. ÐÑеки Ñип пÑавило, коеÑо Ñе задейÑÑва пÑи ÑÑловие за клеÑка, Ñледва ÑÑÑаÑа логика на ÑÑздаване и поÑледваÑо ÑÑилизиÑане. ÐÑавилаÑа за ÑÑвпадение на ÑекÑÑ (AddCondFormatContainsText, AddCondFormatBeginsWith, AddCondFormatEndsWith) вÑÑÑÐ°Ñ Ð¸Ð½Ð´ÐµÐºÑ, койÑо Ñе ÑоÑмаÑиÑа допÑлниÑелно, какÑо и меÑодиÑе AddCondFormatTop10, AddCondFormatAboveAverage или Ñези за оÑкÑиване на пÑазни клеÑки и гÑеÑки.
ÐенÑиÑе Ñ Ð´Ð°Ð½Ð½Ð¸, ÑвеÑовиÑе Ñкали и икониÑе Ñе оÑоÑмÑÑ Ñами
ÐизÑалниÑе пÑавила ÑабоÑÑÑ Ð¿Ð¾ обÑаÑÐ½Ð¸Ñ Ð½Ð°Ñин. Те ÑÑдÑÑÐ¶Ð°Ñ Ð¸Ð½ÑоÑмаÑиÑÑа за вÑнÑÐ½Ð¸Ñ Ñи вид в ÑамоÑо Ñи опÑеделение и игноÑиÑÐ°Ñ ÑвойÑÑвоÑо Style. ÐадаванеÑо на запÑлване на пÑавило за ленÑа Ñ Ð´Ð°Ð½Ð½Ð¸ (data bar) нÑма еÑекÑ, ÑÑй каÑо AddCondFormatDataBar пÑиема ÑвеÑа на ленÑаÑа каÑо диÑекÑен аÑгÑменÑ. ЦвеÑовиÑе Ñкали Ñ Ð´Ð²Ðµ и ÑÑи ÑоÑки пÑÐ¸ÐµÐ¼Ð°Ñ ÑвеÑовеÑе за кÑайниÑе ÑоÑки, а AddCondFormatIconSet избиÑа един Ð¾Ñ 26 Ñипа набоÑи Ð¾Ñ Ð¸ÐºÐ¾Ð½Ð¸ (напÑÐ¸Ð¼ÐµÑ icsTrafficLights3). ТÑк нÑма оÑделен ÑÑил, койÑо да бÑде пÑопÑÑнаÑ.
Ðажен паÑамеÑÑÑ Ð¿Ñи Ñези Ð¸Ð·Ð²Ð¸ÐºÐ²Ð°Ð½Ð¸Ñ Ñа кÑайниÑе ÑÑойноÑÑи, пÑедÑÑавени Ð¾Ñ TXLSCfValueKind. ÐÑайнаÑа ÑоÑка на ленÑаÑа или ÑкалаÑа може да бÑде минимÑмÑÑ Ð¸Ð»Ð¸ макÑимÑмÑÑ Ð½Ð° диапазона, конкÑеÑно ÑиÑло, пÑоÑенÑ, пеÑÑенÑил или ÑезÑлÑÐ°Ñ Ð¾Ñ ÑоÑмÑла. СÑойноÑÑиÑе по подÑазбиÑане (минимÑм и макÑимÑм на диапазона) ÑабоÑÑÑ Ð´Ð¾Ð±Ñе пÑи ÑеÑÑови данни, но водÑÑ Ð´Ð¾ гÑеÑки пÑи Ñеални данни Ñ Ð³Ð¾Ð»ÐµÐ¼Ð¸ оÑклонениÑ, една извÑнÑедно голÑма ÑÑойноÑÑ Ñвива оÑÑаналиÑе ленÑи до малки ÑеÑÑи. ÐогаÑо ÑаблоÑо ÑÑÑбва да Ñе ÑÑавнÑва в ÑазлиÑни пеÑиоди, задайÑе кÑайниÑе ÑоÑки кÑм ÑикÑиÑани ÑиÑла или пеÑÑенÑили, за да може половин ленÑа пÑез маÑÑ Ð´Ð° ознаÑава ÑÑÑоÑо колиÑеÑÑво каÑо половин ленÑа пÑез апÑил. ÐвÑомаÑиÑно маÑабиÑанаÑа ленÑа е ÑÑпоÑÑавима Ñамо ÑÑÑ Ñебе Ñи.
ÐапиÑÑÑ Ð½Ð° XLS поддÑÑжа Ñамо ÑеÑиÑи Ñипа пÑавила
ТÑадиÑионниÑÑ ÑоÑÐ¼Ð°Ñ BIFF8 поддÑÑжа Ñамо ÑаÑÑ Ð¾Ñ Ñези ÑÑнкÑии. XLS ÑаÑадаÑа може да ÑÑздава ÑоÑно ÑеÑиÑи Ñипа ÑÑловни пÑавила: ленÑи Ñ Ð´Ð°Ð½Ð½Ð¸, двÑÑвеÑни Ñкали, ÑÑиÑвеÑни Ñкали и набоÑи Ð¾Ñ Ð¸ÐºÐ¾Ð½Ð¸, запиÑани каÑо CF12 запиÑи. Ð¢Ñ Ð½Ñма API за ÑÑздаване на пÑавила Ð¾Ñ Ñип cellIs, ÑоÑмÑла или ÑÑвпадение на ÑекÑÑ. ÐеÑе ÑÑÑеÑÑвÑваÑиÑе пÑавила Ð¾Ñ Ñези видове в оÑвоÑен Ñайл Ñе Ð·Ð°Ð¿Ð°Ð·Ð²Ð°Ñ Ð¸ запиÑÐ²Ð°Ñ Ð±ÐµÐ· пÑомÑна, Ñака Ñе пÑезапиÑванеÑо на клиенÑÑки .xls Ñайл не повÑежда ÑоÑмаÑиÑанеÑо мÑ. Ðе можеÑе обаÑе да генеÑиÑаÑе пÑавила за ÑÑпоÑÑавка на пÑагове Ð¾Ñ Ð½ÑлаÑа в .xls. РеÑениеÑо е да ги ÑимÑлиÑаÑе ÑÑез обикновено запÑлване на клеÑки в Pascal кода или да избеÑеÑе ÑоÑÐ¼Ð°Ñ .xlsx, кÑдеÑо ÑÑлаÑа гама Ð¾Ñ Ð¿Ñавила е налиÑна.
Това огÑаниÑение ÑÑÑбва да Ñе вземе пÑедвид пÑи избоÑа на Ñайлов ÑоÑмаÑ, оÑобено за оÑÑеÑи Ñип инÑоÑмаÑионни Ñабла. ÐзбоÑÑÑ Ð½Ð° .xls за ÑÑвмеÑÑимоÑÑ Ð¸ едновÑеменноÑо изиÑкване за Ñложни пÑагове за маÑкиÑане Ñа неÑÑвмеÑÑими ÑеÑениÑ, коеÑо е по-добÑе да Ñе ÑазбеÑе в наÑалоÑо на ÑазÑабоÑкаÑа.
ÐодÑеждане, пÑиоÑиÑÐµÑ Ð¸ заÑÑÑпваÑи Ñе диапазони на пÑавилаÑа
РеалниÑе оÑÑеÑи ÑеÑÑо ÑÑдÑÑÐ¶Ð°Ñ Ð¿Ð¾Ð²ÐµÑе Ð¾Ñ ÐµÐ´Ð½Ð¾ пÑавило за даден диапазон. Ðолона Ñ Ð¾ÑÐºÐ»Ð¾Ð½ÐµÐ½Ð¸Ñ Ð¼Ð¾Ð¶Ðµ да ÑÑдÑÑжа ленÑа Ñ Ð´Ð°Ð½Ð½Ð¸ за ÑазмеÑ, пÑавило cellIs за ÑвÑÑд пÑаг и ÑоÑмÑла на ниво Ñед за еÑкалаÑии. ÐÑеки Ð¾Ð±ÐµÐºÑ TXLSXConditionalFormat има ÑвойÑÑво Priority и Excel пÑилага пÑавилаÑа в Ñози Ñед. ÐогаÑо две пÑавила Ñи оÑпоÑÐ²Ð°Ñ Ð¾ÑвеÑÑванеÑо на една клеÑка, победиÑелÑÑ Ñе опÑÐµÐ´ÐµÐ»Ñ Ð¾Ñ Ð·Ð°Ð´Ð°Ð´ÐµÐ½Ð¾Ñо ÑиÑло, а не Ð¾Ñ Ð¿Ð¾Ð´ÑедбаÑа им в пÑозоÑеÑа за ÑпÑавление на пÑавилаÑа.
УпÑавлÑвайÑе пÑиоÑиÑеÑиÑе по ÑÑÑÐ¸Ñ Ð½Ð°Ñин, по койÑо ÑпÑавлÑваÑе ÑлоевеÑе (z-order) в гÑаÑиÑна пÑогÑама. ÐадавайÑе ги ÑÑзнаÑелно пÑи вÑзможно заÑÑÑпване на пÑавила и оÑÑавÑйÑе Ñвободни номеÑа Ð¼ÐµÐ¶Ð´Ñ ÑÑойноÑÑиÑе за бÑдеÑи пÑомени. ÐогаÑо пÑавилаÑа не Ñе заÑÑÑÐ¿Ð²Ð°Ñ (напÑÐ¸Ð¼ÐµÑ Ð»ÐµÐ½Ñа в колона E и ÑекÑÑ Ð² колона G), ÑедÑÑ Ð½Ð° ÑÑздаване е напÑлно доÑÑаÑÑÑен. ÐбÑÑнеÑе по-голÑмо внимание на гÑаниÑиÑе на диапазониÑе, опаÑниÑе гÑеÑки Ñа ÑвÑÑзани Ñ Ð´Ð¸Ð°Ð¿Ð°Ð·Ð¾Ð½Ð¸ каÑо B2:B200 на оÑÑеÑ, койÑо е наÑаÑнал до 350 Ñеда, кÑдеÑо допÑлниÑелниÑе Ñедове оÑÑÐ°Ð²Ð°Ñ Ð±ÐµÐ· ÑоÑмаÑиÑане и Ð¸Ð·Ð³Ð»ÐµÐ¶Ð´Ð°Ñ ÐºÐ°Ñо гÑеÑно попÑлнени. ÐенеÑиÑайÑе обÑ
ваÑа на пÑавилаÑа на базаÑа на кÑÐ°Ð¹Ð½Ð¸Ñ Ð±Ñой Ñедове, какÑо пÑавиÑе за ÑеÑииÑе на диагÑамиÑе и диапазониÑе за валидиÑане.
Ðолезен навик пÑи ÑазÑабоÑка е пÑовеÑкаÑа на генеÑиÑÐ°Ð½Ð¸Ñ Ñайл в Excel: избеÑеÑе ÑоÑмаÑиÑÐ°Ð½Ð¸Ñ Ð´Ð¸Ð°Ð¿Ð°Ð·Ð¾Ð½ и пÑегледайÑе пÑавилаÑа в пÑозоÑеÑа Manage Rules. УÑловноÑо ÑоÑмаÑиÑане Ñе изобÑазÑва оконÑаÑелно Ð¾Ñ Ð¿ÑиложениеÑо, коеÑо ÑеÑе Ñайла, Ñака Ñе ÑÑпеÑниÑÑ Ð·Ð°Ð¿Ð¸Ñ Ð½Ð° XML ÑÑÑÑкÑÑÑаÑа не гаÑанÑиÑа авÑомаÑиÑно пÑавилно визÑализиÑане в Excel. Ðдин бÑÑз поглед ÑпеÑÑÑва бÑдеÑи коÑекÑии.
Rich Text: множеÑÑво ÑоÑмаÑи в една клеÑка
ÐлеÑка Ñ ÑоÑмаÑиÑан ÑекÑÑ (rich-text) в модела на XLSX ÑÑдÑÑжа ÑпиÑÑк Ð¾Ñ ÑегменÑи (runs), вÑеки Ð¾Ñ ÐºÐ¾Ð¸Ñо има ÑобÑÑвен ÑекÑÑ Ð¸ ÑÑиÑÑови аÑÑибÑÑи. ÐзгÑаждаÑе Ñози ÑпиÑÑк каÑо Ð¾Ð±ÐµÐºÑ TXLSXRichText, добавÑÑе ÑегменÑи кÑм него и го пÑиÑвоÑваÑе на клеÑкаÑа. Ðажно е да знаеÑе, Ñе пÑиÑвоÑванеÑо на Cell.RichText пÑеÑ
вÑÑÐ»Ñ ÑобÑÑвеноÑÑÑа на обекÑа кÑм клеÑкаÑа и ÑÑ Ð³Ð¾ оÑвобождава авÑомаÑиÑно пÑи ÑвоеÑо ÑниÑожаване. Ðко го оÑвободиÑе и ÑÑÑно, Ñе пÑедизвикаÑе гÑеÑка за двойно оÑвобождаване (double-free), коÑÑо ÑеÑÑо Ñе пÑоÑвÑва каÑо ÑÑив на ÑÑвÑем дÑÑго мÑÑÑо по-кÑÑно.
var
Rich: TXLSXRichText;
Run: TXLSXRichTextRun;
begin
Rich := TXLSXRichText.Create;
Rich.AddRunText('Status: ');
Run := Rich.AddRunText('OVERDUE');
Run.Bold := True;
Run.Color := $FFC00000;
Run.ColorIsAuto := False;
Run := Rich.AddRunText(' (escalated to regional manager)');
Run.Italic := True;
Sheet.Cells[2, 7].RichText := Rich; // ownership moves to the cell: do not Free
end;
ÐнÑÑÑÑкÑиÑÑа ColorIsAuto := False е задолжиÑелна. СегменÑÑÑ ÑÑдÑÑжа Ñлаг за авÑомаÑиÑен ÑвÑÑ Ð¸ пÑиÑвоÑванеÑо на конкÑеÑен ÑвÑÑ Ñе взема пÑедвид Ñамо Ñлед изÑиÑÑванеÑо на Ñози Ñлаг. Ðко пÑопÑÑнеÑе ColorIsAuto, ÑекÑÑÑÑ Ñе Ñе покаже Ñдебелен, но ÑвÑÑдо ÑеÑен. СегменÑиÑе поддÑÑÐ¶Ð°Ñ ÑÑÑо заÑеÑÐºÐ½Ð°Ñ ÑекÑÑ, ÑазлиÑни видове подÑеÑÑаване и веÑÑикално подÑавнÑване за гоÑен и долен индекÑ, а ÑвойÑÑвоÑо PlainText обединÑва вÑиÑки ÑегменÑи в един ÑиÑÑ Ð½Ð¸Ð·, когаÑо имаÑе нÑжда Ð¾Ñ ÐµÐºÑпоÑÑ Ð¸Ð»Ð¸ ÑÑавнение.
ФоÑмаÑиÑаниÑÑ ÑекÑÑ Ð½Ð° ниво клеÑка Ñе поддÑÑжа Ñамо в XLSX. XLS ÑаÑадаÑа нÑма пÑблиÑен API за диÑекÑноÑо Ð¼Ñ Ð·Ð°Ð¿Ð¸Ñване (вÑпÑеки Ñе Ñе поддÑÑжа за коменÑаÑи и ÑекÑÑови полеÑа пÑез TextRuns), а ÑоÑмаÑиÑаниÑе низове, пÑоÑеÑени Ð¾Ñ ÑÑÑеÑÑвÑÐ²Ð°Ñ .xls Ñайл, Ñе Ð·Ð°Ð¿Ð°Ð·Ð²Ð°Ñ Ð¿Ñи обÑаÑно запиÑване. ÐÑиÑко, коеÑо изиÑква ÑмеÑено ÑоÑмаÑиÑане в една клеÑка, ÑÑÑбва да Ñе наÑоÑи кÑм XLSX.
СÑиловиÑÑ Ð¿Ñл и оÑмеÑÑванеÑо Ñ ÐµÐ´Ð¸Ð½Ð¸Ñа
СÑилизиÑанеÑо на клеÑки в XLSX модела Ñе ÑпÑавлÑва ÑÑез Ñподелени колекÑии на ниво ÑабоÑна книга. ÐеÑодиÑе Fonts.Add, Fills.AddSolid и Borders.Add ÑегиÑÑÑиÑÐ°Ñ ÑÑоÑвеÑниÑе деÑиниÑии и вÑÑÑÐ°Ñ ÑеÑ
Ð½Ð¸Ñ Ð¸Ð½Ð´ÐµÐºÑ Ð² пÑла, базиÑан на 0. СвойÑÑваÑа на клеÑкиÑе, коиÑо ги Ð¿Ð¾Ð»Ð·Ð²Ð°Ñ (напÑÐ¸Ð¼ÐµÑ FontIndex), обаÑе Ð·Ð°Ð¿Ð°Ð·Ð²Ð°Ñ ÑÑойноÑÑÑа 0 за ÑÑила по подÑазбиÑане, поÑади коеÑо пÑиÑвоÑванаÑа ÑÑойноÑÑ ÑÑÑбва да бÑде индекÑÑÑ Ð¾Ñ Ð¿Ñла, ÑвелиÑен Ñ ÐµÐ´Ð¸Ð½Ð¸Ñа:
HeaderFont := Book.Fonts.Add('Calibri', 11, True, False); // pool index, 0-based
for Col := 1 to 6 do
Sheet.Cells[1, Col].FontIndex := HeaderFont + 1; // cell index, 1-based
Ðко пÑопÑÑнеÑе + 1, заглавнаÑа ÑаÑÑ Ñе Ñе покаже Ñ ÑÑиÑÑа по подÑазбиÑане без ÑÑобÑение за гÑеÑка. ÐÑÑга гÑеÑка е извикванеÑо на Fonts.Add за вÑеки оÑделен Ñед. ÐденÑиÑниÑе ÑÑиÑÑове Ñе дедÑпликиÑÐ°Ñ Ð°Ð²ÑомаÑиÑно, но Ñова Ñ
аби ÑеÑÑÑÑи, а колекÑиÑÑа за подÑавнÑване вÑÑÑа нов Ð¾Ð±ÐµÐºÑ Ð¿Ñи вÑÑко извикване. СÑздайÑе необÑ
одимиÑе ÑÑилове веднÑж пÑеди ÑикÑла и пÑеизползвайÑе индекÑиÑе им. ÐÑи големи оÑÑеÑи Ñова е важен ÑакÑÐ¾Ñ Ð·Ð° пÑоизводиÑелноÑÑÑа, Ñазгледан в наÑÑÑойки за пÑоизводиÑелноÑÑ Ð½Ð° големи ÑабоÑни книги в HotXLS. ÐогаÑо имаÑе нÑжда Ð¾Ñ ÑÑандаÑÑен облик, можеÑе да ползваÑе ApplyBuiltinStyle за диапазони, койÑо пÑилага ÑÑиловеÑе на Excel (Good, Bad, Neutral и дÑ.) без ÑабоÑа Ñ Ð¿ÑловеÑе.
УÑловноÑо ÑоÑмаÑиÑане, Rich Text и ÑÑиловеÑе Ñа ÑиналнаÑа ÑÑÑпка Ð¾Ñ Ð¾ÑоÑмÑнеÑо на оÑÑеÑа. ÐÑÐµÐ´Ñ Ð¾Ð´Ð½Ð¸Ñе еÑапи Ñа опиÑани в генеÑиÑане на оÑÑеÑи по Ñаблони Ñ HotXLS. ÐÑлноÑо опиÑание на пÑавилаÑа, ÑегменÑиÑе и ÑÑиловеÑе е доÑÑÑпно на пÑодÑкÑоваÑа ÑÑÑаниÑа за HotXLS Component.