HotXLS versionsnoteringar
Versionshistorik för användarsynliga HotXLS-funktioner, rättningar, XLS/XLSX-förbättringar, exportuppdateringar, kompatibilitetsändringar och dokumentationsändringar
Senaste utgåva
- Senaste version: 2.384.120; Publiceringsdatum: 2026-10-09
Version 2.384.120
Tillagt
- Portabel Classic XLS-fångst stödjer vanliga kolumn-, stapel-, linje-, punkt-, cirkel- och ringdiagram samt områdesdiagram med en enda serie, med validerade lokalt lagrade värden, grundläggande utseende och av anroparen deklarerade gränser för plottområde, titel och legend
- Skrivskyddade deklarationer av diagramutseende bevarar kalkylblads- och diagramidentiteter, explicita ramdimensioner, effektiva legendstorlekar i punkter och nativ typsnittsgeometri för fristående PDF-, SVG- och PNG-utdata
- Avgränsade hjälprutiner inspekterar enkla lagrade formelreferenser och cachade diagramceller utan formelutvärdering eller expansion av glesa celler
Rättat
- Classic-diagramfångst bevarar lagrade typsnitts- och markörstorlekar med decimaler, källägande och läslån, och avvisar felformade poster, outredda utseenden och uttömda resursbudgetar innan utdata produceras
- Uppdateringar av diagramegenskaper med double-värden avvisar icke ändliga värden innan de jämförs eller ändras
- Upprepad initiering av nativa portabla celler frigör tidigare hanterade strängar under fångsten
Version 2.384.119
Rättat
- Granskning av Classic-diagram validerar lagrad serietext, trendlinjenamn och dataetikettseparatorer innan det typade tillståndet tillämpas, och frigör partiella modeller när felaktig text utlöser ett fel
- Komprimerade Unicode-separatorer för dataetiketter behåller sina fullständiga lagrade tecken
Version 2.384.118
Tillagt
- Granskning av Classic-diagram exponerar markördiametrar i punkter, inklusive storlekar med decimaler, samtidigt som de ursprungliga lagrade enheterna bevaras
Rättat
- Stödda nativa fyllningstabeller för Classic-diagram avkodar egenskaper efter komplexa poster, och felaktiga tabeller bevarar den föregående typade fyllningen
Version 2.384.117
Tillagt
- Explicita hjälprutiner för bytekodning bevarar inbäddade nulltecken och avvisar text som inte går att representera i den valda kodsidan
Ändrat
- Classic BIFF5-text, formler och arbetsboksmetadata använder sin deklarerade kodning på Windows, Linux och macOS, med kodade bytelängder och gränser som respekterar hela tecken
- Stödd äldre diagramtext behåller sin ursprungliga avkodning efter kodsidändringar och kopieringar, och transkodas explicit innan den sparas under en annan kodning
Rättat
- Komprimerad BIFF8 Unicode bevarar exakta kodenheter, och äldre anpassade stilar, diagramtext och dubbelbyte-fortsättningar i formelcacher använder sina verkliga postlayouter
- Nativ Unicode-textberäkning, kriterier, uppslagsnycklar, lokala formelbindningar och Classic-sökning och -ersättning bevarar stödd skiftlägesmatchning
- Uppslag av namngivna stilar löser den första lagrade posten i stället för att behandla namnet som obefintligt
- Upprepade läsningar av ZIP-poster frigör tidigare rubrikmetadata samtidigt som samtidig hantering av lagrade och deflate-komprimerade strömmar behålls
Version 2.384.116
Tillagt
- Lokala beräknade SUM-Pivot-fält utvärderar formler utifrån summor i lövnivå-, delsumma- och grand total-kontext, inklusive beroenden som saknas i visade mått
- Cacheägda beräknade objekt behåller nativa medlemsidentiteter, dolda beroenden och global lösningsordning över stödda ogrupperade fält med strängmedlemmar
- Stödda visningsberäkningar för beräknade objekt och aggregeringsfilter behåller synlig medlemsordning, ursprunglig filterordning och entydiga identiteter för visade mått
Rättat
- Nativ datumprojicering i Pivot-formler bevarar arbetsbokens datumsystem genom cacheimport, kloning och beräkning
- Cachestädning av saknade objekt bevarar validerat ägande av materialiserade rapporter över båda arbetsbokernas datumsystem och äldre sparade rapporter
- Ej stödd metadata för beräknade Pivot-fält och redigerad nativ utdata avvisas innan kalkylbladsresultaten ändras
Version 2.384.115
Tillagt
- Nativ portabel PDF-, SVG- och PNG-utdata stödjer rik text, modellerade former, vanliga bilder, bilder i celler, booleska kryssrutor och sju stödda cachade XLSX-diagramfamiljer
- Oföränderliga utskriftsplaner för arbetsböcker tillämpar fullständiga utskriftsområden, upprepade rad- och kolumntitlar, sidbrytningar, pappersinställningar, marginaler, orientering, centrering, skalning och sidordning på Linux och macOS
- Explicit nativ typsnittsgeometri stödjer fångst med generationskontroll utan att ändra arbetsbokens geometrileverantör
Rättat
- Läget anpassa-till-sida överlever arbetsboksrundturer och ignorerar inaktuell procentskalning, inklusive obegränsade anpassningsmått
- Stödda diagramtitlars typsnitt, linjeutseende samt markörfyllning och -ramar behåller explicit importerade och angivna värden, inklusive svart
- Rik text bevarar explicita false-åsidosättningar och skiljer effektiva run-utseenden vid strängåteranvändning och semantisk jämförelse
Version 2.384.114
Tillagt
- Nativa program för Linux x64 och macOS ARM64 läser in, redigerar, beräknar och sparar Classic BIFF8-arbetsböcker, inklusive stödda dokumentegenskaper och RC4-kryptering
- Portabel compound storage stödjer nästlade scop, stora kedjade DIFAT-containers, metadata och explicit ägande av nativa lagringsgränssnitt
Rättat
- 128-bitars CryptoAPI-arbetsböcker annonserar ut en kompatibel kryptografileverantör och behåller läsbara dokumentegenskaper i klartext
- Nativa dokumenttidsstämplar använder rätt FILETIME-epok och bevarar UTC-värden över plattformarna
- Classic definierade namn delar kanonisk Unicode-identitet över scope-uppslag, formler och återöppning av arbetsboken
- Escapade separatorer i datumformat och inbäddade citerade literaler behåller det valda fullständiga datumformatet
Version 2.384.113
Tillagt
- Rensning av intervall och inklistring av Unicode-text stödjer avgränsad atomär ångra- och gör om-hantering med skydds- och strukturförhandskontroller
- Typade lokala bilder i celler och Checkbox-format stödjer XLSX-rundturer, tillgänglighetsmetadata och innehållsredigeringar som respekterar ägandet
- Glesa rad- och kolumn-Checkbox-format bevarar prioritet, explicita rensningar och frånvarande celler genom redigeringar och XLSX-rundturer
- Utökat XLSB-stöd omfattar formler och cacher, namn, sammanslagningar, hyperlänkar, fönsterrutor, tabeller och filter
- Nativa arbetsboks-API:er för Linux x64 och macOS ARM64 läser in, redigerar, beräknar och sparar stödda XLSX-, XLSB- och ODS-filer
- Nativ Pivot-utdata stödjer numerisk gruppering, datumgruppering och manuell gruppering samt alla elva anpassade delsummafunktioner
Rättat
- Scopade namn använder konsekvent Unicode-normalisering och skiftlägesmatchning på Windows, Linux och macOS utan att kasta bort accenter eller symboler
- Moderna aggregeringsformler kompilerar konsekvent med Free Pascal på Windows
- Att öppna en annan arbetsbok ersätter namngivna stilar i stället för att behålla stildefinitioner från föregående fil
- Modernt bild- och kontrollinnehåll överlever intervallångra och sparning utan att materialisera frånvarande celler
- Importerade formelcacher behåller ursprunglig värdemetadata, och vanlig metadata skiljs från bildinnehåll i celler
- Semantisk jämförelse skiljer lokalt bildinnehåll, tillgänglighetsmetadata och effektiva ärvda kontrollformat med avgränsad gles genomgång
Version 2.384.112
Tillagt
- Testning, extrahering och ersättning med reguljära uttryck stödjer UTF-16-text, captures, array-broadcasting och avgränsad utvärdering på Windows, Linux x64 och macOS ARM64
- GROUPBY och PIVOTBY stödjer scopade aggregeringscallbackar, flera mått, rubriker, filter, hierarkiska summor, sortering och relativa procenttal
Rättat
- Skalära SUM-argument behåller typkonvertering av booleska värden och numerisk text, medan intervall- och arrayaggregering behåller sina befintliga ignoreringsregler
- Scopade booleska literaler och aggregeringscallbackformler överlever lagring som future-funktioner och återöppning av arbetsboken
Version 2.384.111
Tillagt
- Nativ lokal Pivot-utdata stödjer differenser och procenttal mot basobjekt, löpande summor, rad- och kolumnprocent, index, procent mot förälder, kumulativa procenttal och tät rangordning
Rättat
- Visningsberäkningar behåller nativ semantik för totaler, saknade värden, nolldivisorer och sorterade medlemmar, inklusive icke-additiva medelvärden
- Utökade visningslägen och basfältsidentiteter överlever sparning, återöppning och explicit Excel-uppdatering
Version 2.384.110
Tillagt
- Nativ lokal Pivot-utdata stödjer kompakta, tabulära och dispositionslayouter, upprepade överordnade etiketter, standardplacering av delsummor och flera mått på valfri dataaxel
Rättat
- Inställningar för upprepade etiketter överlever importerade namespace-alias och spara/återöppna, medan nativ utdata skiljer frånvarande skärningar från numerisk noll
- Mellanlagrad layoutmetadata håller fält- och datarubriker konsekventa när Excel explicit uppdaterar genererade rapporter
Version 2.384.109
Tillagt
- Arbetsboksjämförelse skiljer typade värden och exakta stora heltal, stödjer ändliga numeriska toleranser och valfri jämförelse av lagrad formelcache, stilar och geometri
- Avgränsad semantisk jämförelse täcker stödda namn, regler, tabeller, ritordning, områden med tomstil, effektiva rich text-run, lokala Pivot-modeller, Slicer-markeringar och tidslinjetillstånd
Ändrat
- Jämförelsen bevarar packade och frånvarande celler, löser resursidentiteter till effektiva värden och behåller det föregående lyckade resultatet vid ej stödda modeller eller uttömda resurser
Rättat
- Typad precisionsvalidering av databasparametrar av typen REAL kompilerar med Delphi XE5 samtidigt som kontroller av exakt värde, spill och null behålls
Version 2.384.108
Tillagt
- ODS-rundturer behåller vanlig anteckningstext och författare, representerbara värde- och anpassade filter, explicit cellskydd och likvärdigt kalkylbladsskydd utan lösenord
- Konverteringsrapporter behåller exakta metadataförluster genom kalkylbladskopior och senare sparningar, inklusive ej stödda filteruttryck och icke-ekvivalent skydd
Rättat
- Avbrutna eller misslyckade ODS-strömsparningar bevarar destinationsbytes, storlek och position genom avgränsad mellanlagring i temporära filer
- Lyckade ODS-sparningar som börjar på en icke-noll strömposition bevarar prefixet och korrigerar ZIP-postoffsets
Version 2.384.107
Tillagt
- Inspektion av lagrade formler och referensmedvetna Pivot-aggregatformler fungerar i Classic XLS-, XLSX-, skrivskydds- och isolerade utvärderingskontexter, inklusive tillgängliga arrayresultat och typade fel
- Pivot-aggregatfrågor respekterar modellerade synliga medlemmar, rapportfilter och stödda delsummor genom avgränsad frånkopplad cacheutvärdering utan att uppdatera källdata
Rättat
- Nativa Excel XLS Pivot-cacher behåller successiva inline-numeriska värden och aktuell cachevaliditetsmetadata i stället för att returnera felaktiga summor av upprepade värden
- Pivot-referenser inkluderar det modellerade rapportfilterområdet ovanför huvudtabellens plats
Version 2.384.106
Tillagt
- Automatiska databasfrågor binder typade literal- och lagrade cellparametrar i positionsordning och bevarar Unicode, tom text, noll, booleska värden, datum och nuller utan att substituera värden in i SQL-texten
- Cellparametrar läser tillgängliga formelcacher och kompakta lagrade värden utan omberäkning eller materialisering, med avgränsad metadatavalidering och transaktionell tillämpning av resultat
Rättat
- Jet- och ACE-datumparametrar bevarar DATE-, TIME- och TIMESTAMP-värden genom typade OLE DATE-bindningar oberoende av localeberoende tidsstämpelprojektioner
Version 2.384.105
Tillagt
- Formelmetadata läser verklig identitet för den refererade filen, stödda bastalformat, negativa färger, positiva parenteser, textjustering, låst tillstånd, kolumnbredd och beräkningsläge över XLS- och XLSX-utvärderingskontexter
- Frånkopplad inspektion av bastilar och glesa axelavtryck bevarar lagrade och packade celler, kalkylbladsstandarder, temafärger och lånat arbetsboksägande
Ändrat
- Metadata för kolumnbredd returnerar sin avrundade teckenbredd och flaggan för standardbredd som en array med två kolumner; otillgänglig information om Excel-programmiljön och oklassificerbara format rapporterar explicita fel
Version 2.384.104
Tillagt
- Importvalidering stödjer strikta skalärtyper, numeriska och datumbegränsningar, explicita Excel-datumsystem, sammansatt unicitet och relationer mellan kolumner
- Strukturerade överträdelser identifierar kalkylblad, cell, regel, berörd kolumn och första duplicerade rad, medan validering av lagrade värden bevarar packade celler och rapporterar otillgängliga formelcacher utan implicit omberäkning
Version 2.384.103
Tillagt
- Automatiska textfrågor uppdaterar filer med fast bredd utifrån deklarerade fältstarter, stödda teckenkodningar, typad fältkonvertering, överhoppade fält och val av rubrik- eller förstarad
- Uppdatering av fast bredd bevarar literala citattecken, trimmar fältutfyllnad och avvisar ogiltiga gränser, för stor indata och avbrott innan kalkylbladsändringar tillämpas
Version 2.384.102
Ändrat
- Classic-granskning av formelsymboler skannar snabbare samtidigt som funktions- och namnfynd, skiftlägesokänslig dubblettrensning, scope och fyndordning bevaras
Rättat
- Windows-sparningar av arbetsböcker, direkt paketpatchning, PDF-utdata och sidbildsutdata kan atomärt ersätta en befintlig fil som hålls av delete-delad metadata eller läsarhandtag på stödda filsystem, samtidigt som låskontroller, skrivskydd och den äldre vägen behålls på ej stödda filsystem
Version 2.384.101
Tillagt
- INDEX-area-väljararrayer broadcastar med rad- och kolumnväljare över beräknade arrayer och stödda referensunioner i samma blad, och behåller orientering, valda värdetyper och individuella fel
- Definierade namn och LET-bindningar behåller stödd multiområdesreferensidentitet, och skalär CHOOSE behåller den valda referensen för efterföljande beräkning
Rättat
- INDEX accepterar ett explicit area-argument på 1 för beräknade källor och skiljer ogiltiga, saknade, decimala och utanför intervallet liggande områdesväljare
- Unioner över blad och unioner av beräknade arrayer avvisas med sitt stödda felkontrakt i stället för att anta felaktig referensidentitet
- Ogiltiga referenser kvalificerade av befintliga lokala kalkylblad behåller sina referensfel genom direkta formler och definierade namn, inklusive citerade bladnamn, utan att ändra formelsträngar eller tolka okända kvalificerare som lokala blad
Version 2.384.100
Tillagt
- Portabel headless PDF-, SVG- och PNG-utdata på Linux med explicita typsnittsfiler, nativ textformning, avgränsade resurser och stegvis exklusiv filpublicering
- Skrivskyddad Windows-fångst av stödda Classic XLS- och XLSX-rektanglar till oföränderliga överförbara ögonblicksbilder, inklusive lagrade formelresultat, scopade Table- och villkorsformat, fysiska dimensioner och fullständiga sammanslagningar
Rättat
- Portabel utseendevalidering avvisar ogiltiga enum-representationer konsekvent över optimerade kompilatorbyggen
Version 2.384.99
Tillagt
- Explicit automatisk fråguppdatering för stödda Windows Text-, ADO-, ODBC- och Web-anslutningar, med registrering av anpassade providers och avgränsade resultat
Rättat
- Nativa frågeresultatsrelationer och kolumnidentiteter består genom stödd tabellbaserad eller fristående sparning och återöppning
- Ogiltiga provider-anslutningstyper avvisas före dispatch utan att ändra kalkylbladsresultat
Version 2.384.98
Tillagt
- Skapande av lokala Pivot-tidslinjer, anslutningar via delade vyer, inkluderande heldagsfiltrering och skyddad borttagning som antingen rensar eller bevarar markeringen
- Explicit nativ uppdatering av Slicer-objekt utan data över anslutna vyer, med kumulativa resursgränser, avbrott samt bevarad markering och objektidentitet
Rättat
- Nativ hantering av tidslinjerelationer och filterägande bevarar stödda importerade markeringar genom materialisering, sparning och återöppning
- Korsfilterinställningar för Pivot Slicer består via sin nativa tabulära representation
- Tidslinjeidentifiering behåller UTF-16-avkodning av arbetsboken och länkade delar vid Open XML-inläsning
Version 2.384.97
Tillagt
- Definierade namn med skalära och beräknade arrayvärden i stödda numeriska och räknande aggregeringsberäkningar, med nativ typkonvertering, beroendespårning och resursgränser
Rättat
- Numerisk aggregering propagerar typade fel från lokala kalkylbladsreferenser, tomma medelvärden returnerar division-med-noll-fel, och misslyckade namngivna referenser behåller sina fel utan att starta om påbörjad genomgång
Version 2.384.96
Tillagt
- Beräknade arrayargument för textsammanfogning och stödda median-, ordningsstatistik-, percentil-, kvartil-, procentrank-, multimode- och populationskovariansberäkningar
Ändrat
- Insamling av arrayer och referenser bevarar nativ skalär typkonvertering, typade fel, ursprunglig kovariansparning och beräkningsresursgränser
Rättat
- Ändlig beräkning av medianmidpunkt undviker spill mellan värden med samma tecken, och exklusiva percentiler accepterar giltiga slutpunkts- och enelementsranker
Version 2.384.95
Tillagt
- Transaktionell nativ utdata för kompakta Pivot-rapporter med synkroniserade kalkylbladsvärden, layoutmetadata och bestående cellägande
- Skrivskyddad Slicer-medlemstillgänglighet över anslutna vyer under andra aktiva filter
- Explicit historisk städning av Pivot cachemedlemmar med konfigurerbar bevarandepolicy och samordnad ommappning av länkade markeringar
Ändrat
- Stödd nativ Pivot-utdata behåller aktuella manuella filter och rubriker medan ej stödda layouter eller redigerade egna celler avvisas innan några ändringar görs
Version 2.384.94
Tillagt
- PivotTable-vyer med delad cache och skapande av lokala Pivot Slicers med explicita kalkylbladsgränser
- Transaktionell Slicer-borttagning som antingen rensar sin begränsning eller bevarar markeringen som vanliga Pivot-filter, inklusive policy för framtida medlemmar
- Rekonstruktion av grupperad cache med fast numerisk, datum- och diskret gruppering och stabila medlemsidentiteter
- Frånkopplade förhandsvisningar av nativ kompakt Pivot-layoutmetadata med exakta medlems- och aggregatidentiteter
Rättat
- Att återöppna en ifylld arbetsbok ersätter nu tidigare typade Pivot-cacher, och skapade nativa Slicer-länkar känns fortfarande igen av Excel
- Serialisering av grupperad cache bevarar deklarerade nativa medlemsdomäner och officiella grand total- och dataaxelattribut
Version 2.384.93
Tillagt
- En validerad XLSB-läsare och -skrivare för typade cellvärden, grundstilar, vanliga kalkylbladsvyer och dimensioner
- Explicit binär utdata från sparning av arbetsboksfil och ström, med automatisk identifiering av binär indata och rapporter om konverteringstrohet
Ändrat
- XLSB-konverteringen mellanlagrar fullständiga paket och avvisar ej stödda funktioner eller beräkningsinställningar före utdata, inklusive okontrollerade eller förlusttillåtande sparningar
Rättat
- Konfigurerade ZIP-komprimeringsnivåer tillämpas innan deflate-motorn initieras
Version 2.384.92
Tillagt
- Transaktionell Pivot-cacheuppdatering och säker kalkylbladsmaterialisering för stödda lokala definierade namn- och tabellkällor
- Bladscopad uppslagning av definierade namn och anroparlösta källgränser för cacheuppdatering
Rättat
- Lokal källidentitet och definierade namns scope överlever flytt och namnbyten av kalkylblad, inklusive citerade och Unicode-namn
- Definierade namns formel-XML utelämnar det valfria inledande likhetstecknet som bara krävs av formelsyntaxen i minnet
- Medlemskap i tabelltotaler följer det faktiska antalet totalrader och bevarar alla datarader när bara UI-hinten för totaler finns
Version 2.384.91
Tillagt
- Beräknade arrayindata och typade resultat för transponering, matrismultiplikation, determinanter och matrisinversion
- Ordnade väljarvektorer, dubbletter och negativa index för rad- och kolumnval
- Beräknade uppslagsvektorer och arrayvärda uppslagsbegäranden, inklusive fullständiga skalära uppslagssektorer och typade reservvärden
Ändrat
- Matrisarbete, uppslagsskanning, väljargenomgång, kopiering och utfyllnad respekterar gränserna för utvärderingssteg och arrayminne genom hela sammansättningen
Rättat
- Textcacher för formler och arrayresultat visas korrekt i Excel före omberäkning
- Moderna rich-error-cacher inkluderar arbetsboksversionen och deklarationerna av beräkningsfunktioner som krävs för nativ cachad visning
- Uppslags- och plattningsalternativ avvisar värden utanför intervallet före numerisk avsmalning, medan decimala alternativ följer nativ avkapning
- Tomma take-, drop- och flatten-resultat behåller sina typade beräkningsfel
Version 2.384.90
Tillagt
- Isolerade Pivot-resultatförhandsvisningar behåller delade Slicer-markeringar och anroparfilter utan att ändra den aktiva beräknade cachen
- Säker kalkylbladsmaterialisering för stödda lokala Pivot-källor mellanlagrar resultat, avvisar motstridigt innehåll och strukturer och bevarar befintliga cellobjekt, formatering och kommentarer
- Exakt ägande av typade värden överlever XLSX-sparning och återöppning, vilket möjliggör säker storleksändring och flytt av resultat samt explicit övertagande av befintliga skalära Pivot-värden
Rättat
- Borttagning av den sista bundna Pivot Slicer-vyn avvisas innan dess ritning, cache, reserverade namn eller markering tas bort
- Rensning av Slicer-vyer validerar varje berörd cache innan ändringen och städar tillåtna vyer, ritningar och obundna cacher tillsammans
Version 2.384.89
Tillagt
- INDEX accepterar arrayvärda rad- och kolumnväljare över beräknade arrayer och kalkylbladsintervall, inklusive parade markeringar och rad-kolumn-korsprodukter
Rättat
- Väljarresultat bevarar typade värden och fel, fyller saknade väljarpositioner med #N/A och respekterar beräkningsminne och utvärderingsstegsgränser
- Decimala skalärväljare som avkapas till noll ger fullständiga rad- eller kolumnspill, medan negativa väljare returnerar #VALUE! före avkapning
- Skalärt intervallval behåller referensbeteende, och väljarspill återhämtar sig från hinder, storleksändras och räknas om efter sparning och återöppning
Version 2.384.88
Tillagt
- Typad medlemsinspektion, val av delade medlemmar och rensning för stödda importerade icke-OLAP Pivot Slicer-cacher
- Anslutna PivotTable-beräkningar snittar Slicer-markeringar med oberoende begränsningar på andra fält och anroparsupplyade postfilter
Ändrat
- Markeringsändringar validerar varje anslutning och medlem innan de bekräftas, avvisar tvetydiga importerade masker i samma fält och bevarar ej stödda cacherepresentationer
- Ändringar av Slicer-cachesamlingar respekterar arbetsbokens skrivskydd när de påverkar anslutna PivotTable-beräkningar
- Borttagning av bundna icke-OLAP Pivot Slicer-cacher avvisas atomärt för att bevara konsistent körtids- och sparat filtertillstånd
Rättat
- Redigerade Pivot Slicer-markeringar och anslutna vyers medlemsmasker sparas tillsammans samtidigt som importerade namespaces och okända tillägg behålls
- Stödda Slicer-anslutningar följer sparade bladidentiteter och löser utökade cacheidentifierare oberoende av vanliga arbetsbokscacheidentifierare
- Importerade PivotTable-definitioner förblir associerade med sina ursprungliga vyer när kalkylblad sorteras om
Version 2.384.87
Ändrat
- Lokal rektangulär Pivot-cacheuppdatering bevarar befintliga fält- och medlemsidentiteter, lägger till nya typade medlemmar och håller delade vyers filter och markeringar bundna till sina ursprungliga medlemmar efter källomordning, borttag eller återinförande
- Källrubriker matchar databasfält efter namn, vilket tillåter kolumnomordning medan beräknade fält behåller sina formler och får nya tomma postplatshållare för efterföljande utvärdering
- Uppdateringen validerar och mellanlagrar hela källan innan cachen uppdateras och avvisar ej stödda scheman, källtyper, härledd gruppering och nya omappade diskretgruppsmedlemmar utan partiella ändringar
Rättat
- Pivot-felvärden behåller sina typer och koder i delade objekt och poster genom XLSX-sparning och återöppning
- Uppdaterade domäner för delade objekt räknar om typflaggor och representerbara gränser, och XLSX-cachemetadata beskriver blandade värden, datum, fel, booleska värden och tomma celler korrekt
- Källuppdatering läser frånvarande celler utan att skapa kalkylbladsceller och jämför Unicode-fältrubriker utan att deras text beskärs
- Sparade uppdaterade PivotTable-vyer inkluderar nya cachemedlemmar före delsummaobjekt samtidigt som befintlig medlemsordning, dolda flaggor och importerade layouttillägg behålls
- Sidmarkeringar förblir bundna till rätt medlem när vyordningen skiljer sig från cacheordningen, beräknade fält flyttar inte längre sparade källposter, och uppdateringstidsstämplar använder den numeriska XLSX-representationen
Version 2.384.86
Tillagt
- INDEX accepterar beräknade arrayer och konstanter med skalärt val, val av hela arrayen och rad- eller kolumnextraktion samtidigt som referensbeteende behålls för intervallkällor
- SORT och UNIQUE accepterar beräknade arrayer och konstanter, vilket möjliggör direkt sammansättning med FILTER, SEQUENCE, LET och andra arrayproducerande uttryck
Ändrat
- Sammansatta arrayuttryck behåller automatisk XLSX-spillstorleksändring, beräkning av arrayer med fast intervall, typade fel och omberäkning efter sparning och återöppning
Rättat
- Arrayval och sortering avkorter decimala numeriska alternativ, ogiltig boolesk alternativtext returnerar #VALUE!, och operationer på beräknade arrayer respekterar minne och utvärderingsstegsgränser
Version 2.384.85
Tillagt
- XLSX dynamiska arrayer beräknas nu till automatiskt storleksanpassade spillintervall, bevarar användarhinder med #SPILL!, stödjer spillreferenser och explicit implicit skärning och återfår cachet spillägande efter återöppning
- Konverteringens förhandskontroll rapporterar kända förluster i målformatet, och kontrollerad sparning kan avvisa dessa förluster innan en befintlig fil eller ström skrivs
- Explicit utdata för makroaktiverade mallar bevarar befintliga VBA-projekt i XLTM-paket
- Anroparlevererad uppdatering av frågetabeller stödjer avgränsade resultat med fast schema, synkroniserade tabell- och filterintervall, förlopp, avbrott och transaktionell rollback
Ändrat
- Upprepade rapportband klonar fullständiga trådade konversationer med ommappade identiteter och bevarar rollback när ett mål misslyckas
- Anpassad boolesk ODS-validering, stödda formelvärda gränser, listkällor och kvalificerade referenser översätts med ombasering av bascellen; ej stödda definitioner och cellreferenser utelämnas tillsammans
Rättat
- Arrayformler med fast intervall utvärderar rå intervallaritmetik element för element, MAP med flera arrayer accepterar matchande lambdaparametrar, och FILTER utvärderar beräknade arrayer och masker
- Moderna #SPILL!- och #CALC!-fel behåller typad XLSX rich value-metadata samtidigt som orelaterad importerad metadata och rich value-hinkar bevaras
- Nya XLSX-formler sparas med kanoniska argumentseparatorer och future-funktionsprefix för samverkan med Excel; sparningen bevarar uttrycket i minnet och återöppning returnerar den kanoniska formelsyntaxen
- Stödda lokala diagramserier uppdaterar numeriska, text-, datum-, fel-, bubbel- och hierarkiska kategoricacher efter redigeringar och omberäkning
- Nativ paginering renderar sammanslagna spann via sitt ursprungliga ankare, klipper sidfragment och undertrycker inre ramar och rutnät
Version 2.384.84
Ändrat
- Delphi- och C++Builder-kom-igång-exemplen innehåller nu en praktisk försäljningsorder med typade datum, priser, rabatter och beräknade summor, och verifierar sparade XLS- och XLSX-arbetsböcker efter återöppning
- Fakturaexemplet kopplar nu en utskriftsvänlig faktura till redigerbara betalningsvillkor och en inbetalningsjournal, och beräknar rabatter, moms, betalningar och kvarvarande saldo
- Kalkylbladslayout-exemplet demonstrerar nu skapande, uppräkning, borttag och bevarande av sammanslagna rubriker efter återöppning
- Nio fler fokuserade API-exempelfamiljer har flyttats in i Miscellaneous, så att huvudkatalogen förblir fokuserad på fullständiga affärsflöden och interaktiva verktyg
Borttaget
- De minimala fristående exemplen för sammanslagna celler och rik text har slagits samman i exemplen för kalkylbladslayout och dashboard
Version 2.384.83
Ändrat
- Demokatalogen skiljer nu kompletta upplevelser och omfattande flöden från fokuserade API-recept i varje plattforms Miscellaneous-mapp, med direkt navigation och byggklara projekt i båda nivåerna
Borttaget
- Tre överflödiga intervall- och kalkylbladslayout-demoer har tagits bort; deras fullständiga scenarier finns kvar i RangeOps och SheetLayout
Version 2.384.82
Ändrat
- Delphi- och C++Builder-dashboardgallerier öppnas direkt på en ifylld arbetsbok med levande summor, renderade diagram, redigerbara detaljer, prisscenarier och export av aktuellt resultat
- API-turnén ger direkt navigation till dashboard, försäljningsdata, diagramförhandsvisning och API-recept, med en upprepningsbar datauppsättning som täcker alla tolv månader
- Exemplen bär sina nödvändiga scenarioenheter och manifestresurser lokalt, så att varje projekt kan kopieras utan en separat gemensam katalog
Rättat
- API-turnén skapar sin försäljningsdata innan dashboardformler matas in, så att dess levande showcase initieras korrekt
- Diagram i den levande showcasen uppdaterar sina cachade värden och etiketter efter omberäkning, och upprepade C++Builder-gallerieexporter bevarar aktuella redigeringar utan att ackumulera genererade rapportsblad
Version 2.384.81
Ändrat
- Exempel på kalkylbladskopiering verifierar oberoende innehåll, ommappade format, formler och inbäddade objekt efter återöppning av sin utdata
- Exempel på datasystem, sökning, gruppering, arrayformler och bilder verifierar sitt specifika beteende och rapporterar misslyckad utdata med en icke-noll exitkod
Rättat
- Classic XLS AutoFilter-intervall behåller sina fullständiga rad- och kolumngränser efter sparning och återöppning, inklusive kopierade filter med aktiva kriterier
- Dashboardgallerier skapar refererade kalkylblad innan formler matas in, beräknar summor före export och genererar alla begärda följeformat även när en annan utdata misslyckas
- C++Builder-dashboardgalleriet producerar de dokumenterade CSV-, HTML- och RTF-följefilerna
- Kompilerade rapporter bevarar vanlig felrapportering i klassiska statiska Win64-byggen för C++Builder när en destination inte kan ersättas
- Interaktiva API-exempel rapporterar PDF-, HTML- och CSV-exportfel i stället för att påstå att filerna skrevs
- Funktionsshowcasen fullföljer sin demonstration av semantisk hash och validerar sina sparade arbetsböcker utan att anropa ej stödda moderna ögonblicksbilder av ritningar
Version 2.384.80
Ändrat
- Exempelkatalogen grupperar projekt efter inlärningsuppgift och anger rekommenderade startpunkter, formatspecifika lektioner och kompatibla projektnamn
- Exempel på kalkylbladslayout och intervallflytt delar fullständiga scenarier samtidigt som deras befintliga projekt- och utdatanamn bevaras
- Exempel på minne, avancerad CSV, utskrift, dokumentegenskaper, textrutor och kalkylbladsskydd demonstrerar fullständiga flöden med verifiering av sparade data och explicit felrapportering
Rättat
- Återöppnade XLSX-textrutor behåller sina ritningsrelationer när de sparas igen, så att anteckningar förblir tillgängliga genom upprepade spara- och återöppningscykler utan dubbletter av XML-namespacedeklarationer
- Exempel på batchkonvertering respekterar Skip existing innan källor öppnas eller skrivarkomponenter anropas, och verifierar arbetsbokens framgångskoder innan fullbordan rapporteras
- Fakturaexemplet inkluderar betalningsvillkor och sin fullständiga titel i det utskrivbara området
- Konsol-exemplet för sidkonfiguration startar med vanliga användarrättigheter i stället för att utlösa Windows installationsdetektering
Version 2.384.79
Rättat
- ODS-filsparningar med exportalternativ bevarar den befintliga destinationen när serialiseringen misslyckas eller sparningen avbryts, och rapporterar fel vid destinationersättning konsekvent
- ODS-exportalternativ använder den normala sparlivscykeln, inklusive omberäkningspolicy, avbrytning under förloppet, diagnostik och arbetsbokens skrivskydd för fil- och strömutdata
- XLSX-strömsparningar följer den konfigurerade omberäkningspolicyn: manuellt läge bevarar cachade värden, och dirty-formler uppdateras på begäran
- Fullbordade sparaviseringar för XLSX och ODS gör inte längre redan genomförd utdata till ett avbrottsfel
- Misslyckad initiering och slutbehandling av strömmande kalkylbladspatchar frigör källfilernas handtag, så att anropare kan städa bort sina tillfälliga källor och återanvända skrivaren efter ett initieringsfel
Version 2.384.78
Rättat
- Rangekopior och kloner bevarar överlappande virtuell formatering och ersätter tidigare överläggsformatering bara inom destinationen, även vid överlappande kopior och formatering mellan arbetsböcker
- Explicita formateringsåterställningar fortsätter att gälla efter sparning och återöppning av arbetsböcker med rad- eller kolumnstandardformatering
- XLSX-celler som uttryckligen använder arbetsbokens standardformatering behåller dess anpassade typsnitt, fyllningar och talformat
Version 2.384.77
Rättat
- Villkorsformat och datavalideringsmål som täcker hela rader eller kolumner följer rad- och kolumnredigeringar och kloning av intervall när de helt ryms inom källan, med avgränsad målgeometri och bevarade relativa formelankare
- Ändligt upprepade tomma stilar importerade från ODS behåller sin fulla used range-utsträckning, och nyskapade eller återställda arbetsböcker rapporterar den aktuella biblioteksversionen i dokuments egenskaper
- Cellkopior av hela rader, hela kolumner och hela kalkylblad behåller gles lagring, rensar ersatta målinnehåll utan att expandera tomma koordinater och bevarar överlappande källdata och formatering mellan arbetsböcker
Version 2.384.76
Rättat
- Regler för villkorsformatering och datavalidering tillämpas nu konsekvent på absoluta, omvända, helrad- och helkolumnmål samt mellanslagsseparerade mål vid uppslag, borttagning, villkorad beräkning och valideringskontroller
- Felaktiga och utanför rutnätet liggande måloområden matchar inte längre celler, medan giltiga områden i samma regel förblir aktiva; villkorstatistik för hela rutnätet behåller gles celllagring
- ODS-valideringsmål använder giltiga cellankare för hela rader och kolumner, och likvärdiga överlappande villkorsmål skapar inte längre dubblettregler vid återöppning
Version 2.384.75
Rättat
- ODS-regler för celljämförelse och uttryck behåller sina fulla helrad-, helkolumn- och breda målintervall i Excel-kompatibel utdata; upprepade tomma bärare håller glesa intervall kompakta och bevarar överlappande regler och kalkylbladsmetadata
- Återöppning av ODS upprepade formaterade tomma områden håller deras basformatering kompakt, och standardvillkorsregler behåller överlappande prioritet och täckning inuti sammanslagna områden
Version 2.384.74
Rättat
- Villkorsformatering i ODS behåller stödda åsidosättningar av typsnitt, bakgrund och talformat vid sparning och återöppning, inklusive explicita återställningar; regler med olika färgmarkeringar eller målintervall förblir separata
- Villkorsformatering i XLSX behåller inbyggda och anpassade talformat, inklusive format som bara används av en villkorsregel; sparningen tar inte längre bort dessa anpassade format eller pekar om regler till ett annat format
- Procentstilar i ODS innehåller procentsymbolen som andra kalkylprogram kräver och återöppnas utan att duplicera symbolen
Version 2.384.73
Rättat
- Att kopiera text till urklipp, läsa urklippstext och klistra in text eller XML Spreadsheet-data misslyckas inte längre slumpmässigt på Windows 10 och 11. Efter varje urklippsändring öppnar Utforskaren och Clipboard User Service (urklippshistorik) urklippet i några millisekunder för att läsa det; textoperationerna försökte öppna det bara en gång och kunde misslyckas med "access denied" just då
- Alla urklippsoperationer använder nu samma policy som BIFF8-kopiering och inklistring (Excel-format): de försöker öppna urklippet i cirka 500 ms. När ett annat program håller urklippet längre misslyckas operationen fortfarande och det befintliga urklippsinnehållet lämnas oförändrat
Version 2.384.72
Rättat
- Öppning av en ODS-fil läser talformatet General korrekt. Excel och LibreOffice skriver General som en talstil utan antal decimaler, vilket lästes som två fasta decimaler, så att ett värde som 1.5 visades som 1.50; sådana celler har nu inget talformat, som i källprogrammet
- Text runtom ett General-tal bevaras, till exempel
General" kg"
Version 2.384.71
Rättat
- ODS-filer sparade av Excel eller LibreOffice rapporterar inte längre ett used range som täcker hela bladet. Båda ger varje rad och kolumn en storlek ut till rad 1048576 och kolumn 16384; tomma rader med automatisk höjd behåller nu standardhöjden, och kolumnstorlekarna som löper ut till sista kolumnen blir bladets standardkolumnbredd. En Excel-fil med 10 rader som öppnas och sparas igen krymper från cirka 2,8 MB till några KB
- Radhöjder som ställs in för hand, och automatiska höjder på rader med innehåll (till exempel rader som växt för att rymma radbruten text), behålls fortfarande
- Sparing till ODS skriver bladets standardkolumnbredd (
StandardWidth) på kolumner som inte har någon egen bredd; den brukade slängas bort, eftersom ODS inte har någon bladomfattande standardkolumnbredd
Version 2.384.70
Rättat
- ODS-filer sparade av Excel eller LibreOffice öppnas återigen på millisekunder. Båda fyller ut varje rad till kolumn 16384 och lägger till ett utfyllnadsblock ner till rad 1048576; en fil med 10 rader från Excel brukade ta över 5 minuter att öppna, och en från LibreOffice blev aldrig klar
- Tomma utfyllnadsceller som ser ut precis som dokumentets Default-cellstil görs inte längre om till formaterade tomma celler; ett Excel-ark med 10 rader brukade få omkring 180 000 sådana. Tomma celler med egen fyllning, ram, typsnitt, justering, talformat eller skydd behålls fortfarande
Version 2.384.69
Rättat
- Villkorsformat sparade till ODS syns nu i Excel. Värdesregler (likhet med, mellan, större än och så vidare) och formelregler skrivs även som standardmässiga ODF-
style:map-villkor på de celler de täcker, den enda form Excel läser; Excel brukade öppna HotXLS ODS-filer utan någon av dessa regler - LibreOffice importerar nu ODS-värdesregler skrivna av HotXLS med sin verkliga operator och gränser; det brukade göra om var och en av dem till "lika med 0"
- Öppning av en ODS-fil läser villkorsformat lagrade som
style:map-villkor, som Excel och andra ODF-producenter skriver dem. När en fil också bär samma regler i LibreOffice egen form läses varje regel en gång - Öppning av en ODS-fil läser LibreOffice stavning av värdesregler (
=5,between(1,10),!="x"); filer från tidigare HotXLS-versioner öppnas fortfarande som tidigare
Version 2.384.68
Rättat
- Formler som tillämpar en operator på ett flercellsintervall eller en inbäddad matris, som
=SUM(A1:B1*{10,100}),=SUM((A1:B2>2)*1)eller=MAX(A1:B2-1), lagras på det sätt Excel 365 lagrar dem, så att Excel visar samma resultat som HotXLS: i XLSX som encells dynamiska matrisformler, i XLS som encells matrisformler. Excel brukade öppna dem med implicit skärning (=SUM(@A1:B1*@{10,100})) och visa #VALUE! eller ett felaktigt värde - XLS-matrisformler skriver sina referenser och matriskonstanter i matrisform, som Excel gör; Excel utvärderade matrisformler skrivna av HotXLS med implicit skärning
- XLSX-filer med dynamiska matrisformler (inklusive de som skapats med
SetDynamicArrayFormula) öppnas i Excel; Excel vägrade hela filen eftersom metadataen för dynamiska matriser använde en tilläggsidentifierare med annan versal/gemen-stavning
Version 2.384.67
Rättat
- Textjämförelser följer Excels ordning i båda motorerna: de ignorerar skiftläge och använder systemets locale till ordsortering, så bindestreck och apostrofer bara spelar roll när texten i övrigt är lika (
"a-b">"ab"är TRUE), medan övriga skiljetecken sorteras före siffror och bokstäver ("a~b">"ab"och"a_b">"ab"är FALSE). Det gäller jämförelseoperatorerna,>text/<text-kriterier i COUNTIF, SUMIF, *IFS-familjen och databasfunktionerna, arrayjämförelser, uppslagningar, funktioner i SORT-stil och sortering av områden - VLOOKUP och HLOOKUP jämför text utan hänsyn till versaler och gemener, så
VLOOKUP("ABC",...)hittar "abc" som i Excel
Version 2.384.66
Rättat
- Villkorsformatering baserad på formler som skrivs till ODS känns nu igen av LibreOffice: regeln lagras som
formula-is(...)med sin bascell, den form som LibreOffice själv skriver. Förr läste LibreOffice varje sådan regel som en enkel "cellvärde lika med 0"-regel - Villkorsformateringsformler som skrivs till ODS översätter inline-arrayer, unioner, helkolumns- och helradsreferenser och bevarar
$-tecken på samma sätt som formler i celler (COUNTIF($A:$A,A1)>1blirCOUNTIF([.$A:.$A];[.A1])>1) - Vid öppning av en ODS-fil läses villkorsformatering baserad på formler som LibreOffice skrivit (
formula-is), liksom filer från tidigare HotXLS-versioner
Version 2.384.65
Rättat
- Helkolumns- och helradsreferenser (
A:A,$A:$B,1:1,$1:$2) i formler som skrivs till ODS använder OpenFormulas referensform ([.A:.A]). Excel brukade öppna sådana celler som=SUM(A:(A))med #NAME? eller kasta formeln; ODS-filer från HotXLS visar nu samma formler och värden i Excel och LibreOffice
Version 2.384.64
Rättat
- Databasfunktionerna (DSUM, DCOUNT, DCOUNTA, DAVERAGE, DGET och resten) behandlar ett textkriterium utan operator som "börjar med", som Excel gör:
abi kriterieområdet matchar abc, ab och AB, och jokertecken gäller fortfarande (a?matchar varje post på två eller fler tecken som börjar med a).=aboch<>abjämför fortfarande hela posten
Version 2.384.63
Tillagt
- Formler kan innehålla inline-arraykonstanter som
{1,2;3,4}(kolumner åtskilda av kommatecken, rader av semikolon, med tal, text, TRUE / FALSE och felvärden) och referensunioner som(A1:B2,D4), i både XLS- och XLSX-motorn; inmatningen brukade misslyckas med "invalid formula syntax" - Arraykonstanter utvärderas som arrayer (
=SUM({1,2}*{3,4}),=ROWS({1,2,3;4,5,6}),=SUMPRODUCT(A1:A2,{1;10})), och unioner fungerar i SUM, COUNT, AVERAGE, MIN, MAX och COUNTA, i AREAS, i ISREF och i INDEX:s area_num-argument
Rättat
- XLS-filer lagrar arraykonstanter så att Excel läser dem: konstanten skrevs tidigare som en referens, vilket Excel visade som
=#N/A; XLS-formler som innehåller arraykonstanter eller unioner läses också tillbaka med sin formeltext
Version 2.384.62
Rättat
- Snittoperatorn (ett mellanslag mellan två referenser) returnerar de celler som båda referenserna täcker, som i Excel:
=SUM(A1:B2 B1:B2)ger 6 i stället för 2, referenser utan en gemensam cell ger #NULL!, och ett snitt kan skickas till funktioner som tar referenser, som ROWS, COLUMNS och INDEX. Det gäller båda motorerna, beräknade formler och formler som lagras i celler - XLS-filer håller snittformler användbara i Excel: de refererade områdena skrivs nu som referenser, så att Excel inte längre läser
=SUM(A1:B2 B1:B2)som=SUM(@A1:B2 @B1:B2)och visar #VALUE! - Ett snitt som används som ett enda värde och har mer än en gemensam cell väljer cellen i formelns rad eller kolumn, som vilken referens med flera celler som helst
Version 2.384.61
Rättat
- SUMPRODUCT accepterar arrayuttryck som
(B1:B2>0)*1,--(B1:B2>0),B1:B2*C1:C2och ett enda argument, i både XLS- och XLSX-motorn; tidigare returnerade dessa #N/A. Argument av olika form returnerar #VALUE!, ett fel inuti ett argument returneras, och text och logiska värden räknas som 0, som i Excel - Operatoruttryck över områden inuti SUM, COUNT, AVERAGE, MIN, MAX och COUNTA utvärderas element för element, som under Excels dynamiska arrayer:
=SUM((B1:B2>0)*1)räknar båda raderna i stället för att bara använda första cellen - TRUE räknas som 1 i aritmetik:
=TRUE*1returnerade -1 - Elementvisa jämförelser behandlar ett tomt element som 0, "" eller FALSE för att matcha den andra sidan, och jämför logiska värden som logiska värden; kombineras ett logiskt värde med
&i en array blir resultatet TRUE / FALSE
Version 2.384.60
Rättat
- Sök och ersätt med jokertecken och matchning av hela cellen (
FindText,ReplaceText,FindTextIn,ReplaceTextIni båda motorerna) matchar hela cellen som Excel gör:a*bhittar nuabcb, som tidigare avvisades eftersom matchningen stannade vid förstab - Vid sök och ersätt med jokertecken gör
~tecknet som följer efter det bokstavligen, och ett avslutande~ignoreras, som i Excel:a~bhittarab, ocha~~bhittara~b
Version 2.384.59
Rättat
- Skapelse- och ändringstider för XLSX-dokument (
Created,Modified) samt anpassade egenskaper med datumvärden läses nu korrekt när tidsstämpeln har bråkdelar av sekunder (2026-03-15T08:30:00.123Z) eller en tidszonsförskjutning (+08:00,-05:00): tiden konverteras till lokal tid i stället för att oförändrat tas för lokal tid - Stämplar med bara datum (
2026-07-01) läses som just det datumet; stämplar med en tid men ingen zon, vilket W3CDTF-formatet inte tillåter, läses fortfarande som lokal tid
Version 2.384.58
Rättat
- XLSX AutoFit via
TXLSAutoFit(FitXlsxSheet,FitXlsxSheetColumns,FitXlsxSheetRows,MarkSheet) mäter varje cell med det typsnitt den visas med; sedan 2.384.46 valde den nästa typsnitt i arbetsbokens fontlista, så en fet rubrik kunde mätas med en annan cells lilla typsnitt och bli för smal - AutoFit använder även det typsnitt en cell ärver från sin rad- eller kolumnstil
Version 2.384.57
Rättat
- "Precision as displayed" (
FullPrecision = False) i XLSX-motorn avrundar nu som Excel och XLS-motorn gör: procentformat behåller två extra decimaler (0.1234 visat som0.0%lagrar 0.123, inte 0.1), negativa och nollvärden använder sin egen formatsektion, och halva avrundas bort från noll (2.5 visat som0lagrar 3, inte 2) - Båda motorerna hedrar tusitalskalande kommatecken under "precision as displayed": 12345.678 visat som
0.0,(12.3) lagrar 12300, som i Excel - Ett logiskt formelresultat i en cell med talformat görs inte längre om till -1 av XLS-motorns "precision as displayed"
Version 2.384.56
Rättat
- ODS-filer som skrivs av HotXLS deklarerar namespaces för sina formelprefix, så LibreOffice utvärderar formlerna i stället för att visa #VALUE! i varje formelcell
Version 2.384.55
Rättat
- Formler som skrivs till ODS behåller sin betydelse: inline-arrayer använder OpenFormulas radseparator (
{1,2;3,4}blir{1;2|3;4}i stället för en enda rad), en referensunion som(A1,B2)blir operatorn~i stället för två funktionsargument, och absoluta referenser behåller sina$-markörer - När en sådan union läses tillbaka från ODS läggs inget andra par parenteser till, så de formlerna överlever en XLSX till ODS till XLSX-roundtrip oförändrade
Version 2.384.54
Rättat
- Lösenordsskyddade XLS-filer sparade i Excel 5.0/95-formatet (XOR-obfuskering) kan nu öppnas i Excel. Nyckeln som lagras i filen härleds ur lösenordet i stället för att vara slumpmässig, och obfuskeringsarrayen använder den bitrotation Excel förväntar sig; tidigare rapporterade Excel fel lösenord för varje sådan fil, och med bara nyckeln rättad rapporterade den filen som skadad
- XOR-obfuskade arbetsböcker läses med samma rättade array, så filer vars nyckel matchar lösenordet dekrypteras som Excel krypterar dem; XOR-filer skrivna av tidigare HotXLS-versioner öppnas fortfarande
Version 2.384.53
Rättat
- Jämförelse av en tom cell med ett logiskt värde behandlar den tomma som FALSE i både XLS- och XLSX-motorn, som Excel gör: med A1 tom returnerar
=A1=FALSEoch=A1<TRUEnu TRUE och=A1=TRUEreturnerar FALSE. Tidigare jämfördes den tomma som 0, som rankas under varje logiskt värde
Version 2.384.52
Rättat
- COUNTIF, COUNTIFS, SUMIF, SUMIFS, AVERAGEIF, AVERAGEIFS och databasfunktionerna matchar textkriterier enligt Excels jokerteckenregler i både XLS- och XLSX-motorn:
~*och~?matchar en rak asterisk respektive frågetecken, hakparenteser är vanliga tecken, och ett kriterium utan*eller?är en enkel jämförelse utan hänsyn till versaler och gemener. Tidigare lästes ett kriterium som"[x]"som en teckenmängd,"~*"matchade inte en asterisk, och ett felaktigt mönster matchade tyst ingenting "<>text"-kriterier räknar tal, logiska värden och tomma celler som inte lika, och ett bart"<>"räknar varje icke-tom cell, som i Excel; textjämförelse under<>är nu utan hänsyn till versaler och gemener- MATCH:s och XLOOKUP:s jokertecknsmatchning behandlar
~som en escape för tecknet som följer efter den och ignorerar ett avslutande~, som Excel gör
Version 2.384.51
Ändrat
- Skrivskyddade cellsnapshots behåller bladnamn i delad UnicodeString-lagring; SheetName är nu en läsbar och skrivbar WideString-egenskap med samma vanliga läs- och tilldelningssyntax som tidigare, men dess råa fältadress och den tidigare postlayouten stöds inte; anropare måste kompilera om mot denna utgåva
- Rapportutdata till en tom målström hoppar över den onödiga backup-snapshoten men bevarar återställningen av målets innehåll och position om utdatan misslyckas
- Djupa formelgranskningar bearbetar numeriska cacher mer effektivt medan cachade Variant-värden, utvärderingsresultat och rapporterade fynd bevaras
Rättat
- XLS- och XLSX-inklistring från urklipp fångar BIFF8-data och reservtext tillsammans under ett urklippslås, så båda formaten kommer från samma urklippstillstånd; läsbar BIFF8 förblir användbar när dess textkompanjon inte kan hämtas, otillgänglig text ensam infogar inga celler, och den befintliga retry-policyn för att öppna urklipp är oförändrad
- Misslyckad publicering av krävd text eller BIFF8 till urklipp bevarar den ursprungliga Win32-felkoden genom städningen, så att anropare kan hämta feldiagnostiken direkt efter anropet
- Urklippets textläsare med ett enda försök bevarar nativa datahämtningsfel genom urklippsstädningen utan att ändra sitt retry-beteende
Version 2.384.50
Ändrat
- Formelsymbolgranskningar körs snabbare på glesa XLS-arbetsböcker medan de rapporterade fynden och deras ordning bevaras
Version 2.384.49
Rättat
- WorkbookAudit-exemplen (Delphi och C++Builder):
AuditReport.jsonskrivs utan en UTF-8-byteordningsmarkör så att strikta JSON-tolkare godtar den; XLS-bladen rapporterar sitt AutoFilter-intervall; definierade namn i XLSX som pekar på en annan arbetsbok visar den länkade filen i stället för dess index; kommandoradskörningar skriver inte längre över de sparade inställningarna; ett tomt mappfält faller tillbaka på programkatalogen i stället för drivenhetens rot; en misslyckad exempelsparing loggas i stället för att rapporteras som skapad - ApiTour-exemplen: ombyggnaden av showcase-arbetsboken behåller den föregående när ombyggnaden misslyckas, så exportknapparna kraschar inte längre; arbetsböcker frigörs när byggandet kastar ett undantag; HTML-exporten loggar sina fel; loggen rapporterar de fem villkorsstyrda format som faktiskt skapas
- ExcelGraphics-exemplen: en bildtyp som inte stöds rapporteras i stället för att ett tomt blad sparas, och öppningsdialogen listar bara format som stöds
- OdsExport-exemplen jämför typsnittsstorleken i rundtur-kontrollen och returnerar en slutkod skild från noll när kontrollen eller sparningen misslyckas; C++Builder-exemplet OdsImport kontrollerar sparningsresultatet och skapar inte längre tomma celler under rapporteringen
- DataExport / ExportWithColoring-exemplen krymper bara den första kolumnen, som deras kommentarer säger, och C++Builder-exportexemplen öppnar spardialogen i programkatalogen
- Exemplens readme-filer listar de API:er och utdatafiler som exemplen faktiskt använder
Version 2.384.48
Rättat
- Tidpunkterna för när ett dokument skapas och senast sparades skrivs nu i UTC, som filformaten kräver, och läses tillbaka som lokal tid: XLSX
Created/Modifiedoch anpassade dategenskaper, samt XLSCreatedDate/LastSavedDate. Tidigare lagrades den lokala tiden som om den vore UTC, så Excel och Utforskaren visade tidsstämplarna förskjutna med tidszonsförskjutningen; värden som HotXLS självt skriver och läser är oförändrade
Version 2.384.47
Rättat
- XLS-filer med XOR-obfuskering (lösenordsskyddet i Excel 5.0/95-arbetsböcker,
EncryptionType = xletXor): nyckelpositionen som används för varje post följer nu filformatspecifikationen, på samma sätt som andra kalkylprogram läser och skriver den. Tidigare kunde HotXLS bara läsa sina egna XOR-filer, och varje post vars längd inte var en multipel av 16 avkodades som skräp i andra program
Version 2.384.46
Rättat
- XLSX AutoFit (
FitXlsxSheet,FitXlsxSheetColumns,FitXlsxSheetRows,MarkSheet) mäter varje cell med dess eget typsnitt, storlek, fetstil och kursiv stil i stället för alltid Arial 10, så text i Calibri 11, feta rubriker och stora titlar inte längre trängs i för smala kolumner - XLSX AutoFit mäter texten som den visas genom talformatet (datum, valutor, procentsatser) i stället för det råa lagrade värdet
- XLSX AutoFit håller anpassade kolumnbredder inom
MaxWidth; cellmarginalen lades tidigare till efter att gränsen redan tillämpats - XLSX AutoFit storleksanpassar rader för celler med radbrytning i kolumner utan explicit bredd mot bladets standardbredd; tidigare mättes sådana celler som en enda rad och raden blev för kort
Version 2.384.45
Rättat
- XLS-arbetsböcker:
ApplyAutoFilter-kriterier som'>=100'eller'=2.5'sparas nu som talvillkor; de sparades som text, och Excel jämför text som text, så filtret dolde alla numeriska rader. Ett värde utan jämförelseoperator (som'North'eller'100') sparas fortfarande som text, på det sätt Excel lagrar ett valt listobjekt Criteria1.DataTyperapporterar 4 (tal) för sådana kriterier i stället för 6 (text);Criteria1.Valueläses fortfarande tillbaka som 100
Version 2.384.44
Rättat
INDIRECTmed A1-referenstext läste cellen en rad ner och en kolumn åt höger (INDIRECT("D1")returnerade E2), i både XLS- och XLSX-arbetsböcker; R1C1-text var redan korrekt. En referens bortom sista raden eller kolumnen returnerar nu#REF!
Version 2.384.43
Rättat
- XLSX-arbetsböcker: formler kan nu referera hela bladet på 1 048 576 × 16 384 celler. Referenser bortom kolumn IV eller rad 65 536 (
=XFD1,=A100000,=SUM(XFC1:XFD1),Data!C1048576) avvisades tidigare som okända namn vid inmatning eller utvärderades till ett fel; de tolkas nu, beräknas, flyttas när rader och kolumner infogas och sparas som skrivna - XLSX-arbetsböcker: helkolumns- och helradsreferenser (
A:A,1:1) täcker hela bladet, såROWS(A:A)returnerar 1048576 ochSUM(A:A)inkluderar värden under rad 65 536;ADDRESSreturnerar trebokstaviga kolumner som$XFD$1 - XLS-arbetsböcker: referenser till sista raden och kolumnen i bladet på 65 536 × 256 (
=A65536,=IV1) godtas; de avvisades som okända namn
Version 2.384.42
Rättat
- Äldre
lxRows/lxCols-enheter (bevarade för källkodskompatibilitet; arbetsboksklasserna använder dem inte): ett radindex över 1 048 575 kastarERangeErrori stället för att slå runt till rad 1, ROW-posten markerar inte längre varje ändring av dispositionsnivå som komprimerad, och COLINFO-skrivning för en kolumn utan egna inställningar använder standardvärdena i stället för att krascha
Version 2.384.41
Rättat
- Lazarus / Free Pascal-byggen kompilerade i ANSI-strängläge: tillfälliga filer vars sökväg innehåller tecken utanför systemkodsidan tas nu bort vid städningen; tidigare lagrades deras namn med förlust och filerna lämnades kvar i tempmappen
Version 2.384.40
Rättat
TlxCellMMU(den packade cellagringen) kastarEInvalidOperationnär en cell skrivs i fel radordning inom ett block på 256 rader eller ovanpå en befintlig cell, ochERangeErrorför en negativ position eller en kolumn över 65 534; tidigare förstörde en sådan skrivning i tysthet den intilliggande raden. Bibliotekets egna massskrivningar håller redan radordning och påverkas inte
Version 2.384.39
Ändrat
- XLSX-arbetsböcker: en tilldelning till
TXLSXWorksheet.TabColorsätter nu ocksåTabColorIsAutotill False, så flikfärgen visas utan en andra tilldelning, i linje med egenskaperna för typsnitts-, fyllnads- och kantfärg. Att sättaTabColorIsAutotill True i efterhand tar fortfarande bort flikfärgen
Version 2.384.38
Ändrat
- XLS-arbetsböcker:
TXLSWorksheet.AddPivotTabletolkar nuDestRowochDestColsom ettbaserade, liksomCells[Row, Col], dokumentationen och XLSX-motorn;AddPivotTable('Data!A1:C9', 3, 1, ...)förankrar pivottabellen vid A3. Kod som skickade nollbaserade positioner måste lägga till 1, och en förankring på 0 eller utanför bladet returnerar nunil - XLS-arbetsböcker: positionerna på
TXLSPivotTable(FirstRowtillFirstDataCol) och källintervallet påTXLSPivotCache(SourceFirstRowtillSourceLastCol) är nu ettbaserade för både nya och öppnade pivottabeller, så samma kod läser samma celler i båda motorerna och en pivottabell som kopieras mellan dem behåller sin plats
Version 2.384.37
Rättat
- XLSX-arbetsböcker: en pivottabell placerad under rad 65 535, eller en som hamnat där genom att rader infogats, behöll sin verkliga position; tidigare kapades förankringen ner till 16 bitar och den sparade pivottabellen landade på fel rader
- Pivottabellens positionsegenskaper (
FirstRow,FirstCol,LastRow,LastCol,FirstHeaderRow,FirstDataRow,FirstDataCol) är nuIntegeri stället förWord - XLSX-arbetsböcker:
AddPivotTableochAddPivotTableCopyreturnerarnilnär förankringen ligger utanför bladet eller det kopierade blocket skulle gå förbi sista raden eller kolumnen, i stället för att skriva en pivottabell som Excel avvisar
Version 2.384.36
Rättat
- C++Builder-exemplen XlsTables, XlsCondFormat12, XlsCreateChart och InteractiveFeatures skriver sina textkolumner som text; en
const wchar_t*tillOleVariantvaldebool-konstruktorn och varje rubrik och etikett kom ut som TRUE - DefinedNames-exemplet listar XLS-namnen från index 1 i stället för att krascha på index 0, WorkbookAudit räknar externa referenser i XLS-arbetsböckernas namn, och FileMonitor skriver
Monitored.xlsxi stället för den felstavade.xlsxxsom fick varje läsning av bladnamn att misslyckas - Pictures- och OdsExport-exemplen bäddar in en giltig PNG; byteliteralen förstördes av strängkonverteringen och Pictures bitlängder var fel
- ApiTour utvärderar sitt
DEMOADD-steg på API Tour-bladet i stället för på det aktiva Dashboard-bladet, där ett textargument kunde avbryta uppstarten; C++Builder-versionen av den klassiska turen visar nu stegets resultat - FreezePanes, QuickStart och ApiTour fryser exakt sina rubrikrader och rubrikkolumner;
FreezePanestar antal, inte den första rullningsbara cellen - Färgerna för villkorsstyrd formatering i ApiTour, CondFormatGallery, OdsExport och WorkbookAudit anges i BGR som API:et förväntar sig, så databalkar och färgskalor visar sina avsedda färger; CondFormatGallery ger sina topp-N-, dubblett- och över-medelvärdesregler en synlig markering
- MemoryDataExport och HtmlExport rapporterar inte längre lyckade CSV-, HTML- och RTF-exporter som misslyckanden (dessa skrivare returnerar 0 vid framgång), och MemoryDataExport skriver alla tre filer även om en misslyckas
- Exempel som sparar och sedan rapporterar eller öppnar filen (QuickStart, ExcelGraphics, HotXLSInMemory, OrderCalc, PurchaseOrder och flera konsolprogramsexempel) kontrollerar sparningsresultatet i stället för att rapportera framgång när filen är låst
- ConversionWorkbench tolkar varje negativt skrivarresultat som ett misslyckande och tar först bort gammal utdata, så att en överbliven fil inte längre döljer en misslyckad konvertering; C++Builder-versionen exporterar varje blad till HTML
- InvoiceTemplate, OrderCalc och DataExport är inte längre beroende av Windows tal- och datumformat: skatteformler, priser och datumtrösklar fungerar på system med kommatecken som decimaltecken eller med året först i datumet
- Mindre rättningar: QuickStarts summor använder mörk text på sin ljusa fyllning, DateSystems visar de råa serienumren och ett giltigt 1904-epochdatum, CrossWorkbookCopy behåller sina sammanslagna celler utanför tabellen, CrossWorkbookCopyXls använder en kommaseparerad lista och en riktigt ljusblå färg, Hyperlinks visar den avsedda länktexten, SheetProtection beskriver och sätter de tillåtna åtgärderna korrekt, OdsImport skapar inte längre tomma celler under genomsökningen, InteractiveFeatures sparar en arbetsbok utan VBA-nyttolast som .xlsx, WorkbookAudit rapporterar krypterade XLS-filer och deras VBA-projekt, ChartTypes håller sina diagram utanför data, C++Builder-dataexportexemplen hittar Demos.mdb från IDE-utdatakatalogen, och FormulaFunctions kontrollerar den återöppnade cellen och räknar misslyckade återöppningar
Version 2.384.35
Rättat
- Att tilldela en färg till ett XLSX-typsnitt, en fyllnad, en kantsida eller en rich-text-körning får nu effekt på egen hand. Dessa objekt börjar med den automatiska färgen, och en explicit
Color,ForegroundColorellerBackgroundColorkastades i tysthet bort om inte den matchande flagganColorIsAuto/ForegroundIsAuto/BackgroundIsAutoockså rensades - Att tilldela en RGB-färg rensar också en tidigare tema- eller indexerad färgkälla, som annars skulle vinna över den; att tilldela ett temaindex eller ett indexerat index på 0 eller mer rensar den automatiska flaggan
- Kantfärger som klistras in i en XLSX-arbetsbok från urklipp, kantfärger från klassiska arbetsböcker som exporteras till XLSX och typsnittsfärgen som skickas till
TXLSXComment.SetFontskrivs nu i stället för att försvinna till den automatiska färgen
Version 2.384.34
Rättat
- Delsumma-, huvudtotal- och tomma objekt i ett pivotfälts objektlista läses inte längre som dataobjekt; kopiering av en sådan pivottabell skrev tidigare ett objekt som pekade på cacheindex -1
- Pivotfält från Excel-filer behåller sin standarddelsumma: Excel utelämnar
defaultSubtotalnär den är på, och HotXLS tolkade det saknade attributet som av - Fält i pivotcachen vars delade objekt utelämnar
containsStringläses som textfält, enligt schemats standard, i stället för som blandade fält
Version 2.384.33
Rättat
- Pivottabeller skrivna av XLSX-motorn använder schemats axelvärden (
axisRow,axisCol,axisPage); tidigare versioner skrevrowAxis/colAxis/pageAxis, som inte är giltig OOXML. HotXLS läser fortfarande filer som innehåller de gamla värdena - Pivotfält som används i värdeområdet flaggas med
dataField="1", och fält utan objekt får inte längre en tom<items>-lista som schemat inte tillåter - Dolda och komprimerade pivotobjekt behåller sitt tillstånd när en pivottabell kopieras eller byggs om, och varje fälts objektlista slutar med de delsummaobjekt Excel förväntar sig för sina delsummafunktioner
- Fält i pivotcachen bär ett numeriskt
numFmtIdi stället för textenGeneral
Version 2.384.32
Rättat
- ODS-importen konverterar rader i inline-matriser rätt:
{1;2|3;4}blir{1,2;3,4}i stället för en formel Excel inte kan tolka - ODS-importen konverterar referensernas unionsoperator:
SUM([.A1:.B2]~[.C3])blirSUM((A1:B2,C3))
Version 2.384.31
Rättat
- ODS-importen läser tidsceller vars varaktighet har en datodel, som
P0Y0M0DT12H30M15S, och veckovaraktigheter somP1W, i stället för att falla tillbaka på visningstexten - Ett
MföreT-avgränsaren i en ODS-varaktighet är en månad, inte en minut; år och månader skilda från noll, som saknar fast längd, faller nu tillbaka på visningstexten i stället för att göraP1Mtill en minut
Version 2.384.30
Rättat
TGWmfEmfReadstänger metafilen när filen är för kort eller skadad, i stället för att hålla den låst till processen avslutasTGWmfEmfReadtolkar en placeable-WMF vars huvud anger noll enheter per tum som utan storlek i stället för att dividera med nollTGWmfEmfReadbehåller 32-bitarsstorlekar och gränser iBSEWMF, i linje med det bildhuvud den beskriver
Version 2.384.29
Rättat
- WMF- och EMF-bilder på 64 KB eller mer i klassiska XLS-arbetsböcker överlever öppning och sparning; deras lagrade och okomprimerade storlekar kapades till 16 bitar, så Excel kunde inte avkoda bilden i den sparade filen
- Metafilbildernas gränser utanför intervallet -32768..32767 bevaras i stället för att slå runt
Version 2.384.28
Rättat
TXMLWriterproducerar inte längre felformad XML när text- eller attributvärden innehåller kontrolltecken, oparade surrogater eller U+FFFE / U+FFFF; tecken som XML 1.0 inte kan representera lämnas bortTXMLWriterskriver en vagnretur i elementtext som en teckenreferens, så texten läses tillbaka oförändrad i stället för att CR görs om till LFTXMLWriterkastar ett fel när målströmmen tar emot färre byte än det som skrivits, som på en full disk, i stället för att lämna efter sig en tyst trunkerad fil
Version 2.384.27
Rättat
- Att kopiera ett intervall vars formler pekar ovanför eller till vänster om det kopierade blocket, som
=B4+1kopierad från B5, klistras nu in med referensen fortfarande en rad upp; tidigare fastnade den vid originalcellen, och en formel kunde till och med hamna i att referera till sig själv - Excel-urklippsdatan som HotXLS publicerar behåller de kopierade cellerna på sin bladposition, så att program som läser den ser originaladresserna
Version 2.384.26
Rättat
- zlib-strängfunktionerna (
ZCompressStr,ZDecompressStroch varianterna på plats) bearbetar nu hela strängen; med Unicode-strängar komprimerades bara första hälften av texten, så en rundtur tappade data
Version 2.384.25
Rättat
- Hyperlänkar i klassiska arbetsböcker vars visningstext är flaggad utan platsflaggan läses korrekt, och hyperlänkar med en ovanlig måltyp får inte längre hela öppningen att misslyckas eller returnera en förvrängd underadress
Version 2.384.24
Rättat
- Ett undantag från ändringshanteraren i filövervakningen stoppar inte längre övervakningen i tysthet; den fortsätter bevaka och rapporterar senare ändringar
Version 2.384.23
Rättat
- Temafärger med en toning under -1 i en felformad fil kläms till svart i stället för att ge slumpmässiga färger vid export eller utskrift
Version 2.384.22
Rättat
- Dataanslutningar som skapas via API:et sparas med det attribut för uppdateringsversion som filformatet kräver
- En anslutning med saknat eller upprepat namn eller id gör inte längre att öppningen av hela arbetsboken misslyckas; posten behålls som den var och sparas tillbaka oförändrad
Version 2.384.21
Rättat
- Att ändra källkoden i en VBA-modul slår nu igenom i Excel: projektet sparas så att Office kompilerar den nya källan i stället för att köra den cachade kompilerade koden från den gamla
- Källkoden i VBA-moduler sparas nu i den komprimerade form som formatet definierar; sista blocket i varje modul lagrades på ett sätt som Office behandlar som skadat
- En felformad VBA-katalogström får inte längre arbetsboksöppningen att hänga sig, och en modulpost som saknar sin ströminformation lämnar inte längre en tom modul i projektet
Version 2.384.20
Rättat
- Definierade namn som lästs från en klassisk arbetsbok behåller sina flyttade referenser när rader eller kolumner infogas eller tas bort och arbetsboken sparas; filen innehöll tidigare fortfarande den ursprungliga referensen
Version 2.384.19
Rättat
- Att anpassa bara raderna eller bara kolumnerna i ett XLSX-blad sätter inte längre bredden på varje uppmätt kolumn, eller höjden på varje uppmätt rad, till noll när den saknar explicit storlek
Version 2.384.18
Rättat
- AutoFilter-kriterier i klassiska arbetsböcker sammanfogas som de en gång sattes: AND-villkor sparades som OR och tvärtom, så Excel visade fel rader
- Booleska AutoFilter-kriterier sparas som TRUE eller FALSE; de lagrades i en form som Excel läser som ett felvärde
Version 2.384.17
Rättat
- Datumen för skapande och senaste sparning i klassiska arbetsböcker stämmer nu med Excel; de skrevs en dag för sent och lästes en dag för tidigt
- Datumet för senaste sparning lagras under sin rätta dokumentegenskap; det sparades i sidantalsplatsen, där Excel och Windows inte visade det som ett datum
- Den totala redigeringstiden lagras som en varaktighet, så att Excel och Windows visar det verkliga antalet minuter i stället för ungefär 299 år; tider skrivna av tidigare versioner läses fortfarande korrekt
Version 2.384.16
Rättat
- Regeln om unika värden i importkontrollen jämför nu cellvärdena; varje värde efter det första i en kolumn rapporterades tidigare som en dubblett
- Att lägga till en andra regel för samma kolumn ersätter den första rent; den gamla regeln frigjordes men kontrollerades ändå, och frigörandet av kontrollen kastade ett ogiltigt pekarfel
- Att kontrollera ett blad skapar inte längre tomma celler för de tomma värden det läser
- Att behålla bara raderna med regelbrott skriver inte längre förbi sin radtabell när ett regelbrott ligger under det använta intervallet, och rubrikraden infogas ovanför data i stället för att skriva över det första regelbrottet
Version 2.384.15
Rättat
- Att läsa en ZIP-post i små bitar tappar inte längre postens sista byte när den komprimerade datan slutar mitt i en upprepad sekvens, vilket kunde få en giltig XLSX att misslyckas med ett fel på poststorleken
- Att dekomprimera data som expanderar bortom 2 GB kastar nu ett fel i stället för att krascha 64-bitsprocessen
- Dekomprimeringsströmmen returnerar all kvarvarande data efter att dess indata tagit slut i stället för att stanna i förtid
Version 2.384.14
Rättat
- Sammanflätade PNG-bilder med 1, 2 eller 4 bitar per pixel skriver inte längre utanför bildbufferten, vilket kunde sluta i krasch eller förstörda grannpixlar vid export eller utskrift av en arbetsbok som innehåller dem
- Sammanflätade PNG-bilder avkodas korrekt när ett pass börjar med filtret Average eller Paeth
- 2-bitars gråskaliga PNG-bilder renderar nu sina verkliga gråtoner, och läsning av enstaka pixlar i 2-bitars gråskaliga och palettbilder returnerar rätt färger
- PNG-bilder vars komprimerade data har extra byte på slutet får inte längre avkodaren att hänga sig, och giltiga bilder med en stor bilddatabit avvisas inte längre med ett CRC-fel
- Bilder med ett ogiltigt bitdjup eller en bitlängd bortom filens slut avvisas rent i stället för att krascha eller allokera gigabyte minne
- Textbitar sparade i PNG-bilder trunkeras eller skadas inte längre
Version 2.384.13
Rättat
- Klassiska arbetsböcker krypterade med RC4 använder nu rätt lösenordshash för lösenord på 28 tecken eller mer, så de öppnas i Excel; lösenord på 32 tecken eller mer gav tidigare filer som inte ens HotXLS kunde öppna
- RC4-lösenord på upp till 255 tecken godtas vid öppning, och filer med 28 till 31 tecken långa lösenord sparade av tidigare versioner öppnas fortfarande
- Ett felformat RC4 CryptoAPI-huvud med en alltför stor längd rapporteras som en skadad fil i stället för att kasta ett generiskt fel
Version 2.384.12
Rättat
- Agile-krypterade arbetsböcker som deklarerar SHA-256 dekrypteras nu korrekt; datasegmenten dekrypterades alltid med SHA-512-initialiseringsvektorer, så arbetsboken inte gick att öppna ens med rätt lösenord
- Agile-filer där nyckeldata och lösenordsnyckelkrypteraren använder olika hashalgoritmer rapporteras inte längre som att de har fel lösenord
- Ett spin count över formatets gräns på 10 000 000 avvisas omedelbart i stället för att hålla processorn upptagen i timmar
- En trunkerad lösenordsverifierare läser inte längre utanför sin buffert, och integritetsnyckeln som
SaveAsEncryptedAgileskriver har nu den längd formatet kräver
Version 2.384.11
Rättat
- Arbetsböcker sparade med
SaveAsEncryptedöppnas nu i Excel. Nyckeln för ECMA-376 Standard Encryption härleddes utan sitt sista steg och paketstorleken krypterades ihop med datan, så Excel avvisade lösenordet; arbetsböcker som Excel 2007 krypterade på det viset kan nu också öppnas - Krypterade arbetsböcker sparade av tidigare HotXLS-versioner öppnas fortfarande med rätt lösenord
- Ett felformat krypteringshuvud med en alltför stor längd orsakar inte längre en access violation vid öppningen
Version 2.384.10
Rättat
- Att kopiera och klistra in formler mellan celler, och sortering där formler kopieras med, flyttar inte längre absoluta referenser:
$A$1står kvar,A$1flyttas bara i sin kolumn och$A1bara i sin rad, som i Excel - Funktionsnamn som ser ut som celladresser, som
LOG10(, flyttas inte längre som referenser när en formel klistras in, så den inklistrade formeln inte längre blirLOG11(och ger#NAME? - Referenser kvalificerade med ett bladnamn, som
Sheet2!A1eller'My Sheet'!B3, flyttas nu vid inklistring liksom okvalificerade referenser - Att klistra in text som börjar med
=eller en apostrof i en klassisk arbetsbok behåller den som text; tidigare gjordes den om till en formel eller tappade sitt första tecken
Version 2.384.9
Rättat
- Talformat för förfluten tid som
[h],[mm]och[ss].00känns nu igen som tidsformat i stället för att tas för färgnamn; med precision-som-visad avstängd (FullPrecisionsatt tillFalse) avrundas inte en varaktighet formaterad som[ss].00längre som ett vanligt tal med två decimaler, vilket tidigare gjorde värden på några sekunder till noll - Minuttoken åtskilda från timme eller sekund av en literal, som i
h:mmochmm:ss, läses nu som minuter i stället för månader när ett talformat analyseras
Version 2.384.8
Rättat
- Att kopiera text, HTML eller kalkylbladsdata till Windows-urklipp använder nu en giltig tillfällig ägare, även i konsolprogram och i trådar utan ett applikationsfönster; kopierad data finns kvar efter att den ägaren förstörts
- Misslyckad urklippspublicering frigör nu varje allokerat datablock som Windows inte accepterade, inklusive tillhörande text- och HTML-block när kalkylbladspubliseringen misslyckas
Version 2.384.7
Rättat
- Att bygga biblioteket från källkod med RAD Studio XE5 till och med RAD Studio 12 Athens misslyckades efter att Free Pascal-stödet och
DATE-fixen för skottdagen kommit på plats: dessa kompilatorer tolkar fortfarande Free Pascal-versionskontrollen medan de hoppar över den, och avvisar den numeriska typkonverteringen bakom specialfalletDATE(1900,2,29). Båda ställena använder nu konstruktioner som alla stödda kompilatorer accepterar, så hela RAD Studio-spannet går att bygga igen
Version 2.384.6
Rättat
- Att kopiera celler som bär en kommentar i en klassisk .xls-arbetsbok — vare sig inom arbetsboken, till en annan arbetsbok eller genom att flytta rader och kolumner — behöll kommentartexten men tappade dess formaterade körningar, så varje kopia visade hela noteringen i ett typsnitt; körningarna färdas nu med texten, och över arbetsböcker läggs deras typsnitt till målarbetsboken
- Att kopiera ett helt kalkylblad med
Sheets.AddCopyi en klassisk .xls-arbetsbok tappade kommentarer på celler som inte höll något värde eller någon formatering; dessa kommentarer kopieras nu också - Kommentarer i .xlsx-arbetsböcker öppnades igen utan typsnittsnamnet, genomstrykningen och färgen för sina formaterade körningar, och sparade körningar bar aldrig understrykning eller upphöjd/nedsänkt text; allt detta överlever nu en sparning och återöppning, inklusive körningar kopierade från en annan arbetsbok med
CloneRangeTo
Version 2.384.5
Rättat
- Formaterade körningar i kommentarer och textrutor i klassiska .xls-arbetsböcker tappar inte längre sina typsnitt vid sparning. Ett typsnitt som bara användes av en sådan körning kunde slängas från den sparade typsnittslistan, oftast när HotXLS sparade om en arbetsbok den redan sparat en gång, och körningen visade då standardtypsnittet i Excel eller plockade upp ett typsnitt som lagts till under tiden; de typsnitten hålls nu kvar, och körningarna numreras om tillsammans med resten av typsnittslistan
TextRuns.FontIndexpå kommentarer och textrutor följer filens typsnittsnumrering, där index 4 aldrig används och det femte typsnittet är index 5; palettreservationen för indexerade typsnittsfärger läser nu dessa index på samma sätt
Version 2.384.4
Rättat
- Typsnittsnumreringsändringen i 2.384.1 var själv felet: klassiska .xls-filer numrerar typsnitt som Excel gör det ([MS-XLS] §2.5.129), där index 4 aldrig används och det femte typsnittet är index 5, men 2.384.1 gick över till en enkel nollbaserad räkning; sparade arbetsböcker visade då varje eget typsnitt en plats för tidigt i Excel (det första föll tillbaka till standardtypsnittet), och Excel-skapade arbetsböcker öppnades med varje eget typsnitt förskjutet en plats för sent. Sparing och öppning följer Excels numrering igen, verifierat mot arbetsböcker skrivna och lästa av Excel självt
- Rich-text-celler behåller typsnittet för varje formaterad körning genom öppning, sparning och kalkylbladskopior över arbetsböcker, inklusive körningar vars typsnitt ingen cell använder direkt
- Arbetsböcker sparade av 2.384.1 till 2.384.3 med fem eller fler typsnitt bär redan den förskjutna numreringen, som vare sig Excel eller HotXLS kan skilja från giltiga data; återskapa dem från sin källa, eller applicera de berörda typsnitten igen och spara igen
Version 2.384.3
Rättat
- Datum från 1900-01-01 till 1900-02-28 hamnade en dag fel mot Excel i båda arbetsboksmotorerna, eftersom Excels 1900-kalender räknar med en fiktiv 1900-02-29; inläsning och sparning tillämpar nu den dokumenterade korrigeringen,
DATE(1900,2,29)svarar med 1900-02-28 i stället för#VALUE!, och tabellen över delade strängar överlever inbäddade NUL-tecken och tvåbytekodsidor över postgränser utan att tappa synkningen - Jämförelser kedjas från vänster till höger som Excel utvärderar dem, så
=1<2<3läses nu som(1<2)<3och returnerar FALSE som Excel gör (i en jämförelse rankas TRUE framför alla tal), medan uttrycket tidigare grupperades som1<(2<3)och returnerade TRUE; en tom operand är i jämförelser lika med både 0 och en tom sträng; jokerteckenkriterier gäller för "inte lika" iCOUNTIFochSUMIFprecis som de redan gjorde för "lika"; summaintervallet förSUMIFoch dess syskon ändrar storlek från sin övre vänstra cell till kriterieintervallets form i stället för att klämmas fast, ochINDIRECTrespekterar sitt andra argument (absolut R1C1-text) och avvisar skräp efter referensen YEARFRACmed bas 0 tillämpar samma NASD-justeringar kring februaris slut somDAYS360redan implementerat, så perioder som nuddar februaris slut räknas rätt- Text som lyder "endstream" i en cell kan inte längre trunkera en PDF-sida under strömpackning, fixen av tokens för totalt antal sidor håller strömlängden konsekvent när packning hoppas över, objektoffset bortom 32 bitar misslyckas högljutt i stället för att förstöra korsreferenstabellen, och gråskaliga eller CMYK-JPEG:ar taggas med sin verkliga färgrymd i stället för
/DeviceRGB - En arbetsbok vars pivot-cache-lagring plockats bort eller trunkerats öppnas med de berörda cacherna markerade som ofullständiga i stället för att hela inläsningen misslyckas, och sparar om cacherna genom det gamla inline-upplägget i stället för att ge fel
- En tabell över delade strängar vars deklarerade strängantal överstiger vad postkedjan levererar misslyckas nu vid öppningen i stället för att i tysthet lösa kvarvarande celler till tomma strängar
Version 2.384.2
Rättat
- Konvertering av en klassisk .xls-arbetsbok till .xlsx tappade i tysthet sammanslagna celler som låg till vänster om en tidigare sammanslagning på en lägre rad; skanningen återanvänder inte längre sin variabel för använt intervall till sammanslagningsområdet
- En XML-kommentar i en arbetsboks tilläggslista skrevs ut igen med fördubblade
<!---markörer vid varje sparning, vilket gav en fil som Excel måste reparera; kommentarsnoder klarar nu en rundtur byte för byte - Okända kalkylbladsposter fångade från en öppnad .xls släpptes bort från varje efterföljande sparning trots att de sparades för uppspelning, och läckte minne vid varje öppning; de består nu och spelas upp ordagrant genom den vanliga postskrivaren
- Definierade namn längre än 255 tecken och namnkommentarer längre än 65535 tecken förstörde NAME-postens inramning vid sparning; båda avvisas nu direkt
- En avbruten sparning läckte arbetsbokens och kalkylbladens postbuffertar när krypteringen visade sig inte stämma mitt i lagringen; sparningen frigör nu sina buffertar på alla utgångsvägar
- Skrivaren som patchar på plats raderade originalfilen innan ersättaren döpts om till platsen, så ett misslyckat namnbyte förstörde arbetsboken; bytet är nu en enda atomisk ersättning som behåller båda filerna vid fel
- Cellreferenser i direktläsaren upprätthåller gränserna 16384 kolumner och 1048576 rader i stället för att acceptera överrunna koordinater, felformade heltalsattribut faller tillbaka på standardvärden i stället för att avbryta hela läsningen, och datum mellan 1900-01-01 och 1900-02-28 konverteras med Excels fiktiva skottdag beaktad i båda riktningarna
- Attributvärden som innehåller tabulator, radmatning eller vagnretur klarar en rundtur oförändrade i stället för att kollapsa till mellanslag, och en oavslutad entitet i elementtext avvisas nu som i attributgrenen
- Ordagranna kopior av ZIP-poster på 4 GiB eller mer, som kopieringsvägen inte kan rama in korrekt, avvisas nu som strömskrivaren gör i stället för att ge ett korrupt arkiv
- Corpus-köraren skriver sina resultat atomiskt så att ett avbrutet körningspass inte kan förstöra bevarad bevisning, noterar tidsgränser för byggen i stället för att krascha, och tolererar felformade stage-trace-rader; LibreOffice-verifieraren skriver sin bevisning atomiskt och filbytesproben samlar faktiskt in antivirusproduktlistan igen
Version 2.384.1
Rättat
- Varje teckensnitt från det femte och framåt skrevs med ett postindex ett steg förbi slutet av teckensnittslistan, så Excel reparerade arbetsboken och anpassade teckensnitt kom tillbaka som standard; både sparning och öppning använder nu det dokumenterade nollbaserade indexet, så anpassade teckensnitt överlever en rundtur och Excel-skrivna filer behåller sina teckensnitt när de öppnas i HotXLS
- Utvärdering av
=0^-1eller en negativ bas med bråktalsexponent kraschade omberäkningen med ett flyttalsundantag i stället för att returnera#DIV/0!eller#NUM! - Uttrycksregler för villkorsstyrd formatering lästa från en befintlig .xls sparades om som en föräldralös CF12-post under det rena legacy-huvudet, som Excel kastar bort; de behåller nu legacy-postformen och sin markeringsformatering
- Snittoperatorn för referenser och det implicita snittet av omstorade
OFFSET- och flercelligaINDIRECT-resultat följde fel axel eller avvisade giltiga intervall med en enda rad eller kolumn och returnerade fel cell eller#REF! - Strömläsaren för rader rapporterade alla cachade booleska formelvärden som FALSE och alla cachade fel som
#NULL!vid läsning av klassiska .xls-filer - Stora .xls-filer vars behållare av sammansatt fil överskrider de 109 FAT-sektorer som ryms i huvudet kunde inte öppnas av den självständiga läsaren för sammansatta filer, eftersom DIFAT-tilläggskedjan aldrig följdes
- Anpassade tabellstilar läste in sina fyllnads- och teckensnittsfärger med den röda och blå kanalen ombytta, så en sparad stil kom tillbaka i fel färg
- Felformade PNG-bilder inbäddade i en arbetsbok kunde krascha processen genom en skrivning utanför gränserna under PDF-bildinbäddning eller en obegränsad genomsökning av textbitar; inbäddade PNG:ar kontrolleras nu dimensionellt och felformade bitar avvisas
- EMF-regioner med flera rektanglar renderades som sin begränsningsruta, EMF-bilder utan explicit viewport-utsträckning skalades fel och upphöjd text renderades under baslinjen på canvas-, utskrifts- och metafilutdata
- Automatiskt prioriterade BIFF-regler för villkorsstyrd formatering bar alla prioritet 1, vilket Excel flaggar som en reparation; automatiska prioriteringar är nu unika per blad som deras XLSX-motsvarigheter
- Kantstilen
xlSlantDashDotskrevs somxlDashDotDoti klassisk .xls-kantutdata - En trunkerad huvudpost i en krypterad arbetsbok kastade ett undantag genom
Openi stället för att returnera lösenordsfelkoden, och flera felpåver läckte minne vid tolkning av felformade bild- eller arbetsboksfiler
Version 2.384.0
Ändrat
- Klassiska XLS-pivotcacher sparas som Excel sparar dem: posterna för varje cache går till en egen lagerström, medan strömidentifieraren, cache-omfånget och källdefinitionen för kalkylblad eller namngivet intervall skrivs en gång i arbetsbokens globaldel; cacher skrivna av äldre HotXLS-versioner behåller sitt tidigare inline-upplägg om inte den frivilliga uppgraderingen av inramningen är påslagen
- Lösenordsskyddade arbetsböcker krypterar varje pivot-cacheström som en egen postström som börjar om från strömmens början i stället för att fortsätta på arbetsboksströmmens krypteringsposition
Rättat
- En PivotTable kunde peka på fel cache efter sparning av en arbetsbok som blandade cacher lästa från en befintlig fil med cacher skapade i kod; referensen från vy till cache följer nu den faktiska sparningsordningen
- Varje HotXLS-paket bar fortfarande versionsresursen från 2.379.7, och en ombyggnad av ett paket i C++Builder kunde ta bort versionsresursen helt; alla paket bär nu aktuell version
Version 2.383.4
Rättat
- Djupa formelgranskningar håller nu ändrade resultat tillgängliga för beroende formler även när ändringarna ligger inom rapporteringstoleransen, och en explicit tillämpning uppdaterar dessa oanmälda resultat
- Relativ tolerans följs nu för cachade resultat i dubbel precision i båda arbetsboksmotorerna, medan oförändrade resultat undviker en dubblerad jämförelse
Version 2.383.3
Rättat
- Filbaserade arbetsboksparingar bevarar nu det ursprungliga Windows-felet när en färdig XLSX-, XLTX- eller ODS-utdata inte kan ersätta sitt mål, även när städning eller en förloppscallback ändrar trådens feltillstånd
Version 2.383.2
Rättat
- Upprepade kopieringar av rapportband och intervall återanvänder suffixsökningar efter definierade namn i stället för att skanna om varje tidigare kopia, samtidigt som det första tillgängliga namnet, kalkylbladsomfånget och återanvändningen av namn som frigjorts av senare redigeringar bevaras
Version 2.383.1
Rättat
- Ombyggnad av formelberoenden undviker upprepad skanning av föregående formelrader, vilket sänker kostnaden för stora beräkningskedjor samtidigt som referenser från matrisutdata, beroenden över blad och uppslagsordningen bevaras
Version 2.383.0
Tillagt
- Makrofria Excel-mallar kan sparas som XLTX via ett explicit val av utdataformat, med filer eller strömmar och buffrad eller strömmad utdata
- Mallutdata bevarar formler, definierade namn, utskriftsområden och kalkylbladsmetadata medan arbetsbokens standardsparningsbeteende lämnas oförändrat; arbetsböcker som innehåller VBA avvisas innan något skrivs till målet
Version 2.382.5
Rättat
- Fonetiska inställningar behåller det obligatoriska standardteckensnittsindexet, så att Excel inte avvisar sparade arbetsböcker när indexet är noll
- Dynamiska formler för utskriftsområden och unioner av bladkvalificerade intervall överlever en rundtur utan att en funktion förses med något bladprefix eller att referenser inuti ett uttryck trunkeras
- Genererade och bevarade paketdelar delar unika deklarationer av innehållstyp, och anpassade egenskaper kolliderar inte längre med opaka relationsidentifierare i roten
Version 2.382.4
Rättat
- Skalära referenser via definierade namn använder skärningen med aktuell rad eller kolumn medan intervallargument behåller sina fullständiga intervall, vilket undviker falska beroendecykler i lånemallar
- Formelaritmetik med blandade heltal och flyttal behåller flyttalsprecision i stället för att trunkeras till fyra decimaler
- Omberäkningen prioriterar tillgängliga uppslagsföregångare innan deras cacher läses, vilket undviker föråldrade antal betalningar och liknande uppslagsresultat
Version 2.382.3
Rättat
- AGGREGATE hanterar oberäknade fel och kapslad aggregering med oberoende urvalsinställningar, bevarar matrisberäkningar och propagerar ursprungliga feltyper
- Sparningar av klassiska XLS-filer bevarar befintliga formelcacher tills en explicit omberäkning, inklusive rötter för delade formler och matrisformler; delade formler översätter relativa referenser för sina målceller
- Strukturerade referenser stöder omvänt snedstreck och punkter i tabellnamn, kapslad syntax för aktuell rad samt escapade kolumnnamn, utan att liknande text inuti formelsträngar ändras
- Villkorsstyrd formatering i XLSX behåller RGB-färger, explicita teckensnittsflaggor, understrykningsstilar, teckensnittsnamn, storlekar och scheman
- Oförändrade diagram bevarar sina ursprungliga definitioner och icke-noll offsetvärden för ankaret, så att seriefärger, positioner och storlekar inte ändras
- Inställning av sidmarginaler skriver inte längre någon ospecificerad sidorientering, och klassisk XLS bevarar saknade importerade sidmarginaler i stället för att lägga till standardvärden som ändrar utskriftsplaceringen
Version 2.382.2
Rättat
- ODS-arbetsböcker med stora upprepade intervall av tomma rader öppnas och sparas utan att varje radhöjd och ärvd stil för tomma celler expanderas ut till enskilda objekt
- ODS-utdata bevarar explicita radhöjder och kompakta upprepade formaterade rader, inklusive överskrivningar för enskilda rader och rensade höjder; radhöjdsintervall överlever dessutom kalkylbladskopiering, radinfogning och -borttagning, utläggning och XLSX-export
Version 2.382.1
Rättat
- Öppning och sparande av XLSX-arbetsböcker med kolumninställningar över hela bladbredden skannar inte längre kolumnmetadata upprepade gånger eller kopierar den växande kolumn-XML:en, vilket eliminerar roundtrip-timeouts i datum- och mallarbetsböcker samtidigt som kolumninställningarna behålls
- Pivotdefinitioner i ODS behåller ärvda XML-namnområdesdeklarationer, inklusive producenttillägg, så att den sparade XML:en förblir välformad
Version 2.382.0
Rättat
- Sparande av en klassisk XLS-arbetsbok håller nu nästlade
SUBTOTAL-celler borta från de omgivande delsummorresultaten och bevarar de ursprungliga cachade summorna i stället för att räkna grupprader dubbelt - XLSX-diagram läses bara in via den ritningsrelation som varje kalkylblad refererar, så att en olänkad konventionell ritningsdel inte längre kan duplicera ett diagram under en roundtrip
- OpenDocument data-pilot-tabelldefinitioner överlever en ODS-sparning, inklusive deras källintervall, fält, målintervall, knappar och producenttilläggets attribut
AGGREGATE-alternativ 0-7 följer nu de dokumenterade urvalsreglerna för dolda rader, fel och nästladeSUBTOTAL/AGGREGATEi både referens- och matrisberäkningsformerna
Version 2.381.0
Tillagt
- Tabellslicers (Excel 2013+):
Worksheet.Slicers.Add(Table, ColumnName)skapar en slicervy för valfri tabellkolumn helt från ände till ände — slicercachen bakom vyn med namnetSlicer_<column>, det reserverade definierade namnet#N/A, kalkylbladetsslicerList-tillägg och ett markup-kompatibelt ritankare med en fallback-notis för äldre Excel-versioner skrivs alla automatiskt, och vyn kan positioneras, förses med bildtext och formateras viaCaption,ColumnCount,StartItem,StyleName,RowHeightochSetBounds - Roundtrip-modell för slicers: slicervyer och cacher parsas tillbaka vid öppning (delade cacher återanvänds mellan vyer, och raderas den sista vyn försvinner även dess cache), oändrade slicerdelar och ankare spelas tillbaka byte för byte, och en tabellcache håller sin tabellbindning giltig även när sparandet numrerar om tabell-id:n
Rättat
- Slicercacher skrivna av tidigare versioner refererade det tabell-id som filen bar med sig vid öppningen; när sparandet numrerade om tabell-id:n i hela arbetsboken kunde det inaktuella
tableId-värdet få Excel att hamna i reparationsläge. Bindningen följer nu tabellen genom omnumreringen
Version 2.380.0
Tillagt
- Vattenfalls- och treemap-diagram: de utökade diagramtyperna i Excel 2016 kan skapas, sparas och öppnas igen. De serialiseras som egna extended-chart-delar med egen innehållstyp, databindning mot kalkylbladet och ett markup-kompatibelt ritankare som bär en fallback-notis för äldre läsare
- Treemap-diagram stöder hierarkiska kategorier: varje kategorinivå i serien skrivs och läses tillbaka som sin egen nivå inuti kategoridimensionen, med löv- och överordnade etiketter bevarade
Version 2.379.4
Rättat
- En skadad eller fientlig Classic XLS-behållare skadar inte längre minnet vid öppning. Läsaren av sammansatta filer kopierade en hel sektor till ministrommen även när bara en del av den hörde dit, följde mini-allokerinstabellen förbi slutet på den strömmen, accepterade sektorstorlekar som formatet inte definierar och storleksbestämde sin allokerinstabell från ett okontrollerat antal. Sektor- och minisektorkedjor skyddas nu mot cykler, och ett strömnamn som fyller sitt fält utan avslutstecken avgränsas
- En stilpost som namnger ett cellformatindex bortom formattabellen skriver inte längre via det indexet. Referensräknarna i de delade format- och nyckellistorna kontrollerade bara nedre gränsen, så ett 12-bitarsindex från filen kunde nå förbi arrayen
- Ett lokalt filhuvud skrivet med ZIP64-utökad information skriver inte längre över sin buffert: den deklarerade huvudstorleken tar nu hänsyn till det 28 byte stora extrafält som skrivaren lägger till. Postförskjutningar och strömpositioner spåras som 64-bitarsvärden, en ZIP64-post läses med längden från sitt extrafält istället för sentinelvärdet, och en post större än 4 GiB avvisas istället för att registreras som sin rest
- Ett ZIP-postnamn som innehåller en Windows-separator normaliseras. Ett enskilt omvänt snedstreck konverterades aldrig till ett vanligt snedstreck, så
..\..\namepasserade kontrollen mot katalogtraversering som delar på vanliga snedstreck - Ett maskintervall utan övre gräns, som
[a-, läser inte längre förbi maskens slut, och bygge av en mask som börjar med en teckenuppsättning läcker inte längre en uppsättning per mask. Båda kan nås från COUNTIF- och SUMIF-kriterier - Sökning över hela cellen med jokertecken kräver nu att mönstret matchar hela cellen, i linje med både det dokumenterade beteendet och jämförelsen av hela celler utan jokertecken.
FindTextmed mönstretabcmatchade tidigare även en cell som innehållerabcdef - Precision som visat rundar inte längre celler vars talformat saknar platshållare för siffror. En cell formaterad som
Generalmed namnet, som text med@eller med ett format med enbart literaler avrundades till ett heltal - Tabellen för delade strängar rapporterar inte längre fler unika strängar än den skriver, fogar inte längre en raderad strängs formaterade textsegment till den sträng som återanvänder dess plats, och avger inte längre en fortsättningspost som inte innehåller något utöver sin optionsbyte när en sträng svämmar över enbart på grund av sin formateringssvans
- RTF-import slutar duplicera tecken utanför ASCII. Ett
\\uN-escape följs av reservtecken skrivna som\\'hh, vilket hopplogiken inte kände igen, så var och en av dem avgavs också som text. Hoppade grupper hedrar nu\binN-rånyttolaster, och en tabell som är bredare eller högre än kalkylbladsrutnätet stannar vid kanten istället för att kasta - En numerisk teckenreferens utanför det teckenintervall XML definierar avvisas vid inläsning istället för att ge upphov till ett inbäddat NUL, ett ensamt surrogat eller en insvept kodpunkt. Tab, radmatning och vagnretur överlever en OPC-rundtur som teckenreferenser istället för att normaliseras till mellanslag
- CSV-import bevarar
SkipRows-värdet över parsningar; det minskades på plats, så den andra filläsningen genom samma läsare hoppade inte över något - En
xl/tables/-del känns nu igen när det avgörs vilka delar som ska bevaras; prefixjämförelsen var ett tecken för kort och matchade aldrig
Version 2.379.3
Rättat
- HTML-importen avkodar decimala teckenreferenser.
éoch alla andra former av&#NNN;gav ett NUL-tecken istället för tecknet själv, eftersom konverteringen skrev sitt resultat och sin felposition i samma variabel och framgångskoden skrev över värdet. Hexadecimala referenser påverkades inte; båda formerna avvisar nu värden utanför det representerbara intervallet istället för att avge ett felaktigt tecken - HTML-exporten bevarar hela deladressen för en intern hyperlänk när dess ankarmål byggs. En deladress längre än 255 tecken trunkerades, så det genererade ankaret matchade inte längre länken
Version 2.379.2
Rättat
- En GIF som infogas via
AddPictureellerImages.AddFromFiletar nu sin storlek från den logiska skärmbeskrivningen. Varje GIF rapporterade tidigare 100 gånger 100 punkter oavsett sina verkliga dimensioner, så bilden kom fram uttöjd eller hoptryckt - BMP-storleksbestämning läser bitmappshuvudet som filen faktiskt deklarerar: en
BITMAPCOREHEADERmed sina 16-bitarsdimensioner förstås istället för att läsas som 32-bitarsfält, och en top-down-BMP med negativ höjd ger inte längre en negativ bildhöjd - JPEG-storleksbestämning godtar alla SOFn-rammarkörer, inte bara baseline, extended sequential och progressive. Förlustfria, aritmetiskt kodade och hierarkiska JPEG-filer föll tidigare tillbaka till standarden 100 gånger 100
Version 2.379.1
Rättat
- WMF-bilder avkodas nu som vektorscener för SVG, PDF och paginerad utdata. Sedan 2.363.0 läste avkodaren varje post som en 16-bitars storlek följt av funktionskoden, men en metafilpost börjar med en 32-bitars storlek, så varje WMF skriven av Windows eller Office stannade vid sin första post och bilden föll tillbaka till en rasterplatshållare. Posterna inramas nu enligt
[MS-WMF] §2.3, och penna-, pensel-, typsnitts-, text-, form- och polygonparametrarna läses från sina angivna förskjutningar META_STRETCHDIBförväntade sig DIB:n före destinationsrektangeln och antog ett 40 byte stort bitmappshuvud; rektangeln föregår nu DIB:n som formatet anger,BITMAPV4HEADER/BITMAPV5HEADERoch färgtabeller hedras när pixelbitarna lokaliseras, och posten bidrar med ett bildkommando vidXDest,YDestmed storlekenDestWidthgångerDestHeightMETA_EXTTEXTOUThoppar över sin valfria rektangel när antingenETO_OPAQUEellerETO_CLIPPEDär satt, så text ritad med opak bakgrund läses inte längre från fel förskjutning- Metafilbilder inbäddade i en sidrendering läser sina pixlar från den förskjutning som bitmappshuvudet anger istället för fasta 40 byte, så en
BITMAPV4HEADER- ellerBITMAPV5HEADER-bild renderas inte längre som förskjutet färgbrus
Version 2.379.0
Tillagt
TGridToXLSär nu en del av Free Pascal-runtime-paketet, så enTDBGridi Lazarus exporteras som den gör under VCL: explicita kolumner behåller sina rubriker, typsnitt, färger, justering, bredder och synlighet, ett rutnät utan explicita kolumner exporterar en kolumn per datauppsättningsfält, och resultatet sparas som XLS, XLSX, HTML eller RTF via sammaSaveAs-anrop
Version 2.378.4
Rättat
- TEXTBEFORE och TEXTAFTER läser sitt argumentantal från en lokal variabel som aldrig tilldelades, så de valfria argumenten instance, match-mode, match-end och if-not-found kunde ignoreras, eller så avvisades ett giltigt anrop med #VALUE!, beroende på kvarvarande stackinnehåll; antalet kommer nu från anropet självt
- En storleksändrad OFFSET, en med höjd eller bredd skild från 1, som utvärderades i en enskild cell jämförde formelcellen mot ett ankare som ännu inte hade beräknats, så den implicita skärningen kunde returnera #REF! eller fel cell; det förskjutna ankaret beräknas nu före skärningstestet
Version 2.378.3
Rättat
- Under Free Pascal gav matchning eller ersättning av en tom sträng upphov till felet för reguljära uttryck, så ett rapportuttryck som
regexreplace(Code,"[^0-9]","")misslyckades medREPORT_EXPRESSION_INVALID_REGEXnärhelst fältet var tomt. FPC-backend svarar nu somTRegExgör under Delphi: ett mönster som accepterar en tom sträng, som^$eller.*, matchar den och ger sin ersättningstext, medan[0-9]+eller\s+inte ger någon matchning
Version 2.378.0
Tillagt
- HotXLS byggs nu med Free Pascal 3.2.2 och Lazarus/LCL på Windows, Win32 och Win64. Arbetsboks-API:erna för XLS och XLSX, formler, stilar, den direkta läsaren och skrivaren, datauppsättningsexport och renderingshjälpmedlen fungerar alla från FPC-kod med Delphi Unicode-strängsemantik; ämnet Free Pascal- och Lazarus-stöd täcker programkonfiguration och skillnaderna mellan backends
- Runtime-paketet
Lib/FPC/HotXLSLaz.lpköppnas i Lazarus eller byggs per arkitektur från kommandoraden viabuild-FPC-Lib.cmd, och Lazarus-röktestsviterna underTests/Lazarustäcker arbetsboksrundturer, komprimering, kryptering, COM-strömmar, grafik, textläsning, reguljära uttryck, datauppsättningsexport och rapportuttryck - FPC-byggen använder medföljande Pascal-backends för ZIP, komprimeringsströmmar och AES, så XLSX-filer, inklusive lösenordsskyddade, behöver varken en zlib-DLL eller de förfabricerade objektfiler som Delphi länkar in; PNG behåller sin alfakanal, EMF-ritning och uppspelning går via Windows-metafiler, och flersidig TIFF-export använder GDI+-runtime
Version 2.377.2
Tillagt
- En klassisk XLS-PivotCache skriven av HotXLS bär nu de poster som formatet definierar cachehuvudet mot. Huvudets ström-id och källdatatyp användes tidigare för att namnge en SXStreamID och en SXVS som aldrig skrevs, så ingen läsare kunde kontrollera någon av dem; båda posterna skrivs nu och båda huvudfälten hämtas från samma värden, så de stämmer redan per konstruktion
- Cache-underströmmar bär också SXDBEx, posten som följer cachehuvudet i varje cache som Excel skriver. Den registrerar när cachen senast uppdaterades, så
TXLSPivotCache.RefreshedDateöverlever nu en klassisk XLS-sparning och omhämtning som den redan gjorde i XLSX TXLSPivotCache.StreamIdochTXLSPivotCache.SourceDataTypeexponerar de två värdena, läses tillbaka från en fil som anger dem och skrivs in i postparet plus cachehuvudet. En cache byggd medAddPivotTablerapporterar ström 0 och en kalkylbladsintervallkälla
Ändrat
- Den valfria omskrivningen av gammalt cache-framing (
UpgradeLegacyPivotCacheFraming) producerar nu även dessa tre poster, så en uppgraderad cache är inte bara korrekt inramad utan komplett på samma sätt som nyskrivna. En cache som redan bar en SXStreamID, en SXVS eller en SXDBEx behåller det den bar; en vars SXDBEx påstår formelposter som HotXLS inte skriver stannar på rå uppspelning - Inläsningen påverkas inte: filer skrivna före denna utgåva läses in exakt som tidigare, och cacheposter som HotXLS fortfarande saknar modell för — däribland DConRef eller DConName som namnger ett källintervall — fortsätter att bevaras byte för byte över en rundtur
Version 2.377.1
Tillagt
- En arbetsbok kan nu begära att sina gamla PivotCache-underströmmar skrivs om vid sparning.
TXLSWorkbook.UpgradeLegacyPivotCacheFramingär av som standard; aktiverad sparas en klassisk XLS-fil vars cachar skrevs av HotXLS före v2.377.0 med dessa cachar återutgivna genom de korrigerade SXDB / SXFDB / SXDBB-skrivarna, så serien av pivotcache-fixar från v2.376.1 till v2.376.7 når filer som redan finns istället för endast ny utdata - Uppgraderingen tillämpas endast där den bevisligen inte kostar något. En cache som lästs från en fil återutges endast när hela dess underström innehöll poster som HotXLS modellerar och dess framing är en som HotXLS själv skrev fel; allt annat — varje cache som Excel producerat och varje cache som bär en post som SXDBEx som HotXLS bara behåller som opaka byte — fortsätter att spela upp sina egna byte med tillvalet påslaget.
TXLSPivotCache.CanUpgradeFramingrapporterar domen för en cache, ochRawFramingIsLegacy/RawModelIsCompleterapporterar de två delar den vilar på - En uppgraderad cache skrivs där dess underström låg istället för att flyttas framför de andra, så en PivotTable-vy löses fortfarande till cachen den namngav före sparningen
Rättat
- En klassisk XLS-PivotCache som lästs från en fil och sedan lämnats till skrivaren med sin flagga för rå uppspelning rensad producerade två cache-underströmmar, modellens och filens. Den producerar nu en
Version 2.377.0
Tillagt
- Klassiska XLS-kalkylblad accepterar inbäddade diagramobjekt:
AddChartObjectpå ett kalkylblad förankrar en diagramram i bladets rutnät (OBJ-typ 5 värdkontrollform plus MSODRAWING-klientankaret), bygger diagramunderströmmen genom den delade diagrambyggaren och följer bladets postlista så att fillayouten matchar det läsaren återfäster vid öppning; en rundtur ger tillbaka ramen med sin diagrammodell — serier, titel och intervallreferenser intakta
Rättat
- SeriesText-poster avkodar sin strängnyttolast med rätt bredd: läsaren skickade teckenantalet där ett byteantal förväntades, så 16-bitars bildtexter och serietiketter kom tillbaka trunkerade till hälften av sin längd (en titel på fem tecken lästes som två tecken)
Version 2.376.7
Rättat
- De cachade raderna bakom en PivotTable i en klassisk XLS-fil skrivs som [MS-XLS] 2.4.276 beskriver dem: en post per rad cachad data, med ett index per cachefält, en byte brett, eller två byte för ett fält med fler än 255 distinkta värden. HotXLS hade istället skrivit ett eget schema, som klämde ihop varje fält i precis tillräckligt många bitar för att räkna dess värden och packade många rader i en post, vilket inget annat program kunde avkoda och som motsade flaggan för fler-än-255-värden som fältdefinitionen redan bar
- Excel kan nu läsa de värden som en HotXLS-PivotCache innehåller istället för att behöva bygga om dem från källintervallet när arbetsboken öppnas, vilket var det en arbetsbok vars källdata sedan flyttats, ändrats eller raderats förlitade sig på
- Cachade rader läses också tillbaka. HotXLS ignorerade tidigare posten helt, så en cache som lästs in från en fil kom tillbaka med varje rad pekande på det första värdet i varje fält, och allt som beräknades ur den cachen följde dessa felaktiga värden. Detta gäller en arbetsbok skriven av Excel lika mycket som en skriven av HotXLS
- Ett cachefält utan värden bidrar inte med något till en cachad rad, och ett fält med fler än 255 värden lagras och läses i den bredare storlek som formatet kräver
- Arbetsböcker skrivna av HotXLS v2.376.6 och tidigare läses fortfarande in med sina cachade rader intakta
Version 2.376.6
Rättat
- PivotCache-huvudposten i en klassisk XLS-fil är utlagd som [MS-XLS] 2.4.275 beskriver den. Postantalet är ett fyra-byte-fält där och HotXLS skrev det på två byte, så varje fält bakom det gick ut en position för tidigt och posten blev fyra byte för lång — antalet cachefält hamnade inuti postantalet, flaggordet landade på strömidentifieraren och fältantalet på längden av namnet på den som senast uppdaterade cachen, med löfte om ett namn som posten var för kort för att rymma
- Huvudets flaggor säger nu vad cachen faktiskt är: huruvida dess poster lagras i filen, huruvida den uppdateras när arbetsboken öppnas, huruvida uppdatering är tillåten och huruvida uppdateringsfrågan körs i bakgrunden. Dessa fyra inställningar fanns redan i XLSX-utdata och följer nu med en klassisk XLS-fil också, tillsammans med namnet på den som senast uppdaterade cachen
- Källdatatypen i huvudet skrivs som ett kalkylbladsintervall istället för att lämnas på ett värde formatet inte definierar, och fältantalen och det använda postantalet bär cachens verkliga totaler
- Uppdaterarens namn trimmas till de 255 tecken som posten tillåter, och en cache utan ett sådant skriver inget namn alls istället för en tom platshållare
- Arbetsböcker skrivna av HotXLS v2.376.5 och tidigare läses fortfarande in och lämnar fortfarande ifrån sig sitt cache-postantal. Inget annat lagrades någonsin i det gamla huvudet — skrivaren fyllde varje fält bakom postantalet med fasta värden den aldrig läste ur cachen — så flaggorna och uppdaterarens namn i en sådan fil kommer tillbaka som standardvärden snarare än som återvunna värden
Version 2.376.5
Rättat
- PivotCache-fältnamn överlever sparning och omhämtning av en klassisk XLS-fil. Namnlängden lästes från fel plats i cachefältdefinitionen — ett index som alltid är $FFFF — så namnet kastades bort varje gång och varje cachefält kom tillbaka namnlöst
- Cachefältdefinitionsposten är utlagd som [MS-XLS] 2.4.283 beskriver den: grbit, ifdbParent, ifdbBase, citmUnq, csxoper, cisxoper, catm och sedan fältnamnet. HotXLS hade skrivit tre fält som posten inte har — ett undertypselementindex, ett talformat och ett andra elementantal — och stoppade $FFFF i index som specifikationen avgränsar med antalet fält i cachen
- Postens flaggord beskriver nu fältet den tillhör: huruvida fältet bär cacheelement, huruvida dessa element inkluderar tal, datum eller text, huruvida ett minimum och maximum kan beräknas, huruvida något element inte är ett datum, och huruvida det finns fler än 255 av dem. Elementantalet i posten matchar nu antalet cacheelementposter som faktiskt följer den
- Cachefältnamn längre än de 255 tecken som posten tillåter trimmas till 255 istället för att skrivas ut i sin fulla längd
- Arbetsböcker skrivna av HotXLS v2.376.4 och tidigare läses fortfarande in med sina cachefältnamn intakta — namnet intog samma position i den gamla layouten, så inget som bar ett namn förlorar det
Version 2.376.4
Rättat
- PivotTable-cachar i klassiska XLS-filer använder nu de postnummer [MS-XLS] ger dem. Sju poster i cacheunderströmmen hade gått ut under någon annan posts nummer: cachefältdefinitionen som $00C8 (SXDBB), fälttypen som $00FB (SxFormat), elementindexen per post som $00C5 (SXDI) och de numeriska, booleska, fel-, datum- och tomma cachevärdena som $00CE, $00CF, $00D0, $00CC och $00CB (SXDtr, SxNil, SXTbl, SXInt, SxErr). De är nu SXFDB $00C7, SXFDBType $01BB, SXDBB $00C8, SXNum $00C9, SxBool $00CA, SxErr $00CB, SXDtr $00CE och SxNil $00CF, så Excel kan läsa en pivotcache som HotXLS skrev och HotXLS kan läsa en som Excel skrev
- Tomma värden i ett pivotcache-fält överlever en rundtur. Skrivaren hade alltid avgett dem men läsaren hade inget fall för dem, så varje tomt värde kastades bort vid inläsning och varje värde efter det i fältet skiftades ner en position, vilket lämnade PivotTable-ens elementreferenser pekande på fel värden
- Arbetsböcker skrivna av HotXLS v2.376.3 och tidigare fortsätter att läsas in med sina cachevärden intakta. Varje pivotcache-underström läses i den numrering den skrevs med, avgjort ur dess egen fältdefinitionspost, och en cache som lästs ur en befintlig fil skrivs tillbaka under de nummer den kom med, så återöppning och sparning av en gammal arbetsbok ändrar inte tyst dess byte
Version 2.376.3
Rättat
- PivotTable-vyer i klassiska XLS-filer skriver nu sin SXEx-tilläggspost under numret [MS-XLS] ger den, $00F1; skrivaren hade använt $00C6, som är SXDB, pivotcache-huvudposten — Excel som letade efter vy-tillägget fann inget och en post som utgav sig för att vara ett cachehuvud låg mitt i ett kalkylblad, så vy-egenskaperna som SXEx bär gick förlorade även efter fältlayout-fixen i v2.376.1
- Arbetsböcker skrivna av HotXLS v2.376.2 och tidigare öppnas fortfarande med sina PivotTable-vyer intakta: inuti ett kalkylblad accepteras det gamla $00C6 fortfarande som det vy-tillägg det var avsett att vara, och inuti en pivotcache-underström läses $00C6 fortfarande som cachehuvudet, så inget som tidigare lästes in slutar att läsas in
Version 2.376.2
Rättat
- Klassiska XLS 3D-diagramblad skapade utan en explicit scen bär nu de flaggor de är dokumenterade att bära: standardflaggordet för Chart3d satte en bit som posten reserverar istället för biten för automatisk skalning, så ett standard-3D-diagram öppnades på nytt med gruppering påslagen men automatisk skalning avslagen och matchade aldrig scenen den påstod sig skriva; diagram som skickar med en explicit 3D-scen påverkades inte och deras byte är oförändrade
Version 2.376.1
Rättat
- PivotTable-vyer skriver en SXEx-post vars fält ligger där läsare förväntar sig dem: den fasta 24-byte-kroppen var förskjuten med två fält, så den tillkännagav två formatposter som aldrig följde och lämnade varje längd för valfria strängar på noll, vilket [MS-XLS] 2.4.282 förbjuder — dessa längder måste vara antingen frånvaromarkören eller en verklig längd från 1 till 255; kroppen börjar nu på rätt fält och markerar varje valfri sträng som frånvarande, så Excel läser vy-egenskaperna istället för ett förvanskat block
- SXEx-postens längd härleds ur de byte som faktiskt skrivs istället för en hårdkodad konstant, så den deklarerade storleken och nyttolasten kan inte längre glida isär som de gjorde före v2.376.0
Version 2.376.0
Tillagt
- Klassiska XLS-diagramblad kan länkas till en PivotTable-vy: en ny överlagring av
AddChartSheetaccepterar källpivotvyens namn och flaggan för dolda fälttexter, som skrivs in i posterna SXViewLink ($0858, [MS-XLS] 2.4.316) och PivotChartBits ($0859, 2.4.196) i diagramglobalerna före Units enligt Chart Sheet Substream-ABNF:n; diagraminspektionen avkodar båda posterna — inklusive 8-bitars och 16-bitars strängkodningar — tillbaka till den typade modellen (pivotdiagrammarkör, källvyens namn, textflagga) och den kanoniska semantiska ögonblicksbilden, medan diagram utan länkposterna förblir omärkta
Rättat
- PivotTable-vyer skriver en korrekt storleksbestämd SXEx-post: emittorn deklarerade en 24-byte-kropp men skrev 26 byte, så de två överskottsbytena landade där nästa posthuvud förväntades och varje post efter vyn (inklusive kalkylbladets EOF och varje diagramblad-underström som följde ett pivoterat blad) tolkades fel, vilket lämnade arbetsböcker som kombinerar en PivotTable med ett diagramblad att öppnas på nytt med diagrammet saknat
- Trendlinjers visningsnamn i klassiska diagram avkodar 8-bitars strängnyttolaster korrekt; den tidigare bredteckenläsaren returnerade ett tomt namn för poster som Excel skriver med 8-bitars tecken
Version 2.375.0
Tillagt
- Klassiska XLS-diagramserier accepterar temafärgade fyllnader: seriestilen bär nu ett temafärgindex och en nyans som skrivs in i en GelFrame-post efter AreaFormat enligt [MS-XLS] 2.4.131, med OfficeArt-temafärgtillägget (fillType, fillColor med den utjämnade RGB:n, fillColorExt-schemeindex, fillColorExtMod-nyansnyttolast); när ingen explicit fyllnadsfärg anges löses den utjämnade färgen från standardtemat för Office med nyansen tillämpad, och diagraminspektionen avkodar temaavsikten tillbaka till den typade modellen och den kanoniska semantiska ögonblicksbilden
Rättat
- Hela flerversionsbiblioteksbygget är grönt igen för varje stödd kompilator: typkonverteringar och anrop som bara nyare kompilatorer accepterar (en Extended-typkonvertering av Int64-värden, en hård Double-konvertering av ett heltal, ett nil-procedurargument i överlagringsupplösningen, åtkomst till TPicture.LoadFromStream där den är skyddad, och GdiplusStartup-tokentypen som ändrades mellan VCL-generationer) har gjorts versionssäkra från XE5 fram till den aktuella utgåvan
Version 2.374.0
Tillagt
- 3D-diagramscener är konfigurerbara och inspekterbara: en ny överlagring av
AddChartSheetaccepterar rotation, elevation, perspektivavstånd, höjd, djup, gap samt flaggorna för kluster, automatisk skalning, skalning under rät vinkel och tvådimensionella väggar, vilka skrivs in i Chart3d-posten enligt [MS-XLS] 2.4.46, och diagraminspektionen avkodar scenen tillbaka till den typade modellen (Scene3D) vid inläsning; diagram som behåller de tidigare överlagringarna avger fortfarande de Excel-matchande standardvärdena byte för byte
Version 2.373.0
Tillagt
- Klassiska XLS-diagramserier accepterar per-serie-stilåsidosättanden: linjefärg och linjestil, fyllnadsfärg samt markörform, markörfärger och markörstorlek skrivs in i seriens formateringsblock med den automatiska flaggan rensad så att Excel respekterar de angivna värdena, och diagraminspektionen avkodar posterna LineFormat, AreaFormat och MarkerFormat tillbaka till den typade modellen och den kanoniska semantiska ögonblicksbilden
Version 2.372.0
Tillagt
- Klassiska XLS-diagramserier accepterar namngivna och externa referenser för kategorier och värden: text som inte är ett vanligt A1-intervall kompileras genom arbetsbokens formelmotor, och BRAI-posten bär ett diagramområdeselement som håller den kompilerade formeln så att sparningspasset serialiserar om den med aktuella definierade-namn-lagerindex; diagraminspektionen dekompilerar referensen tillbaka till sitt namn vid inläsning, medan olöslig text behåller den tomma platshållar-BRAI:n
Version 2.371.0
Tillagt
- Klassiska XLS-diagramserier kan bindas till den sekundära axelgruppen: att markera en serie i
AddChartSheethöjer AXESUSED till två, avger ett andra AxisParent-block med egna kategoriaxlar och värdeaxlar plus sin egen diagramgrupp enligt [MS-XLS] Chart Sheet Substream-ABNF:n, och leder serien via SerToCrt till den andra gruppen; diagraminspektionen avkodar bindningen till diagramgrupp per serie vid inläsning
Version 2.370.0
Tillagt
- Klassiska XLS-diagramserier accepterar dataetiketter:
AddChartSheetavger en AttachedLabel-post med flaggorna visa-värde, visa-procent, visa-kategorinamn, visa-etikett-och-procent, visa-bubbelstorlek och visa-serienamn ([MS-XLS] 2.4.5 bitlayout), och diagraminspektionen avkodar både AttachedLabel och den utökade etikettposten DataLabExtContents inklusive dess separator tillbaka till den typade modellen och den kanoniska semantiska ögonblicksbilden
Version 2.369.0
Tillagt
- Diagraminspektion i klassisk XLS avkodar nu axelgruppsstrukturen: AXESUSED exponerar det deklarerade antalet axelgrupper och varje axel registrerar huruvida den tillhör den primära eller sekundära AxisParent-gruppen, med gruppindexet fört in i den kanoniska semantiska ögonblicksbilden
Version 2.368.0
Tillagt
- BIFF-diagramtrendlinjer och felstaplar avkodas nu till den typade diagrammodellen vid inläsning: varje Series-block exponerar sina Trendline-poster med regressionstyp, ordning eller period, intercept (inklusive automatisk), ekvation och visningsflaggor för R-kvadrat, prognos- och bakåtprognosperioder samt visningsnamn, plus sina SerErrBar-poster med riktningssida, värdetyp, ändkapslar och magnitud
- Den klassiska semantiska ögonblicksbilden mappar trendlinjer och felstaplar in i de delade kanoniska behållarna istället för att kasta, så arbetsböcker med avancerade diagramserier jämförs deterministiskt och trendlinjeändringar förändrar den kanoniska strömmen
Version 2.367.0
Tillagt
- RecalcAndVerifyEx kör en djup beräkningsrevision på båda arbetsboksmotorerna: varje formel utvärderas en gång genom beroendegrafen till ett isolerat resultatöverlägg så att beroende celler läser detta pass istället för inaktuella cachar, utvärderingsfel klassificeras i typade kategorier (argument som inte stöds, cirkelreferenser, avvisade eller saknade externa referenser, överhoppade datatabeller, avbrott, interna fel) med resultatkoder, och varje fel bär en avgränsad anropsstack
- Revisionen respekterar en problembudget med stabil ordning för blad, rad, kolumn och kategori, en förloppsmottagare som kan avbryta vid nodgränser, konfigurerbara numeriska toleranser och ett tillvals-ApplyResults som atomiskt genomför omberäknade värden efter ett fullständigt lyckat pass över en oförändrad arbetsboksstruktur; standarden förblir strikt skrivskyddad
Ändrat
- De befintliga ingångspunkterna RecalcAndVerify och CalculateAndVerify behåller sin tidigare grundjämförelsesemantik som kompatibilitets-shims medan de delar de nya rapportfälten
Version 2.366.0
Ändrat
- PDF-exporten bygger nu ihop dokument genom en sekventiell objektskrivare som strömmar varje objekt direkt till destinationen, så ingen mellanlagrad kopia av hela dokumentet byggs; osignerade dokument strömmas direkt till framåtriktade strömmar, medan signerade dokument monteras i en avgränsad spool som tar emot patcharna för ByteRange och signaturinnehåll före en enda framåtkopia
- PDF-bilagors nyttolaster kopieras från sina leverantörsspooler till slutdokumentet i fasta block och refererar sin strömstorlek via ett indirekt längdobjekt, vilket håller toppminnet platt för bilagor på flera hundra megabyte
Rättat
- Signatursammandrag beräknas nu inkrementellt över de två täckta byteintervallen i det ihopbyggda dokumentet istället för genom en fullständig dokumentkopia, och de reserverade signaturfälten lokaliseras från signaturobjektet självt istället för genom att skanna de ihopbyggda bytena
Version 2.365.0
Tillagt
- Texten i synliga PDF-signaturer renderas nu genom pipeline:n för inbäddade Unicode-typsnitt med vänster-, mitten- eller högerjustering, konfigurerbar storlek, färg och fet- eller kursivstil, vilket täcker vilket skript som helst i undertecknarnamn, skäl och platser
- Utseendebilder för PDF-signaturer accepterar JPEG-nyttolaster med dimensioner härledda ur rammarkören, medan överdimensionerade eller skadade bilder misslyckas deterministiskt innan sammandraget beräknas
- PDF-bilagor exponerar en explicit princip för dubblettnamn, spoolar stora leverantörsnyttolaster till en tillfällig fil utöver ett konfigurerbart byte-tröskelvärde och avvisar namn som är fientliga mot slutnoden, innehållande sökvägsseparatorer eller kontrolltecken
Ändrat
- PDF-bilagors namnträd sorteras nu efter sina kodade namnbyte enligt ISO 32000-1 7.9.6, och bilagsamlingen förblir fryst medan leverantörer körs så att återinträdande tillägg misslyckas atomärt
Version 2.364.0
Tillagt
- Inbäddade EMF- och WMF-bilder spelar upp sökvägsparenteser med fyllnads-, streck- och kombinerade streck-och-fyllnads-pass, rundade rektanglar, bågar, kordaner, cirkelsektorer och vinkelbågar genom exakt båg-till-Bezier-konvertering, områdesfyllnader och ramar lösta från avgränsade RGNDATA-rektanglar samt geometriska eller kosmetiska utökade pennor, allt utplattat till den oföränderliga delade scenen med samma fail-closed-gränser mot klippning, escape- och privata poster
Version 2.363.0
Tillagt
- Inbäddade EMF- och WMF-bilder spelas nu upp genom en utökad vitlista av säkra poster: tillståndsstackar för enhetskontext med sparning och återställning, fönster- och vyportsmappning med världstransformationer, penn- och penselobjekttabeller inklusive lagerobjekt, rektanglar, ellipser, linjekedjor, polygoner, polylinjer och Bezier-kurvor med streckstilar, avgränsade textkörningar med typsnitt, färger och justering, samt begränsade stretch-DIB-bilder som kodas om till PNG, medan okända tillståndsposter fortfarande misslyckas stängt till den avgränsade rasterfallbacken istället för att anropa plattformens metafiluppspelning
Rättat
- WMF-bilder tolkar nu standardlayouten för två-byte-posthuvuden, så äkta placeable- och standardmetafiler avkodas istället för endast syntetiska testobjekt
Version 2.362.0
Tillagt
- Klassisk XLS och XLSX bevarar nu tabellformlers matristillstånd, typade IME-lägen för datavalidering, beräkningstrådstips, förekomst av force-full-calculation, uppdatera-allt-tips och arbetsbokens kodnamn genom deras inbyggda binära eller OOXML-representationer
RecalcAndVerifyreturnerar en avgränsad strukturerad beräkningsrevision med stabila kategorier för cache, parsning, saknade funktioner och saknade namn medan formelcachar och arbetsbokssemantik lämnas oförändradeTXLSPageImageExporter.ExportRangerenderar en begärd cellrektangel som en enda kompakt PNG eller JPEG utan papper, marginaler, sidhuvuden, sidfötter, utskriftstitlar eller sidbrytningar, och sidbild-händelserna före och efter kan rita på den faktiska kodningsduken- En dedikerad cellbildsexportör mäter, renderar och sparar vilken klassisk eller XLSX-cellrektangel som helst som en enda kompakt bild med konfigurerbar upplösning, skala, format och JPEG-kvalitet; transparenta eller färgade bakgrunder, oberoende växlar för objekt, rutnät och cellkanter, pixel- och byte-budgetar samt filsparing via en atomisk ersättning i samma mapp som lämnar ett befintligt mål orört när något misslyckas
- Ritningshändelser för sidbild får nu en komplett skrivskyddad kontext som bär den levande duken, pixelgränser, sidstorlek i punkter, upplösning, skala, dokumentets och bladets sidnummer, totalt sidantal och ursprungskalkylbladet, utlöses exakt en gång per renderad bildruta inklusive flersidiga TIFF-bildrutor, förblir tysta under mätning och utlöser aldrig sin efterföljande händelse eller skriver partiella bildbyte när den ledande händelsen kastar
TXLSSvgExportstödjer kompletta per-sida-callbacks, deterministiska ID-namnutrymmen för dokument och sida samt tillvalaktiverade säkra hyperlänköverlägg med ScreenTips och säkra nya-fönster-attribut- Klassiska och XLSX HTML-exportörer erbjuder en tillvalaktiverad kalkylbladsvy med semantiska rad- och kolumnrubriker plus avgränsad hot tracking i ren CSS, och båda avvisar aktiva eller lokala URI-scheman medan länkens visningstext behålls
- Synliga PDF-signaturer kan använda inneslutna, täckta eller uttöjda PNG-utseendebilder, och PDF-bilagor kan hämta sin nyttolast lazy från ett enkelanropskällgränssnitt under varje sparning
- En avgränsad EMF- och WMF-vektoravkodare validerar huvuden, poststorlekar, summor, exakt EOF-placering och escape-begränsningar, och spelar sedan upp sin säkra delmängd av rektangelkommandon genom de delade Canvas- och SVG-backenderna utan att anropa drivrutinens metafiluppspelning
Ändrat
- Direkt XLSX-skrivning kan författa matrisattribut för tabellformler och typade IME-lägen för datavalidering, medan matristabellformler inte längre tyst expanderas till skalära per-rad-formler
Version 2.361.99
Ändrat
- Automatiskt taggad PDF avger nu informativa XLSX-bilder som självständiga Figure-strukturelement med Unicode-alternativtext, täta sidolokala identifierare för markerat innehåll, exakta förälderträds-poster och ett semantiskt element per synlig instans medan lika bildnyttolaster fortfarande delar en XObject; bilder utan alternativtext förblir dekorativa artefakter
Version 2.361.98
Rättat
- Uppslagsformler som skannar ett intervall som täcker sin egen cell (VLOOKUP, HLOOKUP, LOOKUP, XLOOKUP, XMATCH, MATCH) rapporterar inte längre falska cirkelreferensfel vid omberäkning, medan redigeringar i det skannade intervallet fortfarande utlöser omberäkning av formeln
- AutoFilter-textkriterier längre än 255 tecken begränsas till filterpostens gräns istället för att skriva ett korrupt autofiltervillkor
- Sammanhängande mellanslag som används av den implicita skärningsoperatorn bevaras när formeltexten återskapas istället för att kollapsa till ett enda mellanslag
- Inbyggda definierade namn utöver utskriftsområden, utskriftstitlar och filterdatabaser (consolidate areas, extract, database, criteria, recorder, bladtitlar och Auto_Open-familjens markörer) bevaras ordagrant när klassiska XLS-arbetsböcker öppnas och sparas
Version 2.361.97
Tillagt
- Klassiska XLS- och XLSX-arbetsböcker exponerar nu en delad policy för objektvisning med tre tillstånd, med förlustfritt bevarande av orörda källor och mappning mellan format; dolda objekt expanderar inte längre paginerad eller HTML-utdata och går inte in i ritnings- och medierenderingsvägarna
- Arbetsboksvisaren renderar lätta namngivna platshållare för objekt i platshållarläge, medan PDF-, SVG-, bitmapps-, utskrifts- och HTML-exportörerna behåller fullständiga objekt som standard och erbjuder ett explicit platshållaralternativ som undviker bildavkodning och diagramscenkonstruktion
Version 2.361.96
Ändrat
- Manuella diagramlayouter bevarar nu oberoende källfält och ogiltiga token, löser faktor- och kantkoordinater med avgränsad storleksbevarande placering, hedrar inre och yttre plottmål plus titel- och förklaringsöverlägg, konverterar stödd ODF-geometri genom absoluta diagramavstånd och renderar konsekvent placering av titel, förklaring, plottområde och axeltitel över paginering, SVG, PDF, bild, förhandsvisning, utskrift, visning och HTML-utdata
Version 2.361.95
Ändrat
- Diagramdataetiketter med cellkälla i XLSX tillhör nu varje serie med kompletta formler, indexerade cachar, explicit delad synlighet och synlighet per punkt, live-uppdatering av kalkylblad, extern cache-fallback, formelöversättning vid kopiering och rapportexpansion samt konsekvent anpassad-först-etikettsammansättning över paginering, SVG, PDF, bild, förhandsvisning, utskrift, visning och HTML-utdata
Version 2.361.94
Ändrat
- Diagram med flernivåkategoriaxlar bevarar nu glesa hierarkiska cachar och levande tvådimensionella intervall, bygger föräldermedvetna spann i linjär tid, hedrar beteendet för en nivå, omvänd, höger-till-vänster, dold och tom kategori, och renderar konsekventa hierarkietiketter och separatorer över paginering, SVG, PDF, bild, förhandsvisning, utskrift, visning och HTML-utdata; ODS-exporten använder intervallet för lövkategorier
Version 2.361.93
Ändrat
- Datumaxlar härleder nu kalendarenheter en gång över alla synliga serier, väljer avgränsade automatiska intervall från synligt spann, axelbredd, mätt etiketttypsnitt, talformat och rotation, och härleder etiketter, koordinater, skrick och rutnät från delade samlingar av större och mindre skrick över paginering, SVG, PDF, bild, förhandsvisning, utskrift, visning och HTML-utdata
Version 2.361.92
Ändrat
- XLSX-datumaxlar bevarar nu axelns talformat och läget för källänkning, renderar formaterade etiketter med textstilning och rotation samt hedrar omvänd riktning med bibehållen kontinuerlig avståndsfördelning för duplicerade och glesa datum över paginering, SVG, PDF, bild, förhandsvisning, utskrift, visning och HTML-utdata
Version 2.361.91
Ändrat
- XLSX-datumaxlar bevarar nu huruvida bas-, huvud- och sekundära kalendernheter och automatisk kategoridetektering utelämnades eller uttryckligen angavs, inklusive explicita dagsenheter och falska värden; klassiska datumaxeltilläggsposter exponerar typade fält, behåller maskerade eller ogiltiga råvärden och kan mappa aktiva inställningar in i XLSX-axelmodellen
Version 2.361.90
Ändrat
- XLSX-diagram med datumaxel bevarar nu kontinuerligt datumavstånd och renderar huvudintervall för dag, månad eller år med arbetsbokens 1900- eller 1904-datumsystem över paginerad, SVG, PDF, bild-, förhandsvisnings-, utskrifts-, visnings- och HTML-utdata; pagineringsbaserad utdata hedrar också konfigurerade mindre skrick och rutnät
Version 2.361.89
Tillagt
- Arbetsboksvisaren lägger nu ut giltiga kalkylbladsbakgrunder som plattor bakom ofyllda celler, medan utskrift, PDF, SVG, bitmapp, metafil och Classic- eller XLSX-HTML-utdata får en uttrycklig
ExportSheetBackgroundImages-opt-in som är inaktiverad som standard
Ändrat
- Paginerad bakgrundsrendering bevarar nu kalkylbladsrelativ plattfas över sidor, avkodar varje bakgrund en gång per renderingssession, återanvänder en PDF-bild-XObject eller SVG-resurs och hoppar över skadade nyttolaster med en enda diagnostikpost
Version 2.361.88
Tillagt
- Classic-kalkylblad får nu typad bakgrundsbildsskapande och en delad skrivskyddad bakgrundsresurs, läser och skriver BIFF8-bakgrundsposter med kontinuerlig nyttolastdelning, rekonstruerar bitmappsnyttolaster som standard-BMP-data, bevarar ej stödda nativa och okända format byte för byte med diagnostik, djupkopierar bakgrundsägandet och konverterar kända bakgrunder i båda riktningarna mellan XLS och XLSX
Version 2.361.87
Rättat
- XLSX-kalkylbladskopior behåller nu bladbakgrundsbildens byte och medietyp vid kopiering både inom samma arbetsbok och mellan arbetsböcker, där kopior inom samma arbetsbok återanvänder bevarat källmedia och kopior mellan arbetsböcker ombaserar medieägandet före sparandet
Version 2.361.86
Tillagt
- Classic XLS- och XLSX-arbetsböcker exponerar
AllowUnsafeFormulaCallbacks, medan kontextuell utvärdering erbjuder motsvarande per-anrop-alternativ och den strukturerade statusenxlfeUnsafeFunctionDenied
Säkerhet
- Farliga externa och makroliknande formelnamn når inte längre arbetsbokslokala, processomfattande, resolver- eller händelsebaserade användarfunktionshanterare som standard, och avvisningen sker innan formelargumenten utvärderas
Version 2.361.85
Tillagt
- Classic XLS- och XLSX-arbetsböcker exponerar
AuditFormulaSymbolsför strukturerad diagnostik av okända funktioner, okända namn och syntax över formelceller och definierade namn, med per-operation-statistik över unika formler och cache-träffar
Ändrat
- Bevarade okända funktioner och namn utvärderas nu till Excels
#NAME?-fel via direkta, beroende-, kontextuella, seriella och parallella beräkningsvägar - Ändringar av användarfunktionsregistrering på arbetsboks- eller processnivå och ändringar av definierade namns formler gör nu berört beräkningstillstånd ogiltigt före nästa omberäkning
Rättat
- Formelfel som lästs från beroende cachade celler förblir nu typade fel i stället för att gå in i skalärkonvertering och kasta ett Variant-konverteringsundantag
Version 2.361.84
Tillagt
- Normal formeltilldelning i Classic XLS och XLSX tillämpar nu arbetsbokens formelinmatningspolicy atomiskt, så att strikt avvisning lämnar cellvärde, formelcache och beroenden oförändrade, medan bevarandeläget lagrar okända funktioner och namn
Ändrat
- Classic XLS skriver bevarade okända anrop via BIFF-tokens för tilläggsanvändarfunktioner och behåller bevarad text för okända namn vid sparning, återöppning och XLS/XLSX-konvertering
- Validering av formelinmatning känner igen konfigurerade callback-användarfunktioner, anropsbara
LAMBDAochLET, lambdas i definierade namn, rapportplatshållare, registrerade externa länkar och giltiga strukturerade referenser utan att anropa hanterare
Rättat
- XLSX-valideringen bevarar nu giltiga kapslade strukturerade referenser och strukturerade referenser till aktuell rad och återanvänder inte längre inaktuell kolumntext när en olöst tabellreferens skannas
Version 2.361.83
Ändrat
- Värdetilldelning i Classic XLS och XLSX tillämpar nu
FormulaEntryPolicy.EmptyStringModekonsekvent: standardläget rensar exakta tomma strängar, bevarandeläget lagrar en konstant tom sträng, ochNullellerUnassignedrensar alltid cellen - Inbyggd inläsning av XLS, XLSX och ODS samt konvertering från XLS till XLSX och från XLSX till XLS bevarar nu betrodda konstanta tomma strängar utan att förväxla dem med frånvarande celler eller formler som
="" - XLSX-sträng- och Variant-författare för rader eller kolumner behåller snabba vägar för packad lagring medan rensade poster lämnas frånvarande och exakta tomma strängar endast lagras i bevarandeläge
Version 2.361.82
Tillagt
- Arbetsböcker i Classic XLS och XLSX exponerar nu en delad
FormulaEntryPolicy, medan båda kalkylbladsmotorerna tillhandahåller mutationsfriaValidateFormulaEntry-metoder som returnerar ett strukturerat problem, en åtgärd och en okänd symbol innan en anropare ändrar en cell
Ändrat
- Validering av formelinmatning skiljer nu exakt tom inmatning från formler som returnerar en tom sträng, separerar okända funktioner, okända namn, syntaxfel, ogiltiga mål och begränsningar i målintformat samt känner igen registrerade användarfunktioner utan att anropa deras hanterare
Version 2.361.81
Ändrat
- Insättning eller borttagning av hela rader eller kolumner mappar nu om varje panels ordnade markeringsområden och aktiva område konsekvent i XLS och XLSX, bevarar den kvarvarande ordningen och skapar en reservlösning med gränscell när alla områden tagits bort
- Normalisering av stora panelmarkeringar, strukturell redigering och frågor använder nu byggare med amorterad linjär komplexitet och kapacitetstillväxt istället för upprepade kopior av hela strängar eller matriser
Rättat
- Classic XLS bevarar nu felaktiga eller motsägelsefulla
Selection-postkroppar byte för byte medanxlsDiagnosticSelectionRecordInvalidrapporteras, istället för att exponera en delvis betrodd typad status
Version 2.361.80
Tillagt
TXLSWorksheetochTXLSXWorksheetexponerar nu matchandeTryGetWindowScroll- ochScrollWindow-metoder för att läsa och ändra den första synliga cellen i vilken befintlig logisk panel som helst med ettbaserade koordinater
Ändrat
- Rullningstillstånd för fyra paneler bevarar nu de delade övre, nedre, vänstra och högra axlarna oberoende genom XLS- och XLSX-sparning, öppning och kalkylbladskopiering, medan saknade paneler och ogiltiga koordinater misslyckas utan att ändra visningstillståndet
Version 2.361.79
Ändrat
- Kalkylblad i Classic XLS behåller oberoende ordnade markeringsgrupper för varje panel, aggregerar på varandra följande BIFF-
Selection-poster till en logisk sekvens, bevarar orörda postkroppar och kopierar det fullständiga markeringsläget med kalkylbladet - Klassiska markeringar med fler än 1369 områden skrivs som efterföljande standardkompatibla block medan ett aggregerat index för det aktiva området behålls över varje block
Version 2.361.78
Tillagt
TXLSWorksheetochTXLSXWorksheetexponerar nu matchande panelmedvetnaGetSelectedAreas- ochSelectAreas-metoder via den delade typenTXLSPanePosition
Ändrat
- Panelmarkeringsfrågor returnerar anroparägda ordnade ögonblicksbilder med index för det aktiva området, bevarar överlappande områden och lämnar kalkylbladstillståndet oförändrat när en panel saknas eller en uppdatering är ogiltig
Version 2.361.77
Tillagt
IXLSWorkbook,TXLSWorkbookochTXLSXWorkbookexponerar nu matchande strömmandeSaveSemanticSnapshot- och inkrementella SHA-256-ComputeSemanticHash-metoder med profilerna Content och SecurityComplete samt explicita alternativ för visartillstånd, flyktig metadata och formelcache
Ändrat
- Semantiska ögonblicksbilder traverserar glesa arbetsboksmodeller utan att materialisera en komplett ögonblicksbild, och både ögonblicksbilds- och hashoperationer håller ett läselån så att samtidiga publika mutationer misslyckas innan arbetsbokstillståndet ändras
Version 2.361.76
Tillagt
- Den typade Classic XLS-diagrammodellen exponerar nu diagram-, kategoriaxel- och värdeaxeltitlar
Rättat
- Extraktion i Classic XLS-diagrammodellen identifierar nu serier, förklaringar, diagramgrupper, axlar, 3D-läge, serietiketter och seriekällformler från sina definierade BIFF-poster
- Förklaringspositioner och klassificering mellan cirkel- och ringdiagram avkodas från sina definierade postfält
Version 2.361.75
Tillagt
- Delphi-exemplet FeatureShowcase och C++Builder-exemplet XlsxFeatureGallery demonstrerar nu samma arbetsflöde med kompilerad rapportdatakontext, minnestabell, strikt dataåtkomst, fortsättning efter återställningsbara fel, diagnostikblad, oföränderligt körresultat och atomisk filutmatning
- Det kompilerade rapporteringsämnet tillhandahåller nu matchande Delphi- och C++Builder-exempel, inklusive det smarta gränssnittsinfångande i C++Builder som krävs för gränssnittsbaserade rapporttabeller
Rättat
- C++Builder-galleriet för XLSX-funktioner länkar det kompletta versionsmatchade statiska HotXLS-paketet så att implementationberoenden i kompilerade rapporter löses utan sköra länkerdirektiv per enhet
Version 2.361.74
Ändrat
RunToStream,RunToFileochRunToEncryptedFiledelar nu en utdatatransaktion som publicerar en serialiserad arbetsbok först när rapportgenerering och sparning har slutförts- Okrypterat rapportutdata bevarar mallarbetsbokens format, inklusive ODS-utdata från ODS-mallar, medan krypterat utdata förblir en krypterad Office-container
Rättat
- Serialiserings-, ersättnings-, avbrotts- och fatala rapportfel lämnar befintliga målströmmar, filer och krypterade filer oförändrade samt frigör datasessioner per körning och tillfällig lagring innan de returnerar
Version 2.361.73
Tillagt
- Rapportband för namngivna intervall och Excel-tabeller exponerar nu
ErrorMode,StrictDataAccess,RuntimeLimitsoch oföränderligaLastResult-ögonblicksbilder, med ett distinktCompletedWithErrors-bandtillstånd
Ändrat
WriteAndContinuekan skriva ett explicit återställningsbart radfel som literell diagnostiktext, registrera källmarkörraden och den faktiska utdatacellen och sedan fortsätta med senare mål i den raden och i senare inmatningsrader- Rapportuttryck konsumerar typade bandögonblicksbildsvärden innan de faller tillbaka på text, vilket bevarar numeriska värden, datum, Boolean och andra stödda Variant-värden under uttrycksutvärdering
Rättat
- Fatala mål-, avbrotts- och runtime-gränsfel under bandexpansion återställer källmål och insatt struktur, rensar återrullade diagnostikflaggor och publicerar noll tillämpade mål
Version 2.361.72
Tillagt
TXLSReportRuntimeLimitsbegränsar antalet kvarhållna runtime-problem, sanerad meddelandelängd och problemminne, medanRuntimeDiagnosticsSheetNamevalfritt skriver ett strukturerat diagnostikblad- Explicita resolver-datafel, uttrycksdivision med noll och ogiltiga reguljära uttryck har nu stabila leverantörs- eller uttrycksproblekategorier och felkoder
Ändrat
WriteAndContinuebevarar säkra icke-cell-mål och registrerar deras problem, medan kalkylbladsnamn och definierade-namn-formler förblir fail-fast strukturella mål- Resolver-datafelresultat förblir återställbara när de serveras från per-körning-aliascachen, medan undantag som kastas av en resolver förblir fatala
Säkerhet
- Runtime-meddelanden stannar vid första raden, maskerar vanliga former av autentiseringsuppgifter och bearer-tokens samt tvingar antal-, längd- och minnesgränser innan det felande målet ändras
Version 2.361.71
Tillagt
- Exakta
{{#usertable(alias, logicalName, providerKey, name=expression)}}-celler kompileras till typade lazy-tabelldeklarationer, ochTXLSCompiledReportTemplate.UserTableCountrapporterar antalet deklarationer separat från utdatamålen TXLSReportTemplateChecker.DataContextförgenomtestar registrerade leverantörsnycklar, typade parametergränser, felformade deklarationer och skiftlägesokänsliga aliaskonflikter utan att anropa en resolver
Ändrat
- Rapportmallar och generatorer utvärderar deklarationsparametrar före målskrivningar, registrerar dem i den aktuella körsessionen och löser en deklarerad tabell först när
dbvalueellerdbcountrefererar dess alias - Upprepade identiska deklarationer delar en begäran, medan deklarationer som återanvänder ett alias med annat logiskt namn, leverantör, parameterordning, typ eller värde misslyckas med den deklarerande cellens plats innan arbetsboken ändras
Säkerhet
- Användartabelldeklarationer accepterar endast en registrerad leverantörsnyckel och begränsade typade dataparametrar, avvisar datatabellåtkomst inuti parameteruttryck och exponerar inget mallfält för SQL, sökvägar, URL:er eller kommandotext
Version 2.361.70
Tillagt
TXLSReportDataRequestför namngiven eller användartabell-identitet, typade parametrar, källplats och skrivskyddad körningskontroll tillIXLSReportDataResolver, vars explicita resultattillstånd skiljer ohanterade, lösta, ej hittade och datafel-utfallTXLSReportDataContext.RegisterResolver,RemoveResolverochClearResolvershanterar ett skiftlägesokänsligt namngivet resolverregister, medanTXLSReportDataLimitsbegränsar alias, resolvers, parametrar, namn, meddelanden och returnerade tabellscheman
Ändrat
- Varje rapportdatasession ögonblicksbildar resolverregistret till en O(1)-uppslagning, håller explicita tabeller auktoritativa, anpassar äldre tabellleverantörer, cachar typade begäranden per alias och avvisar ett återanvänt alias vars logiska namn, leverantör, parameterordning, typ eller värde skiljer sig
- Rapportkörare och band skickar nu en trådsäker avbrytningskontroll genom dataupplösningen, stannar efter avbrott utan att genomföra det aktiva målet och lämnar ett avbrutet alias tillgängligt för ett rent nytt försök istället för att cacha avbrottet som ett datafel
Säkerhet
- Typade databegäranden avvisar kontrolltecken, negativa källkoordinater, duplicerade parameternamn, oströdda Variant-arrayer eller referenser, överdrivna strängar, överdrivna alias eller leverantörer och överdimensionerade tabellscheman innan osäkert arbete eller arbetsboksmutation
Version 2.361.69
Tillagt
TXLSXWorksheet.ClearRowHeightochClearColWidthtar bort en explicit dimensionsöverstyrning utan att störa annan rad- eller kolumnmetadata
Ändrat
- Kompilerade rapportmål avslutar nu uttrycksutvärderingen innan dynamisk formatering anropas och genomför cellinnehåll, talformat, radhöjder och kolumnbredder genom en enda återställningsgräns
- Återställbar celldiagnostik härleder röda teckensnitts- och gula fyllnadsstilar från cellens befintliga teckensnitt, bevarar resten av cellstilen och återanvänder poolade stilar över lika bastypsnitt och upprepade körningar
Rättat
- Ett återställbart utvärderingsfel lämnar inte längre kvar dynamiska talformat eller explicita rad- och kolumndimensioner, och diagnostikskrivningar rensar nu varje formel innan literal text lagras
Version 2.361.68
Tillagt
- Kompilerade rapportkörare och generatorer exponerar
ErrorMode,StrictDataAccessoch ett oföränderligtLastResultmed sluttillstånd, tillämpat antal, feldetaljer och ordnade runtime-problem WriteAndContinuekan ersätta explicit återställbara celldatafel med literell diagnostik och avsluta somCompletedWithErrors, medan standardlägetStopförblir kompatibelt
Ändrat
- Strikt dataåtkomst rapporterar saknade tabeller, otillgänglig slumpåtkomst, saknade rader och saknade fält genom stabila felkoder när ingen explicit mallfallback finns
- Endast explicit markerade återställbara datafel får fortsätta; strukturella, callback-, avbrotts-, resurs-, säkerhets-, serialiserings- och andra fatala fel stoppar fortfarande rapporten
Rättat
- Fil- och krypterad-fil-utdatafel publicerar nu ett misslyckat körresultat istället för att behålla ett slutfört resultat från den föregående arbetsboksgenereringsfasen
Version 2.361.67
Ändrat
- Kompilerade mallar, körare, intervallband och Excel-tabellband löser nu
dbvalueochdbcountgenom en isolerad datasession per logisk körning - Upprepade alias läses in en gång inom en körning, senare körningar läser om leverantörsdata, samtidiga körningar har oberoende cachar, och båda passen i
PreprocessAndRundelar en konsekvent tabellögonblicksbild - Rapportbanduttryck binder endast sina rad- eller kolumnvariabler, så literella tabellnamn och inbyggda platsvariabler misstolkas inte längre som källkolumner
Rättat
- Rapportdatasessioner och deras leverantörsögonblicksbilder frigörs efter lyckad, avbruten eller misslyckad körning, inklusive leverantörsundantag och återanvändbara körarförsök
Version 2.361.66
Tillagt
TXLSReportDataContext.BeginRunreturnerar en isoleradIXLSReportDataSession-ögonblicksbild med tillståndsinspektion och lösta eller cachade aliasantal
Ändrat
- Rapportdatasessioner använder en skiftlägesokänslig hash-cache för explicita tabeller, lazy leverantörsresultat, saknade alias och leverantörsdatafel
- Varje distinkt alias når leverantörskedjan högst en gång per session, leverantörsresultat förblir bundna till det begärda aliaset, och samma-alias-rekursion misslyckas omedelbart
- Direkta
TXLSReportDataContext.TryGetTable- ochRequireTable-anrop behåller en separat kompatibilitetscache som ogiltigförklaras när registreringar ändras
Version 2.361.65
Tillagt
IXLSXImageBlobochTXLSXImageBlobtillhandahåller oföränderliga raster- och SVG-nyttolaster med engångs-SHA-256-sammandrag, byte-storlek och en valfri cachenyckelTXLSReportImageResult.CacheKeylåter en V2-bildleverantör explicit identifiera återanvändbart innehåll medan motstridigt innehåll för samma nyckel avvisas innan kalkylbladet ändras
Ändrat
- Upprepade rapportbilder delar en oföränderlig nyttolast via explicit cachenyckel eller exakt sammandragsmatchning samtidigt som oberoende ankare och transformeringar behålls
- XLSX och ODS sparar varje distinkt bildnyttolast en gång, återanvänder dess mediarelation över blad och återställer delade nyttolaster när arbetsboken öppnas igen
- XLSX-öppning återställer nu SVG-kompanjondata från DrawingML-tilläggsrelationer och parar den med rasterfallbacken
Version 2.361.64
Tillagt
TXLSReportImageResultkan deklarera källpixeldimensioner och DPI, medan bildbegäranden och resultat exponerar ankare-relativa målförskjutningar i EMUTXLSXImage.OffsetXEMUochOffsetYEMUbevarar bildplacering inuti ett ankare genom XLSX- och ODS-spara/öppna-cykler
Ändrat
- V2-bildbindning härleder fysisk geometri från PNG-, JPEG-, GIF-, BMP-, EMF- och WMF-huvuden, tillämpar Natural-, Contain-, Cover- eller Stretch-storleksanpassning och centrerar inneslutna bilder utan att avkoda deras pixlar
- Rastergeometri avvisas innan kalkylbladet ändras när huvuden är trunkerade, deklarerade dimensioner motsäger varandra, en sida överstiger 100 000 pixlar, eller total avkodad storlek överstiger 100 miljoner pixlar
Version 2.361.63
Tillagt
IXLSReportImageDataProviderV2kan returnera bildbyte eller av anroparen lånade och av leverantören överförda strömmar med arbetsboks-, kalkylblads-, mål-, band-, tabell-, rad-, ankare- och avbrottskontextOnTransformImagekan ersätta eller ändra storlek på en bild innan bindning, medan kompilerade intervall- och Excel-tabellband exponerar en skrivskyddad ögonblicksbild av varje faktisk datarad
Ändrat
- V2-bildströmmar läses i avgränsade block med en konfigurerbar standardgräns på 64 MiB; lånade sökbara strömmar återställer sin position och överförda strömmar frigörs exakt en gång
- V2-nyttolaster avvisar tomma data, felmatchade formatsignaturer, inkonsekventa dimensioner, ogiltiga ankare och utanför-rutnät-förskjutningar innan kalkylbladet ändras
- Kompilerade intervall- och Excel-tabellband binder bildmål en gång per genererad rad från materialiserade bundna kolumner utan att skanna genererade kalkylbladsceller
Version 2.361.62
Tillagt
TXLSCompiledReportRunnerochTXLSReportGeneratoraccepterar nu en befintligIXLSReportImageProvidermed policyer för saknade bilder och direktivcellerTXLSReportImageBinder.ApplyTargetbinder ett förkompilerat bilddirektiv utan att skanna orelaterade kalkylbladsceller
Ändrat
- Exakta
{{#image Key}}-celler kompileras till typade rapportmål, förblir oförändrade när ingen leverantör är konfigurerad, och återanvänder sin kompilerade nyckel och koordinater över körarsessioner
Version 2.361.61
Tillagt
TXLSCompiledReportRunnerexponerar nu parade arbetsboks- och kalkylbladsgenereringshändelser med stabil kalkylbladsidentitet, ursprungliga och aktuella koordinater, skrivskyddade rapportdata, målantal, avbrott och feldetaljerTXLSReportGeneratorkör arbetsboks-, fil-, ström- eller krypterad-fil-mallar genom mallläsnings- och genereringslivscykelhändelser med valbar modifiering på plats eller via atomisk klon
Ändrat
- Rapportgenerering fryser den ursprungliga kalkylbladsuppsättningen, kompilerar om efter callback-driven strukturförändring, avvisar samtidig mutation av samma arbetsbok, parar inträdehändelser vid avbrott och fel och bevarar det första undantaget
- Rapportströmmar förblir anroparägda, sökbara mallströmmar återställer sin position, framåtriktade strömmar konsumeras i avgränsade block, och ström-, fil- och krypterad-fil-mål ändras endast efter lyckat slutförande
- Kompilerade rapporter utan livscykelhanterare behåller den direkta målslingan utan kalkylbladsskanningar, händelsekontexter eller per-mål-livscykelallokeringar
Version 2.361.60
Tillagt
- XLSX-arbetsböcker exponerar nu
HasWebAddinTaskPanes,WebAddinTaskPaneCountochRemoveWebAddinTaskPanesför exakt inspektion och borttagning av aktivitetsfönster i paketroten
Ändrat
- Borttagning av webbtilläggens aktivitetsfönster validerar nu en avgränsad intern relationsgraf före ändringen, bevarar delade och orelaterade paketdelar, tar bort exklusiva ättlingar och ägda relationsdelar, bygger om innehållstyper, förhindrar återuppståndelse av källkopior och är idempotent
- Klassiska XLS- och ODS-arbetsböcker rapporterar borttagning av webbtilläggens aktivitetsfönster som ej stöds utan att skanna paketinnehåll
Version 2.361.59
Tillagt
- Klassiska XLS- och XLSX-arbetsböcker exponerar nu matchande
SaveExternalLinkValues- ochUpdateLinks-egenskaper för cache-beständighet och fildeklarerad länkuppdateringspreferens
Ändrat
- Att inaktivera externa länkars cachade värden utelämnar nu endast klassiska
XCT/CRN-poster eller XLSXsheetDataSet-innehåll samtidigt som länkdefinitioner, definierade namn, relationer, okänd XML och minnescachar behålls - Externa länkpolicys runda nu reserverade källvärden förlustfritt tills de redigeras, konverteras mellan XLS och XLSX, bevarar oförändrade komprimerade paketdelar och initierar aldrig extern fil- eller nätverksåtkomst
Version 2.361.58
Tillagt
TXLSHTMLExportochTXLSXHtmlExportSessionexponerar nu den oföränderligaRenderGeometry-ögonblicksbilden som används av den aktuella HTML-åtgärden
Ändrat
- Klassiska XLS- och XLSX HTML-exportörer konverterar nu Excel-teckenbredder till fasta CSS-längder via backendspecifik maximal-sifferbredd-geometri istället för hårdkodade konverteringsfaktorer eller CSS-teckenenheter
- Arbetsboks-, kalkylblads-, intervall- och inkrementell flerbladad HTML-export fångar en åtgärdslokal kalibrering med en avgränsad metrikcache och ändrar aldrig lagrade radhöjder eller kolumnbredder
Version 2.361.57
Ändrat
- PDF-, SVG-, bitmapps-, förhandsvisnings- och arbetsboksvisningsåtgärder fångar nu distinkta oföränderliga renderingsgeometriögonblicksbilder med backendmedvetna avgränsade metrikcachar
- Delad sidrendering och SVG-radbrytning använder nu åtgärdslokal typsnittsmätning istället för processglobalt GDI-bitmap- och stränglisttillstånd, samtidigt som lagrade radhöjder och kolumnbredder bevaras
Version 2.361.56
Ändrat
- Klassisk XLS- och XLSX AutoFit fångar nu en oföränderlig arbetsboksägd renderingsgeometritjänst per åtgärd, inklusive kalibrerad textmätning, radbrytning, radavstånd, cellmarginaler och faktiska XLSX-synliga typsnitt
- Sidindelning fångar nu arbetsbokslokal geometri för varje bygge, tar bort processglobalt normaltypsnitts- och maximal-sifferbredd-tillstånd och tillämpar kalibrerade implicita kolumnbredder utan att ändra lagrade radhöjder eller kolumnbredder
Version 2.361.55
Tillagt
- Klassiska XLS- och XLSX-arbetsböcker skapar nu oföränderliga åtgärdsägda geometri- och typsnittsmätningstjänster med avgränsade lokala cachar, delade breddkonverteringar och ingen AutoFit-processglobal DPI- eller basbreddcache
Version 2.361.54
Tillagt
- Klassiska XLS- och XLSX-arbetsböcker exponerar nu validerade
TXLSRenderCalibration-värden plus oberoendeCaptureRenderCalibration-ögonblicksbilder ochResetRenderCalibration-standardvärden för framtida renderingsåtgärder
Version 2.361.53
Tillagt
- XLSX-inläsning rapporterar nu
xlsDiagnosticPrinterSettingsRelationshipInvalidnär ett kalkylblads skrivarinställningsrelation saknas, är felaktigt typad eller hängande
Ändrat
SaveXLSWorkbookAsXLSXochSaveXLSXWorkbookAsXLSbär nu typade sidkonfigurationsfält och opaka skrivarbytes oberoende av varandra, med standardfält före duplicerade privata standardvärden
Rättat
- XLSX-inläsning binder inte längre en orelaterad skrivarinställningsdel när relationen som namnges av
pageSetupär ogiltig - Konvertering från XLSX till BIFF8 avvisar nu överdimensionerade eller ej representerbara skrivarinställningar innan några målbytes skrivs
Version 2.361.52
Tillagt
- Klassiska XLS- och XLSX-kalkylblad exponerar nu kopieringsisolerade
PrinterDriverData- ochHasPrinterDriverData-egenskaper plusClearPrinterDriverDataför direkt kontroll av den opaka skrivarnyttolasten
Rättat
- Rensning av XLSX-skrivardata tar nu bort dess kalkylbladsrelation och binära paketdel även när bevarande av ostödda delar är aktiverat
Version 2.361.51
Ändrat
- XLSX-inläsning och sparning bevarar nu varje kalkylblads binära skrivarinställningar genom
pageSetup-relationen, innehållstypdeklarationen ochprinterSettingsN.bin-paketdelen - Skrivarinställningar överlever samma-arbetsboks- och kors-arbetsboks-kalkylbladskopior med byte-exakt ägandeskap, medan oförändrade källresurser kan behålla sin ursprungliga komprimerade nyttolast
Version 2.361.50
Ändrat
- Klassisk XLS-inläsning och sparning bevarar nu hela BIFF
PLS-skrivarnyttolasten tillsammans med varje omedelbart följandeContinue-segment - Skrivarnyttolaster djupkopieras med kalkylblad, avges före
Setupi exakt BIFF-stora segment, och avvisas när de är strukturellt ofullständiga eller större än säkerhetsgränsen på 1 MiB
Version 2.361.49
Tillagt
- Klassisk XLS-sidkonfiguration exponerar nu skrivskyddade
HasSetupRecord- ochPrinterSettingsInitialized-egenskaper så att anropare kan skilja saknade eller oinitierade skrivarinställningar från definierade värden
Ändrat
- Sparning av ett orört klassiskt kalkylblad bevarar nu frånvaron av en BIFF
Setup-post och behåller varje byte av en befintlig 34-byte-post, inklusive reserverade och omodellerade flaggbitar - Sidkonfigurationssetters skapar nu en saknad
Setup-post endast vid behov och initierar skrivarberoende eller orienteringsfält enligt den berörda egenskapen
Version 2.361.48
Tillagt
SaveXLSXWorkbookAsXLSkonverterar nu en XLSX-modellarbetsbok till BIFF8 genom fil- och strömöverlagringar, med bevarande av inlästa värden, formler, kärnstilar, sammanfogade intervall, rad- och kolumndimensioner, arbetsboksdatumläge och aktivt bladtillstånd
Ändrat
- XLSX-till-XLS-konvertering bygger en deterministisk 56-färgspalett innan stilar skrivs, bevarar redan använda indexerade platser och tillämpar viktad OKLab-kvantisering när direkta färger överskrider BIFF8-kapaciteten
- Konverteringsvägen traverserar inlästa glesa eller packade celler utan att materialisera källrutnätet, avvisar koordinater utanför BIFF8-gränserna innan målet berörs, och är nu tillgänglig i Delphi- och C++Builder-exemplet ConversionWorkbench
Version 2.361.47
Tillagt
- Klassiska XLS- och XLSX-arbetsböcker exponerar nu matchande
ApplyBiffPalettePlan-metoder som validerar och atomärt tillämpar en aktuell 56-plats-palettplan - Klassiska arbetsböcker exponerar nu
BiffPaletteSavePolicymed ett explicit BIFF8-optimeringsalternativ och en standard som bevarar historiska palettutdata
Ändrat
- Tillämpning av palettplan validerar nu källgeneration, källhash, alla platsidentiteter och färger, aggregerade antal, bevarandelås, ändringsflaggor och opaka mål innan den första mutationen, och bygger sedan om den cachade OKLab-matcharen en gång
- Optimerade BIFF8-sparningar lämnar den tillämpade paletten i arbetsboken efter lyckat resultat men återställer alla 56 källfärger och den ursprungliga generationen om utdata misslyckas eller avbryts; BIFF5- och icke-BIFF-utdatavägar förblir oförändrade
Version 2.361.46
Tillagt
- Klassiska XLS- och XLSX-arbetsböcker exponerar nu matchande
BuildBiffPalettePlan-metoder som returnerar en mutationsfri 56-plats-plan med källpalettidentitet, låsta platser, föreslagna färger, aggregerade äkta färgmappningar, exakt täckning och perceptuell felstatistik
Ändrat
- BIFF-palettplanering bevarar nu indexerade konsumenter och befintliga exakta färger innan fria platser tilldelas, och använder sedan deterministisk frekvensviktad OKLab-klustering först när direkta och lösta temafärger överskrider den återstående kapaciteten
- Konstruktion av palettplan läser lagrad stil- och villkorsformateringsmetadata utan att ändra palettposter, anpassade färgantal, celler, sparbeteende eller gles lagring
Version 2.361.45
Tillagt
- Klassiska XLS- och XLSX-arbetsböcker exponerar nu matchande
ScanIndexedColorUsage-metoder som returnerar en deterministisk 56-plats-inventering med offentliga och fysiska index, normaliserade ARGB-värden, definitions- och referensantal, konsumenttyper och bevarandelås
Ändrat
- Skanning av indexerad färganvändning täcker nu arbetsbokens stilpooler, glesa cellreferenser, namngivna stilar, intervallöverlägg, kalkylbladsrutnät, former, kommentarer, formaterad text, diagramtypsnitt, differentiella stilar, databar och färgskalor utan att materialisera oanvända celler eller ändra arbetsbokstillstånd
- Indexerade villkorsformateringsfärger runda nu genom klassisk BIFF och OpenXML differentiella stilar, databar och färgskalor, inklusive strömmande sparningar som avger differentiella stilidentifierare före kalkylbladsdelar
Version 2.361.44
Tillagt
- Klassiska XLS- och XLSX-arbetsböcker exponerar nu matchande
NearestIndexedColor-metoder som returnerar närmaste offentliga palettindex, fysisk plats, normaliserat ARGB-värde, kvadrerat perceptuellt avstånd och exakt matchningsstatus
Ändrat
- Matchning av närmaste indexerade färg delar nu en cachad OKLab-implementering mellan båda arbetsboksmotorerna och den äldre färghanteraren, med deterministisk lägsta-index-tie-breaking och cacheuppdateringar begränsade till effektiva palettmutationer
- Närmaste-färg-frågor skannar endast de 56 fysiska BIFF-palettposterna, avvisar delvis transparenta indata och ändrar aldrig palett- eller arbetsbokstillstånd
Version 2.361.43
Tillagt
- Klassiska XLS- och XLSX-arbetsböcker exponerar nu matchande
ResolveIndexedColor-överlagringar som klassificerar offentliga färgindex, BIFFicv-värden och OOXML-indexerade färger samtidigt som palett-, automatisk-, system- eller ogiltig metadata returneras - Det typade indexerade färgresultatet rapporterar råindex, palettplats, systemfärgroll, normaliserat ARGB-värde och huruvida en konkret färg löstes
Ändrat
- Automatiska och systemfärgstoken frågar inte längre det aktuella Windows-skrivbordet implicit; anropare kan tillhandahålla en explicit resolver när en konkret miljöfärg krävs
- Temasystemfärger använder nu sitt lagrade fallback-RGB-värde, vilket håller inläsning, sparning och huvudlös bearbetning deterministisk mellan maskiner
Rättat
- Ogiltiga OOXML-indexerade färgvärden löses inte längre till ogenomskinlig svart, och den äldre färghanterarens standardvärden använder nu de exakta 128-kanals-palettvärdena
Version 2.361.42
Tillagt
TXLSWorksheetochTXLSXWorksheetexponerar nu matchandeTryGetOutlineNode-,SetOutlineNodeCollapsed- ochSetOutlineDisplayLevel-metoder för ettbaserade rad- eller kolumnsammanfattningsnoder
Ändrat
- Kalkylbladskonturfrågor och -uppdateringar anpassar nu gles motor-metadata till komprimerade planer, bevarar kapslat underordnat tillstånd som standard och tillämpar dolda- och komprimerade-ändringar utan att skanna oanvända kalkylbladskoordinater
- OpenDocument-rad- och kolumngrupper bevarar nu inbyggt kapslat visningstillstånd över direkta metadataändringar, strukturella redigeringar, ODS-rundturer och konvertering till XLSX-sammanfattningsnodmarkörer
TXLSXWorksheet.ToggleRowGroupedochToggleColGroupedförblir tillgängliga som riktningsmedvetna kompatibilitetsomslag runt sammanfattningsnod-API:t
Version 2.361.41
Tillagt
TXLSOutlineGeometrykan nu bygga komprimeradeTXLSOutlineMutationPlan-instanser för idempotent nodkomprimering eller -expansion och ettbaserade konturvisningsnivåändringar- Konturmutationsplaner exponerar explicita bevara-, komprimera- och expandera-underordnade-lägen samtidigt som kapslade komprimeringsmarkörer hålls oberoende som standard
Ändrat
- Expansion av en kapslad konturnod beaktar nu komprimerade förfäder och komprimerade ättlingar vid härledning av synlighet, och massnodidentifiering traverserar endast materialiserade spann med ett linjärt monotoniskt stackpass
Version 2.361.40
Tillagt
- Den nya motorneutrala
lxOutline-enheten bygger rad- eller kolumnkonturgeometri från sorterade glesa spann och identifierar sammanfattning-före- eller sammanfattning-efter-noder, kapslade detaljintervall, sammanfattningsnivåer, dolt tillstånd och explicita komprimeringsmarkörer utan att skanna oanvända kalkylbladskoordinater
Version 2.361.39
Tillagt
- Klassisk XLS-kolumnmetadata exponerar nu den oberoende konturkomprimeringsmarkören genom
TXLSColumnInfo.CollapsedochTXLSColumnInfoList.Collapsed
Rättat
- Klassiska XLS-kolumnkonturkomprimeringsmarkörer överlever nu BIFF-rundturer, kolumnformatkopior, kalkylbladskopior och sammanfogning av angränsande poster medan definierad bredd, bästa anpassning och fonetiska flaggor förblir intakta
Version 2.361.38
Rättat
- Klassiska XLS-kontursammanfattningskolumner bevarar nu sin logiska vänster- eller högerposition över vänster-till-höger- och höger-till-vänster-kalkylbladsvyer istället för att skriva motsatt
WSBOOL-riktningsbit
Version 2.361.37
Tillagt
- Klassiska XLS- och XLSX-kalkylblad exponerar nu
EvaluateFormulaAtför skrivskyddad A1- eller R1C1-formelutvärdering i en explicit målcellskontext IXLSFormulaEvaluationTemplatekompilerar ett oföränderligt formelankare en gång och utvärderar det upprepade gånger på andra celler genomEvaluateAtellerEvaluateAtWithOptions- Formelutvärderingsalternativ omfattar nu gränser för formellängd, syntaksobjektsteg, rekursionsdjup och genererade arraybyte, med uttömning rapporterad som
xlfeResourceLimit
Ändrat
- Engångs- och återanvändbar utvärdering delar nu kalkylbladslokala namn, strukturerade referenser, ocachade formelberoenden, arrayrötter, volatil status, avbrott och explicit auktoriserade externa referenser utan att skriva arbetsbokstillstånd
- De befintliga arbetsboks- och kalkylblads-
Calculate-metoderna förblir kompatibilitetsfasader över den typade kontextuella utvärderaren
Rättat
- Kontextuell utvärdering bevarar nu formelfelvarianter och skiljer tolknings-, icke-stödd-funktion-, cirkulär-referens-, extern-referens-, avbrotts-, kalkylbladslivstids- och resursgränsfel
- Återanvändbara R1C1-mallar översätter nu relativa rad- och kolumnförskjutningar från sitt kompileringsankare när de utvärderas på en annan målcell
Version 2.361.36
Tillagt
ConvertExternalDefinedNamesToRefErrorsär nu tillgänglig på klassiska XLS- och XLSX-arbetsböcker för att frikoppla bekräftade externa-arbetsboks-definierade namn utan att skriva om vanliga cellformler- Överhoppade felformade eller icke-stödda definitioner rapporteras genom
xlsDiagnosticDefinedNameConversionSkipped
Ändrat
- Konverteringen ersätter valda definitioner atomärt med inbyggd
#REF!samtidigt som arbetsboks- eller kalkylbladsscope, synlighet, kommentarer, makro- och inbyggda flaggor, okända attribut och externa länkdelar behålls
Rättat
- Externa definierade-namn-platssyntax såsom
=[1]!RemoteNamelöses nu genom den deklarerade arbetsbokslänken, och beroende formler behåller det resulterande Excel-felvärdet vid omräkning
Version 2.361.35
Tillagt
TXLSWorkbookWorkspace.Recalculateutvärderar nu registrerade klassiska XLS-, XLSX- och ODS-formelnoder i ett kors-arbetsboks topologiskt pass med detektering av starkt sammanhängande komponenter och smutsig-generering-spridningTXLSWorkspaceRecalcResultrapporterar grafåteranvändning, smutsiga och utvärderade noder, cykler, blockerade beroenden, ogiltigförklaringar samt runtime-cache-träffar och -missar
Ändrat
- Arbetsytan behåller sin beroendegraf tills registreringar eller formeltopologi ändras, medan vanliga värdesredigeringar markerar endast berörda arbetsboksnoder och deras transitiva beroenden som smutsiga
- Upprepade externa cellavläsningar i ett beräkningspass delar en exakt arbetsboks-, kalkylblads-, rad- och kolumncache som ogiltigförklaras före varje schemalagd formeluppdatering
Rättat
- Tvärvägda länkar mellan arbetsböcker behandlas inte längre som cirkulära om inte formelcellgrafen innehåller en verklig cykel; cykelmedlemmar och deras blockerade beroenden ogiltigförklaras istället för att returnera föråldrade cachade värden
- En misslyckad eller cykel-ogiltigförklarad arbetssession behåller nu motorns lokala smutsiga tillstånd så att en senare arbetsboksomräkning försöker igen med ofullständiga formler istället för att behandla ett partiellt pass som slutfört
Version 2.361.34
Tillagt
TXLSWorkbookWorkspace.BuildDependencyGraphskapar nu en beroendegraf över registrerade klassiska XLS-, XLSX- och ODS-arbetsböcker, med bibehållna arbetsboks-, kalkylblads-, cell-, rektangulära intervall- och scope-definierade-namn-identiteterTXLSWorkspaceDepGraphexponerar formelnods-, referens-, kant-, cell-beroende- och definierat-namn-beroende-frågor plus kandidatkontrolldiagnostik för prestandaverifiering
Ändrat
- Stora formelintervall förblir kompakta intervall istället för att expandera till enskilda celler, medan radintervallträd beskär både beroendeuppslag och kantenkonstruktion utan att materialisera packade kalkylbladsvärden
- Lokala definierade namn behåller både sitt symboliska beroende och statiskt lösta cell- eller intervallberoenden, medan externa definierade namn bevarar sin deklarerade externa-arbetsboksplats, namn och kalkylbladsscope
Rättat
- Vanliga definierade namn rensas inte längre medan formeltolkaren kontrollerar en valfri extern-arbetsboksprefix
Version 2.361.33
Tillagt
TXLSWorkbookWorkspace.OnLoadWorkbookkan nu begära en extern arbetsbok genom anroparkontrollerad policy högst en gång per normaliserad identitet, medanResolveWithLoaderrapporterar typad ej-hittad-, fel-, cykel- och resursgränsdiagnostikMaxLoadDepth,MaxWorkbookCountochResetLoadAttemptsger explicita gränser och återförsökskontroll för inläsning av externa arbetsböcker
Ändrat
- Samtidiga externa-arbetsboksbegäranden delar nu ett pågående inläsningsresultat, och nästlat återinträde avvisas utan att vänta i en kors-trådad inläsningscykel; standardarbetsytan utför fortfarande ingen filsystems- eller nätverksåtkomst
Version 2.361.32
Tillagt
- Klassiska XLS-arbetsböcker exponerar nu
CreateWorkspaceWorkbook,RegisterExternalWorkbook,UnregisterExternalWorkbookochExternalWorkspace, vilket låter klassiska, XLSX- och ODS-arbetsböcker servera externa formelvärden genom en motorneutral arbetsyta - Klassiska XLS externa länkcachar avkodar nu tal-, sträng-, booleska-, fel- och tomtavärden från typade XCT- och CRN-poster till en gles konstant-tids-uppslagning utan att materialisera kalkylblad
Ändrat
- Extern formelutvärdering löser nu kalkylbladsnamn före positionella reservalternativ och läser konsekvent en explicit registrerad live-arbetsbok först, sedan en typad filcache, och returnerar därefter
#REF!, medan förstörda registreringar återkallas utan implicit fil- eller nätverksåtkomst - Citerade externa arbetsboksidentiteter kan innehålla URI-scheman, Windows-enhetsbeteckningar och andra kolon utan att misstolkas som en tredimensionell kalkylbladsintervallseparator, så ODF externa käll-IRI:er förblir intakta under formelimport
Version 2.361.31
Tillagt
TXLSWorkbookWorkspace,IXLSWorkspaceWorkbookochTXLSXWorkbook.CreateWorkspaceWorkbooktillhandahåller en trådsäker extern-arbetsboksidentitets- och registreringsgrund med explicit upplösningsstatus, genereringsspårning och återkallbara arbetsboksadapterare
Ändrat
TXLSXWorkbook.RegisterExternalWorkbookbevarar nu sökvägar och filändelser, löser relativa relationsmål mot den ägande arbetsboken, avvisar tvetydiga alias eller samma-basnamn-mål istället för att tyst välja ett, återkallar registreringar när en målarbetsbok förstörs, och behåller typad extern länkcache-fallback utan implicit fil- eller nätverksåtkomst
Version 2.361.30
Tillagt
- Klassiska och XLSX skrivskyddade arbetsboksvyer kan nu utvärdera formler på begäran genom
xlsvEvaluateFormulasoch rapportera det oberoende resultatet genomFormulaEvaluationutan att ersätta lagrade formelcachar
Ändrat
- Samtidiga skrivskyddade vyer isolerar nu formelrekursionsflaggor, skalära resultat, kompilerade XLSX-formler och arraymatriser, medan XLSX externa formler endast använder fil-lokala externa länkcachar och aldrig derefererar live-arbetsboksregistreringar
Rättat
- XLSX externa länkars cachade värden löser nu det ettbaserade kalkylbladsindex som bärs av externa XTI-poster till rätt nollbaserade cachade bladpost
Version 2.361.29
Tillagt
- XLSX-arbetsböcker exponerar nu
IXLSXWorkbookOwner.CreateReadOnlyViewmed vy-lokala aktiva blad, värde-materialiserade och packade cellögonblicksbilder, cachade formelresultat, opt-in-formeltext, säker ägar- eller vy-frigöringsordning och fail-fast-skrivexklusion
Ändrat
- XLSX skrivskyddade vyer använder endast lokalt lagrade externa formelcachar och derefererar aldrig svaga live-arbetsboksregistreringar
Version 2.361.28
Tillagt
- Klassiska arbetsböcker exponerar nu
CreateReadOnlyViewochIXLSReadOnlyWorkbookViewför konstant-tids-delade modellvyer med oberoende aktiva blad, värde-cellögonblicksbilder, cachade formelresultat, opt-in-formeltext, referensräknad ägarlivstid och fail-fast-skrivexklusion
Version 2.361.27
Tillagt
- Klassiska, XLSX- och ODS-arbetsböcker exponerar nu
CreateFormulaCacheReaderoch det deladeIXLSFormulaCacheReader-gränssnittet för motorneutral formelcacheinspektion med säker livstidsogiltigförklaring
Ändrat
- Inspektion av delad-formel-cache bevarar nu varje medlems oberoende lagrade resultat, så att en följare utan cachat värde rapporterar saknat istället för att ärva rotmedlemmens värde
Version 2.361.26
Tillagt
TXLSXWorkbook.TryGetCachedFormulaValuerapporterar nu XLSX- och ODS-formelcache-närvaro, ursprung och värdetyp utan beräkning eller arbetsboksmutation
Rättat
- XLSX- och ODS-formelcachar bevarar nu saknade och explicita tomma resultat, tomma strängar, boolskt falskt, numerisk nolla, typade fel och explicita datum över sparning och återöppning, medan ändrade formler inte längre serialiserar föråldrade cachade resultat
Version 2.361.25
Tillagt
- Klassiska arbetsböcker exponerar nu
TryGetCachedFormulaValuemed explicit cache-närvaro, ursprung och värdetyp, vilket gör att ett lagrat formelresultat kan läsas utan beräkning, användarfunktions-callbacks, token-dekompilering eller arbetsboksmutation
Rättat
- Klassiska XLS formelbooleska och felcachar använder nu den specificerade BIFF-nyttolastbyten i vanliga och delade formler, och inlästa felresultat förblir typade
varError-värden över sparning och återöppning
Version 2.361.24
Tillagt
- Klassiska och XLSX-arbetsböcker tillhandahåller nu en
CreateLoadedCellCursor(Boolean)-överlagring som kan inkludera oberoende formaterade lagrade tomma celler somxlckBlank-ögonblicksbilder
Ändrat
- Opt-in-tomtraversering bevarar kalkylblads-, rad- och kolumnordning, håller packad XLSX-lagring komprimerad och utesluter ärvd-format-koordinater plus oformaterade Empty- och Null-platshållare
Version 2.361.23
Tillagt
- XLSX-arbetsböcker exponerar nu
TXLSXWorkbook.CreateLoadedCellCursorför konstant-tillstånds radvis traversering av lagrade värde- och formelceller över kalkylblad TXLSLoadedCellKindinkluderar nuxlckErrorså att lagrade XLSX-felvärden behåller sin distinkta värdetyp
Ändrat
- XLSX-markörer traverserar materialiserade glesa radblock eller packad lagring direkt utan att sortera celler eller materialisera packade värden, och formelögonblicksbilder returnerar det aktuellt lagrade cachade värdet utan omräkning
- Arbetsboksomfattande topologiändringar och arbetsboksfrisättning ogiltigförklarar XLSX-markörer genom ett delat livstidslease, medan redigeringar av befintligt cellinnehåll håller traverseringen giltig och fångade ögonblicksbilder ägda
Version 2.361.22
Tillagt
- Klassiska arbetsböcker exponerar nu
IXLSWorkbook.CreateLoadedCellCursorför konstant-tillstånds radvis traversering av lagrade värde- och formelceller över kalkylblad TXLSLoadedCellSnapshotreturnerar ägd bladidentitet, ettbaserade koordinater, stil, värdetyp, värde och formeltext utan att exponera interna cellobjekt
Ändrat
- Inlästa-cell-markörer misslyckas snabbt efter celltopologi-, kalkylbladssamlings- eller arbetsboksmodell-ersättningsändringar, medan redigeringar av befintligt cellinnehåll håller traverseringen giltig och tidigare fångade ögonblicksbilder oförändrade
Version 2.361.21
Tillagt
- Klassiska och XLSX kalkylbladscellbutiker och kalkylbladssamlingar exponerar nu oberoende strukturella generationsräknare för säker långvarig traversering
XlsValidateStructureGenerationochEXLSLoadedCellCursorInvalidatedtillhandahåller ett fail-fast-valideringskontrakt för inlästa-cell-läsare
Ändrat
- Cellskapande, borttagning, rensning, koordinatomordning, packad-lagring-övergångar, indexombyggnader samt tillägg, borttagning eller flytt av kalkylblad avancerar den relevanta generationen, medan redigeringar av befintligt cellinnehåll, kalkylbladsnamnbyte eller aktivering och no-op-mutationer håller den stabil
Version 2.361.20
Tillagt
TXLSForwardReaderaccepterar nu ODS-indata genom samma callback-yta som XLS, XLSX, CSV och TSVPeakRowBufferedBytesochSheetPassesStartedexponerar den delade rad-backendens topp-logiska-rad-arbetsmängd och antal lyckade kalkylbladspass
Ändrat
TXLSForwardReaderanpassar nuTXLSRowCursorför varje stödt format, delar radgränser, kolumnprojektion, formeltillstånd, formaterad text, lösenord, överhoppade-poster och strömpositions-beteende istället för att underhålla separata skanningsvägar- Framåtläsarens bladindex är konsekvent ettbaserade, och kalkylblad som hoppas över av
OnSheetöppnas eller dekomprimeras inte
Version 2.361.19
Tillagt
TXLSRowCursorexponerar nu explicita stängda-, före-första-, aktiva-, EOF-, avbrutna- och feltillstånd plus en idempotentCancel-metod som frigör den aktiva kalkylbladsströmmen utan att stänga källanCurrentRowViewtillhandahåller en generationskontrollerad lånevyn av den aktuella raden utan att duplicera dess cellarray; framåtflyttning, bladval, avbrytande, stängning eller förstöring av markören ogiltigförklarar tidigare vyer medEXLSRowCursorViewInvalidated- Strömöppningar accepterar nu
xsoBorrowedellerxsoOwned, med ägandeskapsöverföring först efter en lyckad öppning, ochPeakRowBufferedBytesrapporterar den uppskattade toppen av den logiska radbufferten sedan senaste öppningen
Ändrat
- Kalkylbladsdel- och passstart-fel bevarar nu sitt ursprungliga läsa-undantag och placerar markören i feltillstånd istället för att framstå som avbrott eller normalt EOF; explicit bladval återställer passet för nytt försök
Version 2.361.18
Tillagt
TXLSDirectCellochTXLSRowCursorCellexponerar nuHasFormulaochFormulaTextAvailable, vilket skiljer rena värden, formler med tillgänglig text och formler vars text är undertryckt eller otillgängligTXLSDirectReader,TXLSForwardReaderochTXLSRowCursortillhandahåller nuIncludeFormulaText; att inaktivera den bevarar cachade värden, koordinater, stilar och formulärnärvaro medan formeltextansamling i XLSX- och ODS-strömmar undviks
Ändrat
- Radgränser och kolumnprojektion trycks nu in i XLS-, XLSX-, ODS-, CSV- och TSV-backends före värde-, formel- och formaterad-text-allokering; upprepade ODS-kolumnspann hoppar direkt mellan valda kolumner och upprepade radblock klipps till det begärda intervallet
- Radmarkörens passalternativ fryses medan ett kalkylbladspass är aktivt och blir återigen ändringsbara efter EOF, bladval eller stängning, vilket förhindrar att ett pass blandar inkompatibla filter- eller avkodningsinställningar
Version 2.361.17
Tillagt
TXLSRowCursoröppnar nu ODS-filer och anroparägda strömmar, auto-detekterar ODS-paket via deras mimetype ellercontent.xml, förläser kalkylbladsnamn och strömmar den valda tabellen genomFindFirstochFindNextutan att materialisera en arbetsbok
Ändrat
- ODS-radtraversering expanderar upprepade rader och kolumner lätt, utelämnar täckta celler som självständiga värden, bevarar formaterade tomma celler och cachade formelvärden, återställer lånade strömpositioner och rapporterar ogiltiga eller rutnät-begränsade upprepningsantal genom
OnSkippedRecord
Version 2.361.16
Tillagt
TXLSRowCursorströmmar nu CSV- och TSV-filer eller anroparägda strömmar med UTF-8- och UTF-16-BOM-detektering, flerradiga citerade poster, escapesade citationstecken, komma-, semikolon-, tabb- eller pipe-avgränsar-sniffning, valfri avgränsaröverstyrning samt valfri tal-, ISO-datum-, boolesk- och feltypsigenkänning
Ändrat
TXLSForwardReaderochTXLSRowCursordelar nu en pausbar text-rad-backend, med identiska callback- och pull-resultat samtidigt som Variant-, formel- och formaterad-text-nyttolaster från föregående rad frigörs innan framåtflyttning
Version 2.361.15
Tillagt
TXLSRowCursoröppnar nu klassiska.xls-arbetsböcker från filer eller strömmar, auto-detekterar BIFF-sammansatta behållare och returnerar cachade numeriska eller sträng-formelresultat plus lagradeBlank- ochMulBlank-celler medan endast den aktuella logiska raden behålls
Ändrat
- Radmarkörens
Open-överlagringar accepterar en valfriTXLSForwardFormat; filöppningar äger sin interna BIFF-ström, strömöppningar lånar anroparens ström och återställer dess initiala position vidClose, och upprepadeFindFirst-pass söker direkt till det valda kalkylbladet
Version 2.361.14
Tillagt
- Formelberäkning stöder nu
ISFORMULAför enskilda celler, kors-blad-referenser och rektangulära intervall, och returnerar en samma-formad boolesk array för intervallindata utan att utvärdera de refererade formlerna
Ändrat
- Kontroller av formulärnärvaro skiljer vanliga värden och tomma celler, delad-formel-medlemmar, klassiska och XLSX array-formel-medlemmar, dynamiska-array-ankare och dynamiska spillbarn; genererade arrayer begränsas av
FormulaArrayMemoryLimit - XLSX lagrar
ISFORMULAmed_xlfn.-prefixet, ODS avger den standardiserade OpenFormula-stavningen, och klassiska XLS-sparningar avvisar den icke-stödda framtida funktionen utan att genomföra en partiell ström
Rättat
- Formeltexttolkningen känner nu igen de sju standardiserade Excel-felliteralerna, vilket gör att
#REF!kan propageras genom referens-endast-funktioner, medan ett definierat namn som löses till en skalär rapporterar#VALUE!istället för#NAME?
Version 2.361.13
Tillagt
- Formelberäkning stöder nu
UNICHARöver hela Unicode-skalarintervallet, inklusive kompletterande och privat-användning-tecken, med Excel-kompatibla fel för noll, värden utanför intervallet, surrogatkodpunkter och Unicode-icke-tecken - Formelberäkning stöder nu
BAHTTEXTmed thailändsk baht- och satang-text, tvådecimal mittavrundning bort från noll, negativa värden, upprepade miljongrupper och ändliga vetenskaplig-notation-indata
Ändrat
UNICHARochBAHTTEXTmappar intervall och genererade arrayer element för element samtidigt som lokala fel bevaras; XLSX lagrarUNICHARmed sitt framtida-funktions-prefix medanBAHTTEXTförblir en standard naken funktion i både XLS och XLSX
Version 2.361.12
Tillagt
- Formelberäkning stöder nu
COMBINAochPERMUTATIONAmed trunkerade icke-negativa argument, kontrollerad överlöpning, singleton-array-sändning och per-element-fel, plusMUNIT-identitetsmatriser utan fast dimensionstak - Klassiska och XLSX-arbetsböcker exponerar
FormulaArrayMemoryLimitmed 64 MiB-standard för att begränsa genererade formel-array-nyttolaster, inklusive parallella XLSX-omräkningsarbetare
Ändrat
PERMUTATIONAanvänder logaritmisk exponentiering,COMBINAförkortar sin multiplikativa rekurrens, ochMUNITallokerar en kompakt numerisk matris medan endast dess diagonal skrivs
Rättat
- Numeriska formelarrayer klassificeras inte längre som skalära tal, och nyskapade klassiska arbetsböcker tillämpar BIFF97-rutnätsgränser under formelberäkning före sin första sparning
Version 2.361.11
Tillagt
- Formelberäkning stöder nu
COT,ACOT,COTH,ACOTH,CSC,CSCH,SECochSECHmed huvudvärdes-, domän-, singularitets-, ändlig-indata- och stora-argument-regler över skalära och sända arrayoperander
Rättat
- Maperade formelfunktioner bevarar nu direkta skalära fel som kalkylbladsfelvärden, använder avbrottsresistenta reciprok- och exponentiell-svans-grenar för stora giltiga indata, skriver exakta
_xlfn.-namn utan_xlws., och avvisar icke-stödda klassiska BIFF-formler rent
Version 2.361.10
Tillagt
- Formelberäkning stöder nu
CEILING.MATHochFLOOR.MATHmed utelämnade significance- och mode-argument, teckenoberoende significance, precisa decimalmultipl-gränser och de specificerade negativa-tal-lägesriktningarna
Ändrat
- Formelnivå-arrayfunktioner kan nu dela en linjär elementmapper med singleton-rad- och singleton-kolumn-sändning, engångs-intervallögonblicksbilder och per-element-konverterings- eller beräkningsfel; XLSX använder
_xlfn.-prefixet för båda nya funktionerna medan klassiska BIFF-sparningar avvisar icke-stödda formler rent
Version 2.361.9
Tillagt
- Formelberäkning stöder nu
SORTBYmed stabil fler-nyckel-rad- eller kolumnordning, oberoende stigande eller fallande riktningar, utelämnade-riktning-standarder, intervall- eller genererad-array-nycklar, samt engångs käll- och nyckelögonblicksbilder följt av O(n log n)-sortering
Rättat
- Klassiska BIFF-sparningar misslyckas nu rent när en formel inte kan representeras istället för att rapportera framgång efter att en intern framtida-funktions-identifierare avvisats, medan XLSX skriver
SORTBYmed_xlfn.och aldrig lägger till_xlws.
Version 2.361.8
Ändrat
- Kalkylbladets nollvisningsläge använder nu ett enda råvärdesbeslut över arbetsboksvisaren, förhandsvisning, utskrift, bitmap, EMF, SVG, PDF, klassisk HTML och XLSX HTML-vägar; faktisk numerisk nolla döljs före talformatering och textmätning, medan formelvisningsläget behåller företräde
Rättat
- XLSX-kalkylbladsvyer tolkar, skriver och kopierar nu nollvisningstillstånd genom en enda inställning, hanterar 1904-datumgrunden korrekt, bevarar villkorsformateringsvisualer och hyperlänksgeometri för dolda nollceller och lämnar lagrade värden, offentlig formaterad text, CSV och ODS-utdata oförändrade
Version 2.361.7
Ändrat
- Kalkylbladets formelvisningsläge använder nu ett enda skyddade-cell-medvetet textbeslut över arbetsboksvisaren, förhandsvisning, utskrift, bitmap, EMF, SVG, PDF, klassisk HTML och XLSX HTML-vägar; formeltext använder textjustering under Allmän justering, bevarar explicit justering och får en icke-persistent dubbel effektiv layoutbredd utan att flyta över till angränsande celler
Rättat
- XLSX-kalkylbladsvyer accepterar nu både
showFormulas="1"ochshowFormulas="true", bevarar inställningen under samma-arbetsboks- och kors-arbetsboks-kalkylbladskopior, och avger det nödvändigasheetView-tillståndet utan att ändra formelcachar, CSV-utdata, ODS-beständighet eller det offentliga formaterade-värde-kontraktet
Version 2.361.6
Ändrat
- XLSX externa-arbetsboksformler delar nu en grammatikmedveten bok-prefix-lexer över
OnlyExternal-konvertering, formeldiagnostik, beräkningsbindning, kors-arbetsboks-kopiering och genererad formelseriering; numeriska länkplatser är kanoniska, medan strukturerade referenser, strängliteraler, felformade index och tvetydiga filnamnprefix misslyckas stängt TXLSXExternalLinkexponerar nu sin käll-RelationshipId, ettbaseradeSourceSlotoch typadeLinkKindså att arbetsboks-, DDE-, OLE- och olösta extern-referens-poster kan granskas utan att härleda identitet från samlingsordning eller måltext
Rättat
- Ändring av ett XLSX externt länkmål eller bladlista ogiltigförklarar nu kompilerade externa-formel-bindningar per revision istället för att skanna om varje cell, och oförändrade DDE- eller OLE-externa länkdelar utan relationsfiler förblir bytebevarade under sparning
Version 2.361.5
Rättat
- XLSX externa-arbetsboksformelplatser följer nu dokumentordningen av
workbook.xmlexterna referenser istället för relationsfilordning; saknade, olösta och fel-typade relationer behåller tomma platser så att senare[N]-referenser inte skiftar
Version 2.361.4
Ändrat
- Klassisk XLS-formelfrysning med
OnlyExternalklassificerar nu bevarade BIFF-referenser och konverterar endast bekräftade externa-arbetsboksformler, medan interna, tilläggs-, DDE/OLE- och felformade referenser förblir formler
Rättat
- Formelresultat som börjar med ett likhetstecken eller apostrof förblir nu literella strängar under värdekonvertering, och array-formelgrupper ögonblicksbildas innan någon rot- eller spillformel frigörs
Version 2.361.3
Ändrat
- Klassiska XLS stödlänkar och externa-blad-index använder nu avgränsad typad klassificering för själv-, samma-blad-, tilläggs-, extern-arbetsboks-, DDE/OLE-, oanvända och okända poster
Rättat
- Felformade stödlänk-nyttolaster bevaras byte-för-byte istället för att rekonstrueras som en annan länktyp, och trunkerade externa-blad-tabeller läser inte längre bortom sina postdata
Version 2.361.2
Rättat
- Klassiska XLS-formler löser nu det nollbaserade XTI-indexet i externa definierade-namn-tokens till rätt interna externa-blad-post, inklusive den första posten
Version 2.361.1
Rättat
- Den direkta XLSX-skrivaren avger nu flaggan för undertryckning av basala SpreadsheetML
showDropDownendast närShowDropDownär inaktiverad, med bevarande av den offentliga visningsorienterade API-semantiken
Version 2.361.0
Tillagt
- Diagramserier fick
CategoriesMultiLevel: ställ in den för att avge kategorierna som enmultiLvlStrRef(hierarkiska axeletiketter) istället för en flat strängreferens, med återläsning från sparade diagram
Version 2.360.0
Rättat
- Klassiska XLS-namnkommentarer använder nu rätt
NAMECMT-postidentifierare ($0894); identifieraren som tidigare användes ($0019) tillhörWINDOWPROTECTenligt BIFF-specifikationerna
Tillagt
WindowProtectedpå klassiska arbetsböcker sparar och läser tillbaka arbetsbokens fönsterskyddsflagga viaWINDOWPROTECT-posten ($0019), där råa insamlade postkroppar har företräde om inte egenskapen uttryckligen skrivs
Version 2.359.0
Tillagt
- Diagramdatatabeller exponerar oberoende
showHorzBorder/showVertBorder/showOutline-omkopplare istället för att alltid rita varje kantlinje - Linjediagram fick fallinjer (
HasDropLines) och staplade stapeldiagram fick serielinjer (HasSeriesLines), båda sparade och återlästa; serier kan tas bort från teckenförklaringen individuellt genomLegendDeletedmedan de fortfarande plottas
Version 2.358.0
Tillagt
- Rapportband fick fasta och tomt-dataset-semantik:
EmptyBandPolicybehåller, rensar eller tar bort mallraderna när datasetet är tomt (inga olösta platshållare lämnas kvar längre),FixedBandskriver kopiorna över raderna nedanför utan att infoga något för överläggningsstilade formulärband, ochDeleteLastRowkomprimerar den sista kopian så att efterföljande innehåll slutar jämnt (X-range-beteende)
Version 2.357.0
Tillagt
- PDF-export kan bädda in fristående OpenType-typsnitt med CFF-konturer genom en
FontFile3OpenType-ström ochCIDFontType0-ättling; automatiskt och fullt läge behåller det kompletta programmet, medan ett otillgängligt nödvändigt subset misslyckas innan utdata genomförs OnGetFontDirectoriestillhandahåller semikolonseparerade kataloger för en begärd typsnittsfamilj och stil; accepterade träd genomsöks rekursivt en gång och indexeras efter internt typsnittsmetadata för cachad fallback-upplösning
Ändrat
- Inbäddade typsnitt som bär OpenType GPOS- eller äldre kern-data använder nu positionerade glyfförskjutningar för enkel text såväl som komplexa skript, vilket håller mätning, radbrytning, justering och PDF-glyfplacering konsekventa
Version 2.356.0
Tillagt
- PDF-typsnittsinbäddning blev en konfigurerbar fyrläges-policy:
FontEmbeddingväljer automatiskt historiskt beteende, nödvändig subsetning, helprograms-inbäddning eller map-endast-typsnitt vars program stripsas medan CID-mappningen och ToUnicode-tabellerna överlever; PDF/A avvisar map-endast-utdata - Händelsen
OnFontEmbedutlöses en gång per Unicode-typsnitt innan metriker och glyfmappningar löses, tar emot dess namn och filsökväg, och kan acceptera ett per-typsnitt-läge eller ersättande typsnittsbytes genom det explicitaHandled-kontraktet
Version 2.355.0
Tillagt
- Klassisk XLS-omräkning använder nu en lätt byggd beroendegraf, sprider indataändringar endast till transitiva beroende, räknar om volatila formler vid varje pass och utvärderar formler i beroendeordning istället för att skanna om hela den glesa cellhögen
- Cirkulära referenser i klassisk XLS följer nu
EnableIteration,MaxIterationsochMaxIterationChange; starkt sammanhängande komponenter isolerar oberoende cykler, itererar dem deterministiskt och beräknar sedan nedströmsformler - PDF/A-3 associerade filer fick en detaljerad
AddAttachment-överlagring med Unicode-visningsnamn, beskrivningar, ändringstider, escapesade MIME-namn, byte-storleksmetadata samt Source-, Data-, Alternative-, Supplement- eller Unspecified-relationer TXLSPDFWriterskapar fristående PDF-dokument utan arbetsbok, med explicita sidstorlekar, flersidig utdata, rektanglar, linjer, ellipser, mätt formaterad text, koordinattransformeringar, rektangulär klippning och grafiktillståndskontroll
Ändrat
- Att inaktivera
UseFullPrecisionpå klassisk XLS avrundar nu formel- och What-If-datatabell-cachade resultat till den effektiva visade numeriska precisionen innan beroende formler konsumerar dem, inklusive procentformat och halva-bort-från-noll-mittavrundning
Rättat
- Klassisk formelomräkning använder nu de inbyggda nollbaserade cellkoordinaterna, håller beräkningsfel borta från framgångscachen och bevarar felspridning genom beroende arrayfunktioner
Version 2.354.0
Tillagt
- Diagramaxlar fick korsningslägesuppräkningen (
Crosses: autoZero / max / min, avges somcrossesnär ingen explicitCrossesAtär satt) och per-axel huvud-/understreck-stilar (in,out,cross), allt sparats och återlästs AutoTitleDeletedpå diagram ersätter den hårdkodade automatiska-titel-flaggan och undertrycker den seriederiverade titeln när den är satt
Version 2.353.0
Tillagt
- Diagramserier fick
Smooth/SmoothSetför kurvig linjerendering ochMarkerFillColor/MarkerBorderColorför explicita markörfärger; båda består genom sparning och öppning, och den delade renderaren ritar utjämnade segment som kvadratiska kurvor och konsumerar markörfärgerna
Version 2.352.0
Tillagt
- Diagramytesformatering sparats och återlästs:
RoundedCorners, explicit diagrambakgrund och kantlinjefärger samt plottområdets bakgrundsfärg består genom sparning och öppning, och den delade diagramrenderaren konsumerar bakgrunds- och kantlinjefärgerna istället för att alltid rita vitt på grått - Diagramskyddsomkopplare sparats och återlästs bakom en enda master:
ProtectionEnabledplusProtectedChartObjects,ProtectedDataEditing,ProtectedFormatting,ProtectedSelectionochProtectedUserInterfaceavger och tolkar OOXMLprotection-elementet
Version 2.351.0
Ändrat
- Stapel- och kolumndiagram i den delade sidindelningsrenderaren följer nu plottgruppens layoutalternativ: GapWidth storleksbestämmer klustret, Overlap breddar och drar samman angränsande staplar, och staplade/procentstaplade grupperingar ackumulerar en hel-kluster-stapel per kategori istället för att rita serier sida vid sida
Version 2.350.0
Tillagt
- Kors-arbetsboks-intervallkopiering mappar nu om varje cellstil efter värde till mål-arbetsbokens typsnitts-, fyllnads-, kantlinje-, talformat-, justerings- och skyddspooler, så att
CopyRangeToochCloneRangeTomellan två öppna arbetsböcker behåller sin formatering oberoende av poolordning - Klassiska XLS-arbetsböcker sparar och läser tillbaka de numeriska och datumbaserade inbyggda dokumentegenskaperna:
CreatedDate,LastSavedDate,RevisionNumberochEditTimeMinutesbestår genom OLE SummaryInformation-strömmen, med nollvärden överhoppade och en fullständig rensning som tar bort dem
Version 2.349.0
Tillagt
- Klassiska XLS-arbetsböcker exponerar delad-arbetsboks-revisionsskyddstillståndet bakom strukturerade egenskaper:
SharedRevisionProtectedochSharedRevisionPasswordHashsparas och läses tillbaka, medan råa insamlade postkroppar från tolkade filer fortfarande har företräde om inte egenskaperna uttryckligen skrivs - Rapportkrypteringsmedvetenhet:
TXLSCompiledReportTemplate.CreateEncryptedöppnar en lösenordsskyddad mall direkt, ochRunToEncryptedFilekör rapporten och skriver ett ECMA-376-krypterat resultat i ett anrop
Version 2.348.0
Tillagt
- Urklippsinklistringsalternativ för båda motorerna:
PasteFromClipboardaccepterar endast-värden (behåll cachade resultat, hoppa över formler, format och sammanfogningar) och infoga-rader/infoga-kolumner-lägen som skiftar befintligt innehåll innan blocket landar - Framåtläsare rapporterar överhoppat innehåll: den direkta läsaren, radmarkören och framåtläsaren exponerar
OnSkippedRecord, utlöst när en felformad cellreferens hoppas över eller en BIFF-bladskanning avbryts på trunkerade eller felmatchade poster
Version 2.347.0
Tillagt
- Rapporttabellformningskombinatorer:
Filterströmmar matchande rader lätt,Sortutför en stabil fler-nyckel-sortering, ochDistinctbehåller den första raden per nyckeltupel - Datakälladapterare:
FromDataSetögonblicksbildar en öppenTDataSettill en rapporttabell (fältnamn blir kolumner, datasetpositionen återställs), ochFromObjectsmappar publicerade egenskaper hos godtyckliga objektlistor och arrayer till kolumner - Tvärvägda rapportband:
RunBidirectionallåter varje huvudrad driva sina egna kolumner från en relaterad underordnad tabell, vilket producerar tandade kolumnlayouter där kortare rader lämnar extra kloner tomma PreprocessAndRunkör en mall två gånger: det första passet fyller värden och utför strukturella direktiv så att mallen anpassar sig till data, det andra passet kompilerar om den omformade arbetsboken och fyller de återstående platshållarna
Version 2.346.0
Tillagt
- Rapportplatshållare accepterar ett standardvärde:
{{name;fallback}}skriver reservtexten när nyckeln saknas eller är tom - Rapportuttryck fick
dbvalue(table, row, field[, default])ochdbcount(table)för att läsa valfri registrerad datakontexttabell per rad och kolumn, plustonumber(text)för sträng-till-tal-konvertering ochref(rowOffset, colOffset)relativa referenser som följer bandkopior; mallar, körare och band exponerar enDataContext-egenskap - En naken
{{=formula(...)}}-cell skriver nu en live-formel i cellen istället för vanlig text, och andra nakna uttryck behåller sin utvärderade typ (tal förblir numeriska) - Nya strukturella rapportdirektiv:
{{#imgsize zoom=150}}skalar om bilden som är förankrad vid direktivcellen,{{#comment text}}bifogar en cellkommentar,{{#html <b>bold</b>}}matar ett fragment in i formaterad text, och{{#sheetvisible Sheet false}}/{{#deletesheet Sheet}}styr kalkylbladssynlighet och borttagning
Version 2.345.0
Tillagt
- XLSX-arbetsböcker fick en sparningstids-omräkningspolicy:
RecalcBeforeSaveväljer manuell (standard), omräkna-om-smutsig eller alltid-omräkna-beteende när en fil sparas RecalcNeededrapporterar huruvida någon formelcell eller insamlad redigering för närvarande är smutsig, ochRecalcCellräknar om arbetsboken och returnerar det färskt beräknade värdet av en enda cell per blad, rad och kolumn
Version 2.344.0
Tillagt
- Rapportmallar stöder strukturella direktiv i celltext:
{{#delete A2}}rensar det namngivna intervallet,{{#format fmt=0.00 bold fill=FFFF00}}tillämpar talformat, fetstil, kursiv, typsnitts- och fyllnadsfärger på kolumnen ovanför direktivcellen, och{{#aggregate sum A2:A99}}skriver formler i=SUM(A2:A99)-stil — allt utförs efter att värdesplatshållare fyllts, med direktivceller konsumerade efteråt och okända direktivverb fortfarande rapporterade som malldiagnostik
Version 2.343.0
Tillagt
- ZIP-skrivaren producerar ZIP64-arkiv: poster vid eller bortom 32-bitarsstorleksgränserna reserverar ett ZIP64-extra fält i sitt lokala huvud med sentinel-klassiska fält, centrala katalogposter avger 64-bitars storlekar och offset med en version-needed-uppgradering, och slutet-på-central-katalog-posten föregås av ZIP64 EOCD-posten och lokaliseraren närhelst något klassiskt fält mättas
- Skrivsidans post- och arkivstorlekstak höjs till 16 GB respektive 64 GB; läsningssidans dekomprimeringsskydd är oförändrade
Version 2.342.0
Tillagt
- Inbäddade bilder bär tillgänglighetsmetadata:
AltTextochAltTextTitlepå varje bild serialiseras som ritningensdescr- ochtitle-attribut och läses tillbaka in i den typade modellen för arbetsböcker som inte spelar upp rå XML-ankare
Ändrat
- Slicer- och tidslinjedelar runda redan förlustfritt genom det opaka paketlagret (verifierat från ände till ände i denna utgåva); rundtur-kontraktet är nu fastnålat av ett regressionstest som täcker öppning och återsparning av paket med slicers
Version 2.341.0
Tillagt
- Rapportkörare kan automatiskt anpassa den färdiga utdata:
AutofitModeväljer rad-, kolumn- eller båda-pass över varje blad efter att alla mål tillämpats och före serialisering, ochAutofitAdjustmentlägger till valfritt utrymme ovanför de mätta storlekarna - Radbrutna rader storleksbestäms från det mätta radantalet mot kolumnbredden, så flerradig celltext som produceras av mallar växer raden som Excels egen autofit skulle göra
Version 2.340.0
Tillagt
- PDF-exporter kan ställa in det initiala visningsläget — bokmärken, miniatyrbilder, helskärm, valfritt innehåll eller bilagor — genom katalogens
/PageMode-post - PDF-exporter kan definiera en öppningsåtgärd som hoppar till en vald sida med en explicit zoomfaktor eller öppnar bokmärkespanelen när dokumentet läses in
- XMP-metadata bär nu
DocumentID- ochInstanceID-identifierare, enxmpMM:History-händelse, ändrings- och metadatadatum samtdc:format-deklarationen som arkiveringsvalidatorer förväntar sig
Version 2.339.0
Tillagt
- En fysisk utskriftspipeline: det nya
TXLSPrintDocumentskriver ut kalkylblad, arbetsböcker eller alla synliga blad genom den delade sidindelningsmodellen med sidfönster, kopiekollationering, en dokumenttitel och före-ny-sida/efter-generera-sida-händelser - Arbetsboksvisarens förhandsvisning får zoomlägen — anpassa sida, anpassa bredd eller en explicit faktor från 25 % till 400 % — med zoom via Ctrl+hjul, bladvändning med hjulet och horisontell panorering när den zoomade sidan överskrider fönstret
Version 2.338.0
Tillagt
- Diagramrendering ritar värdeaxeln: streckmarkeringar och högerjusterade numeriska etiketter längs vänsterkanten, huvudrutnät när aktiverade, visningsenhetsskalning, omvänd orientering och logaritmisk avklämning
- Serier som tilldelas den sekundära värdeaxeln mappas mot sin egen skala, så kombidiagram behåller oberoende primära och sekundära storleksordningar
- Bubbeldiagram renderar area-skalade bubblor härledda från bubbeldimensionskolumnen istället för fasta markörpunkter
- Minnesbaserade diagram löser sina värde-, kategori- och bubbeldimensioner mot det ägande bladet när cachar är tomma, så nyskapade diagram renderas identiskt med inlästa
- Diagrammodellen får redigerbar munkhålsstorlek, den första sektorns vinkel, radartyp, of-pie-typ, delningsposition, delningsläge, sekundär diagramområdesstorlek och gapbredd, allt bestående genom sparning och inläsning
Rättat
- Kategoridiagram vars punkter bär värden men inga numeriska kategorier avbryter inte längre renderingen med en platshållare, vilket tidigare undertryckte streckmarkeringar, rutnät och seriutdata för varje kolumn-, stapel- och linjediagram
Version 2.337.0
Tillagt
- Sidindelad utdata kan rendera cellkommentarer som en förteckning i slutet genom det nya
PrintComments-läget på SVG-exportören och sidindelningsmodellen: celladress, författare och text visas under bladets sista datarad - Namngivna ritningsobjekt exporteras som PNG-bilder vid konfigurerad DPI och skala genom
ExportObjectAsPNG, med en mät-endastGetObjectSize-motsvarighet som returnerar objektets punktdimensioner utan rendering - Textform-ankare utanför det använda intervallet utökar nu den utskrivna ytan som diagram och bilder redan gjorde
Ändrat
- Sidindelningsrenderaren cachar lösta celltypsnitt per pass och memorerar upprepade textmätningar, vilket tar bort redundanta typsnittspool-avläsningar och GDI-mätanrop från krymp-för-att-passa-loopar och ordbrytning
Version 2.336.0
Tillagt
- Celltextrotation renderas nu i sidbild, SVG, utskrift och förhandsvisningsutdata: 1–90 graders moturs och medurs vinklar roterar runt cellcentrum, och 255-stapelformen avger en bokstav per rad
- Nedsänkta och upphöjda celler renderas med förskjuten baslinje och reducerad glyfstorlek istället för att förlora sin vertikala justering
- Sidhuvuds- och sidfotssektioner hedrar sina
&nn-punktstorleks- och&K-färgformatkoder i varje sidindelningsstyrd utdata - Kolumnbredder i sidindelad utdata härleds från den mätta maximala sifferbredden hos arbetsbokens Normal-typsnitt, så arbetsböcker baserade på andra typsnitt än Calibri 11 sidindelas med Excel-exakta kolumngränser
- Kalkylblad med en anpassad klassisk rutnätsfärg renderar sina rutnätslinjer i den palettposten istället för den fasta grå standarden
Version 2.335.0
Tillagt
- Cirka sjuttio klassiska kalkylbladsfunktioner utvärderas nu utöver att tolkas: matematik- och trigonometrigruppen
ATAN2 ASIN ACOS SINH COSH TANH ASINH ACOSH ATANH EVEN ODD, datum- och tidsgruppenTIME HOUR MINUTE SECOND DATEVALUE TIMEVALUE DAYS360, finansgruppenMIRR IRR IPMT PPMT DB,TRANSPOSE TYPE N ADDRESS ROMAN HYPERLINK MAXA MINA, och före-2010-stavningarna av distributions- och statistikfamiljen såsomNORMSDIST TDIST CHIDIST FDIST POISSON QUARTILE PERCENTILE PERCENTRANK COVAR CHITEST GAMMALNsom vidarekopplas till de punktseparerade implementeringarna som delar deras argumentlistor
Rättat
- Äldre en-argument normala CDF-former såsom
NORMSDISTberäknade en felaktigt skalad fel-funktionsapproximation MIRRräntesatte positiva kassaflöden med en off-by-one-periodexponent, vilket skiftade resultaten bort från Excels värden
Version 2.334.0
Tillagt
- Rapportband-platshållare som består av ett enda värdefält skriver nu rå datatyp i målcellen: tal förblir numeriska, datum förblir datumceller och får standarddatumformatet när cellen är Allmän, och booleska värden behåller sin celltyp, så nedströms SUM-, sorterings- och diagramreferenser fungerar på genererade rapporter
- Anpassade tabellstilar fick den fullständiga sektionsuppsättningen inklusive pivotdelsumma-, underrubrik-, tomrad- och sidfältssektioner, per-sektion typsnittsnamn, storlek, kursiv, randstorlek och fyra-kant-kantlinjer genom
SetSectionEx, pluspivot/table-flaggor,DefaultTableStyleName/DefaultPivotStyleName-arbetsboksegenskaper, och fullständig läs-sidans rundtur av stilar, sektioner och dxf-attribut - Att öppna en krypterad XLSX-arbetsbok utan lösenord utlöser nu
TXLSXWorkbook.OnPasswordmed samma återförsökskontrakt som den klassiska motorn, vilket möjliggör GUI-lösenordspromptar utan att veta i förväg att filen är krypterad - Sparning av klassiska BIFF5-arbetsböcker med lösenord tillämpar nu XOR-fördunkling och BIFF8-arbetsböcker kan välja standard RC4 genom
EncryptionType, vilket fullbordar den klassiska krypteringsmatrisen bredvid det befintliga RC4 CryptoAPI-standardvalet - Kalkylbladstextrendering i sidbild, SVG, utskrift och förhandsvisningsutdata hedrar nu vertikal justering och WrapText-ordbrytning med girig radbrytning, istället för att klippa radbrutna celler till en enda centrerad rad
Rättat
- Felceller visar nu sin Excel-felliteral såsom #DIV/0! eller #REF! i varje renderingsväg istället för en odefinierad tom text
- Anpassade tabellstilssektioner skrivs i schemaformen
tableStyleElementså att Excel känner igen stilen, och en sektionstypsnittsfärg kastar inte längre bort sin fetställning - Rapportband-ögonblicksbilder behåller varje bundet kolumnvärde när ett band växer bortom sin initiala kapacitet
Version 2.333.0
Tillagt
TXLSPDFSignature.CertificationPolicykan skapa en DocMDP-certifieringssignatur som tillåter inga ändringar, formulärfyllning och signering, eller formulärfyllning, signering och anteckningar; certifierade kataloger refererar signaturen genom/Perms, vanlig certifierad utdata använder PDF 1.5, och inkompatibel PDF/A-1-certifiering avvisas innan målströmmen ändras
Version 2.332.0
Ändrat
- Automatisk taggad PDF avger nu en komplett tabellstruktur med rader, semantiska huvud- och dataceller, täta markerade-innehållsidentifierare per sida, exakta föräldraträd-mappningar, sammanfogade-cell rad- och kolumnspann samt artefaktisolering för siddekoration, diagram, bilder, sidhuvuden och sidfötter
Rättat
- Återanvändning av en PDF-exportör rensar nu binära objektplatser mellan dokument, vilket förhindrar att en ICC-profil, bild eller annan ström från en tidigare export ersätter ett nyallokerat objekt när objektnumreringen ändras
Version 2.331.0
Tillagt
- En enhetlig XLSX-ritningsfasad exponerar blandad bild-, diagram-, textrute-, bevarad-ankare- och gruppordning, med framåt-, bakåt-, fram-, bak-, transformationsmedveten grupp- och spara-öppna-avgruppera-operationer som bevarar ritningsrelationer
- Namngivna stilar stöder automatiska eller explicita länkade formatdelar samtidigt som lokala åsidosättanden bevaras, och alla 60 inbyggda ljusa, medelstora och mörka tabellstilar löses genom de delade HTML-, PDF-, bild-, förhandsvisnings- och visningsformateringsvägarna
TXLSPDFBookmarkstöder hierarkiska Unicode-bokmärken, syskon- och barnrelationer, färger, fetstilta eller kursiva titlar samt expanderade eller kollapsade ättlingarTXLSPageImageExporter.ExportAllAsTiffskriver valda sidor till en ström eller fil som en LZW-komprimerad flersidig TIFF med förlopp, avbrytning och atomisk filersättning- Klassiska XLS-öppningar kan stanna efter global metadata eller söka direkt till valda kalkylblad via validerade
BOUNDSHEET-förskjutningar, inklusive ompositionering av krypterad ström TXLSFormatSnapshotfångar ett komplett klassiskt cellformat oberoende av dess källarbetsbok ochIXLSRange.ApplyFormattillämpar det på cell-, rad- eller kolumnintervall- Kompatibla rad-major-typade XLSX-massskrivningar använder packad RLE-lagring, med offentliga packad-cell- och byte-statistik plus transparent engångsmaterialisering för stabila objekthandtag
Ändrat
- Stil-endast-tomma XLSX-celler delar referensräknade nyttolaster med copy-on-write-lokala redigeringar, automatisk komprimering över massformatering, namngiven-stil-uppdateringar, kopierings-, sorterings-, format-patch-, spara- och laddningsvägar samt mätbara undvikna nyttolastbyte
- Dynamiska matriser strömmas direkt till skalära aggregeringar, upprepade exakta uppslag återanvänder typade inkrementella intervallcacheminnen, och oföränderliga tillståndslösa formeltoken delas mellan kompileringar
- Elliptiska bågar använder planhetsdriven adaptiv kubisk Bezier-subdivision som delas av PDF-, SVG- och bitmappsutdata, vilket ökar precisionen endast där skala eller excentricitet kräver det
- XLSX-paketutdata stabiliserar nu delade strängar, hyperlänkar, relationer och delordning så att omvänd konstruktion producerar byte-identiska deterministiska paket
- Den enhetliga XLS-, XLSX-, CSV- och TSV-framåtläsaren håller minnet avgränsat; BIFF8-delad-sträng-fortsättningar svämmar över bortom ett konfigurerbart tröskelvärde samtidigt som projektions-, vald-sheet-, krypterings- och felaktig-inmatning-skydd bevaras
Rättat
- C++Builder Win64-paketlänkning avger inte längre dubblerade Delphi-generiska objektlista-vtabeller från arbetsboksjämförelse- och importkontrollenheter
Version 2.330.0
Tillagt
TXLSXWorksheet.Subtotalinfogar grupperade delsummorader, en konfigurerbar totalsummarad, formler, ärvd synlig formatering och Excel-kompatibla dispositionsnivåer för sorterade dataintervallGetCellVisibleFormatlöser kalkylblads-, rad-, kolumn-, intervallöverlagrings- och explicit cellformatering utan att materialisera en tom cellCheckDataValidationtestar ett kandidatvärde mot reglerna som täcker en cell och kan åta sig det atomiskt endast när det är giltigt
Ändrat
- Uppslagsskanningsmemon använder kompakta exakta binära nycklar och en enda nyttolastuppslagning per cacheträff, vilket minskar omberäkningsallokering och hashtabellsarbete utan att ändra uppslagsjämförelser
- CSV-export med fast bredd fyller ut varje fält i en enda operation, vilket håller utfyllnadstiden linjär i den konfigurerade utdatabredden
Rättat
- Bakåtriktade
ReplaceTextIn-skanningar anropar nu ersättningsåteranrop i den begärda omvända skanningsordningen - Stilade celler utan värde eller formel blockerar inte längre angränsande textöverflöde i SVG-, bild- och förhandsvisningsrendering
- Klassisk XLS-numerisk utdata normaliserar negativ nolla utöver icke-ändliga och subnormala värden innan BIFF-numeriska poster skrivs
Version 2.329.0
Tillagt
A1ToR1C1konverterar formler i A1-stil till R1C1-notation (relativa förskjutningar, absoluta$-former, intervall och rundturer genomR1C1ToA1) och fullbordar därmed båda riktningarna av referensstilskonvertering
Ändrat
- Omberäkningens uppslagsmemo hoppar över sökvektorer med färre än fem celler i
VLOOKUP,XLOOKUP/XMATCHochMATCH, där en rå skanning är billigare än ordbokens rundtur
Version 2.328.0
Tillagt
- Den delade sidrendern bakom SVG-, bild- och förhandsvisningsutdata målar nu XLSX-cellformat: enfärgade fyllningar (med alfa), typsnitt och färger per cell, horisontell justering med Excels numeriska högerstandard, Excel-liknande ramkollaps där den tyngre delade kanten vinner, anpassa-till-innehåll som skalar teckensnittet till kolumnen, och överflöde av lång text in i på varandra följande tomma grannceller
Version 2.327.0
Tillagt
- CSV/TSV-inläsaren får nu importdirektiv per kolumn (
cctText,cctNumber,cctDate,cctBoolean,cctSkip) som speglar Excels guide för textimport, så att enskilda kolumner kan tvingas till text för att bevara inledande nollor, konverteras till en typ eller tas bort från importen - Textimport med fast bredd: att tilldela fältbredder växlar inläsaren från separatoranalys till uppdelning efter teckenposition, och spararen kan generera fastbreddskolumner utfyllda med mellanslag med avkortning
Version 2.326.0
Tillagt
- Sökning i XLSX-kalkylblad får nu fönsterbaserade metoder
FindTextInochReplaceTextInsom begränsar skanningen till ett rektangulärt cellintervall, samt en flagga för kolumn-major-skanordning som speglar läget Search: By Columns i Excels dialogruta Sök och ersätt; bakåtsskanningen accepterar nu ett noll-anker för att börja från nedre högra hörnet - Sparande skyddar nu mot formler som är längre än Excels gräns på 8192 tecken, med snabbt fel och identifierad felande cell i stället för att skriva en arbetsbok som Excel skulle öppna i reparationsläge
Rättat
- Icke-ändliga numeriska cellvärden (NaN och positiv eller negativ oändlighet) kan inte längre läcka ut oparsbara tokens i sparade XLSX-delar; de serialiseras nu som
#NUM!-felceller, och subnormala doubles nollställs i både XLSX- och BIFF8-skrivaren, i enlighet med vad Excel kan lagra och visa
Version 2.325.0
Tillagt
- API:er för arbetsboksformat inkluderar nu redigerbara XML Maps och schemabindningar, ordnade flera arbetsboksfönster, markeringar i flera områden och per ruta samt anropsägd förlustfri inspektion av formeltoken, rekonstruktion, referensersättning och atomisk tillbakaskrivning för XLS och XLSX
- Arbetsboksbearbetning inkluderar nu stabil horisontell eller vertikal sortering med anpassade jämförare och explicit formelförflyttning, konvertering av format och formler från BIFF2 till BIFF4, en projicerad framåtläsande fasad för XLS, XLSX, CSV och TSV, typade anpassade vyer samt redigerbara delmodeller för OLAP-, webbtabell-, fast text- och parameteranslutningar
- Beräkning och inspektion inkluderar nu strukturerad diagnostik för saknade funktioner, externa referenser och cirkulära beroenden, globala och arbetsbokslokala UDF-register, Unicode-bidirektionell visuell ordning, strategier för AutoFit i sammanfogade celler, typat bevarande av Excel 4-makroblad och kommandoskanning samt funktionerna
ISOMITTED,ARRAYTOTEXT,VALUETOTEXT,PDURATIONochRRI - Kompilerad rapportering täcker nu platshållare för hela arbetsböcker, namngivna rad-, kolumn- och korstabellband, utbyggbara Excel-tabellband, en enda abstraktion för tabell och markör, exakta relationsindex med sammansatta nycklar, lata datakontexter, strömmande tabellkombinatorer, kontrollerade namngivna frågeleverantörer, bladband per post, fortsättningsblad vid överflöde samt oföränderliga rekursiva inkluderingar
- Rapportförfattande inkluderar nu kompilerade villkor, uppslag, reguljära uttryck, dynamiska formler och format, bildfält, ombindning av diagramserier, återanvändbara körprogram med ström- eller atomisk filutdata, beroendemedveten kloning av intervall, planering av fast sidfot och balanserad paginering, riktad diagnostik, strikt körning, mallkontroll och säker migrering av stödda äldre platshållare
- PDF-utdata inkluderar nu automatiska taggade strukturträd, synliga eller osynliga värdsignerade fält, explicita PDF/A-1-, PDF/A-2- och PDF/A-3-konformansprofiler på nivåerna a och b, atomisk förloppsrapportering och avbrytning, stilmedveten cachad typsnittsfallback, kontextuell formning av komplex text, inbyggda flerstegsgradienter, alfa per steg, cellfyllnadsmönster, skuggor och placerade kommentarsanteckningar
- Delad rendering inkluderar nu inbyggd SVG för intervall, sida, arbetsbok och namngivna objekt, inkrementella PNG- och JPEG-sidor, backend-neutral layoutgeometri, infogade vektordiagram och former i HTML, tillståndsfulla partiella HTML-sessioner med delad CSS, renderade bildeffekter, vektorgeometri för förinställda former och WordArt, avancerade vetenskapliga och finansiella diagramdetaljer samt deterministisk layout för datamärkeskollisioner och ledarlinjer
Ändrat
- Alla 55 granskade kapacitetsobjekt F01 till F18, R01 till R19 och V01 till V18 har nu fullständiga stödda implementationer med explicit ägarskap samt gränser för formatsäkerhet, avbrytning och utdata
- Stora rapportmallar kompilerar objektmål och uttryck en gång, materialiserar endast bundna axelfält, förbrukar datamarkörer en gång, hash:ar relations- och joinnycklar, fryser prefix för källkollektioner vid upprepad osammanhängande kloning och undviker att skanna genererade arbetsboksobjekt igen
- Renderingsvägar delar paginering, geometri, objektplacering, effekttillstånd och cachar för dokumentresurser medan PDF-, SVG-, HTML-, bitmapps-, metafil-, förhands- och utskriftsutdata endast behåller sina formatspecifika kodare
Rättat
- XLSX-cellskrivningshändelser serialiserar nu sina effektiva ersättningsvärden utan att behålla föråldrade rich-text-körningar, BIFF-tokens för externa namn bevarar det fullständiga 4-byte-namnindexet, och anslutningskällor på översta nivån gör rundturer oberoende av textimportskällor, samtidigt som den äldre källfallbacken behålls
- Äldre BIFF-format och formelbetydelse, omapning av arbetsboksfönster och markeringar, blandade absoluta formelreferenser, ägarskap för formeltoken och tillbakaskrivning av ogiltiga token behåller nu deterministiskt förlustfritt beteende vid inläsning, redigering och sparande
- Rapportexpansion avvisar nu deterministiska konflikter för tabell, filter, namn, överlapp, delobjekt, rutnät och frågebaserade data före strukturella skrivningar, bevarar kardinaliteten för tabeller med noll rader där det är representerbart, behåller exakta heltalsnycklar bortom 2^53 och rapporterar deterministiska antal applicerade efter avbrytning eller fel
- PDF- och vektorexport bevarar nu Unicode-mappningar för fallback-typsnitt, grafem- och formningskluster, begränsningar för arkivprofiler, gradientalfa, bildeffekter, diagramdekorationer, tät märkesplacering och utdatas atomicitet utan resurstillväxt från upprepat innehåll
Version 2.324.0
Tillagt
- Förlustfri inspektion av formeltoken och skyddad tillbakaskrivning för XLS och XLSX genom
TXLSFormulaTokenStream,ParseFormulaTokens,GetFormulaTokens,FormulaTokensToTextochSetFormulaTokensexponerar RPN-tokeners slag och klasser, råa BIFF-token och extra nyttolaster, oberoende referensflaggor, kloning, referensersättning, kontextursprung och exakt kompatibel BIFF-återanvändning samtidigt som felformade, inkompatibla, arrayägda eller ej stödda strömmar avvisas före celländring - Utbyggbara Excel-tabellband för rapporter genom
TXLSCompiledTableReportBandanvänder en avgränsad markörsnapshot för att expandera en enda datamallrad samtidigt som rubriker, summor, tabell- och AutoFilter-intervall, filter- och sorteringsstatus, kolumnmetadata, beräknade formler och summaformler, format, strukturerade referenser och beroende kalkylbladsobjekt bevaras; representabla resultat med noll rader tar bort mallens datarad, medan frågebaserade, konfliktfyllda, ogiltiga och överflödande layouter misslyckas före skrivningar - Stilmedvetna PDF-typsnittsfallbackkedjor genom
SetFontFallbackChain,AddFontFallbackochClearFontFallbackChainslöser källfamilj- och stilnivåer efter glyftäckning, cachar inlästa snitt och val, bevarar kompletterande skalärer och grafemkluster över körningar, tilldelar distinkta CID:n till Unicode-sekvenser med delade glyfer, bäddar in fristående TTC-snitt och avvisar PDF/A-utdata atomiskt när ingen inbäddad glyf finns tillgänglig
Version 2.323.0
Tillagt
- Återanvändbara arbetsboksrapportmallar genom
TXLSCompiledReportTemplate: platshållare kompileras en gång och kan tillämpas upprepade gånger utan att arbetsboken skannas om, med hjälp av en sorterad värdeuppslagning och på förhand uppdelade textfragment över celler, rik text, kommentarer, trådade kommentarer, hyperlänkar, textrutor, diagramtitlar och serienamn, sidhuvuden och sidfötter, kalkylbladsnamn, definierade namn och dokumentegenskaper - Databindning för rapporter genom
IXLSReportTable,IXLSReportCursor, lat inläsning viaIXLSReportTableProvider, minnestabeller med direktaccess ochTXLSReportRelationIndex, som bygger en barn-hash med sammansatt nyckel en gång och behåller radnummer istället för att kopiera radnyttolaster vid upprepad huvud- och detaljuppslagning - Formelberäkning utvärderar nu
PDURATIONför antalet perioder som krävs för att nå ett målinvesteringsvärde ochRRIför motsvarande periodiska tillväxttakt, inklusive Excel-kompatibla numeriska felgränser och det obligatoriska OOXML-lagringsprefixet_xlfn. - Formelberäkning utvärderar nu
ISOMITTED,ARRAYTOTEXTochVALUETOTEXT, inklusive ett särskilt värde för utelämnat argument som förblir åtskilt från en tom cell, BIFF-roundtrips av token för saknat argument, endimensionella och tvådimensionella arrayer, strikt teckenkods escapning, lokaliserade avgränsare, regler för felkonvertering och OOXML-prefix för framtida funktioner - Strukturerad formelkontroll före beräkning genom
TXLSXWorkbook.AnalyzeFormulaIssuesrapporterar saknade funktioner, externa arbetsboksreferenser och exakta komponenter för cirkulära beroenden med cellkoordinater och avgränsade medlemslistor, medan stränglitteraler och lokala strukturerade referenser undantas från falska träffar - Beroendemedveten kloning av intervall genom
TXLSXWorksheet.CloneRangeTokopierar valda celler, sammanfogade intervall, villkorsstyrd formatering, datavalideringar, hyperlänkar, kommentarer, bilder och diagram i en enda operation, flyttar tillämpade intervall och ankare samt översätter formelnyttolaster med blandad relativ och absolut referenssemantik; rapportband använder samma väg för beroende objekt - Förlopp och avbrytning vid PDF-export genom
TXLSPDFExport.OnProgress,OnProgressExochCancel: notifieringar för början, sida och slut tillför försumbar callback-överhead, avbrytning kontrolleras mellan radpass och sidobjekt, avbrutna strömmar får ingen partiell PDF och exportören förblir återanvändbar - Diagnostik för kompilerade rapporter genom
TXLSCompiledReportTemplate.Analyze, strikt körning ochWriteDiagnosticsidentifierar saknade värden, tomma platshållare och ej avslutade platshållare med måltyp samt kalkylblads- och cellkoordinater före ändringar, eller skriver samma fynd till ett diagnostiskt kalkylblad - Återanvändbar rapporteringskörning genom
TXLSCompiledReportRunnerger förlopp för början, mål och slut med tillstånden slutförd, avbruten och misslyckad, stödjer avbrytning före första skrivningen eller mellan kompilerade mål, rapporterar exakt antal applicerade och förblir återanvändbar efter avbrytning eller undantag utan att skanna om arbetsboken - AutoFit-strategier för sammanfogade celler i klassiska XLS- och XLSX-filer låter den första eller sista raden eller kolumnen absorbera den nödvändiga tillväxten, eller fördela den jämnt över det sammanfogade spannet, samtidigt som äldre överlagringsbeteende, dolda tillstånd, explicita gränser och deterministiska upprepade anrop bevaras
- Valfria PDF-kommentarsanteckningar genom
TXLSPDFExport.ExportCommentsAsAnnotationsplacerar Unicode-författare och kommentarstext på den ursprungliga cellrektangeln samtidigt som den befintliga sidan med kommentarer i slutet bevaras; kommentarsindex per kalkylblad byggs på ungefär O(C log C)-tid och stödjer O(log C)-uppslagning av celler - Hierarkiska register för användardefinierade funktioner låter XLS- och XLSX-arbetsböcker dela processomfattande hanterare samtidigt som arbetsbokslokala överstyrningar, ersättning, borttagning, rensning och den befintliga återfallshanteringen för arbetsbokshändelser behålls; genomsnittlig uppslagning är O(1), lokala träffar maskerar globala namn och hanterare körs utanför registerlås för säker parallell omberäkning och självborttagning
- Lata rapportabellkombinatorer genom
TXLSReportTableFactorytillhandahåller topprader, kolumnprojektion, radantal, minimum och flera aggregeringsdefinitioner, schemakopplad union, sammanhängande uppdelade partitioner samt inre eller vänstra hash-joins som bevarar dubbletter utan att materialisera fullständiga mellanliggande radnyttolaster - Inkrementell PNG- och JPEG-sidexport genom
TXLSPageImageExporterstödjer XLS- och XLSX-intervall, kalkylblad och arbetsböcker med sidval, DPI, skala, JPEG-kvalitet, förlopp, avbrytning och återanvändbara sessioner; en pagineringsmodell byggs per session och bitmappsminne frigörs efter varje sida - Flera XLSX-arbetsboksfönster genom
TXLSXWorkbook.WorkbookViewsbevarar oberoende aktiva flikar, första synliga blad, synlighet, minimerat tillstånd, geometri, flikvisning, rullning, okända attribut, tillägg och korrekt omappade vybindningar för kalkylblad medan de befintliga egenskaperna för enkelfönster fortsätter att avse den första vyn - Namngivna rad-, kolumn- och korstabellband för rapporter genom
TXLSCompiledReportBandexpanderar en mall med definierat namn strukturellt från avgränsade datasnapshots i ett enda pass, bevarar formler och beroende kalkylbladsobjekt, lägger ut explicit rad- och kolumnmetadata utan att skapa nollstora standardvärden och återanvänder fasta gränser för källkollektioner så att upprepad kloning på samma blad inte skannar genererade nyttolaster igen - PDF-export skriver nu tvåstegs- och flerstegs axiala eller radiella gradienter som inbyggda PDF-skuggningar, återanvänder identiska funktions-, skuggnings- och transparensresurser, klipper varje fyllning till sin cell och tillämpar solid eller enhetlig gradientalfa utan den tidigare bandade rektangelapproximationen
Rättat
- Anpassade punktbaserade överstyrningar av pappersbredd och -höjd deltar nu i beräkningen av pagineringsband samt i det slutliga sidobjektet, så att sidbrytningar och renderade dimensioner använder samma tillgängliga yta
Version 2.322.0
Tillagt
- Formelberäkning utvärderar nu Bessel-funktionerna av första slaget
BESSELJ(oscillerande) ochBESSELI(modifierad), beräknade via potensserien med termrekursion för numerisk stabilitet över det praktiska argumentområdet
Version 2.321.0
Rättat
- XLSX-RTF-export bygger nu en riktig typsnittstabell istället för att hårdkoda Calibri: förskanningen samlar in varje distinkt celltypsnittsnamn,
\fonttbllistar var och en med sitt eget\fN-index och varje cells text refererar till dess faktiska typsnitt — arbetsböcker formaterade med Times New Roman, Courier New eller något annat typsnitt flödar inte längre om visuellt till Calibri när de öppnas i Word eller WordPad
Version 2.320.0
Rättat
- PDF-export renderar nu textrotation på den klassiska XLS-motorns väg: celler med 90-graders eller 270-graders orientering ritar sin text vertikalt genom en PDF-textmatris som roterar runt cellens mitt, i linje med det befintliga beteendet på XLSX-vägen; tidigare renderades vertikala rubriker och roterade etiketter horisontellt i PDF:er som genererats från arbetsböcker i
.xls
Version 2.319.0
Tillagt
- Formelberäkning utvärderar nu Excel 365-arraykombinatorerna som är beroende av LAMBDA:
MAP(elementvis transformering),REDUCE(vikning till ett enda värde),SCAN(vikning som spiller ut varje mellansteg),MAKEARRAY(bygg från rad- och kolumnindex),BYROW(radvis aggregering som spiller en kolumn) ochBYCOL(kolumnvis aggregering som spiller en rad), vilket fullbordar LAMBDA-familjen för funktionell programmering tillsammans med det befintliga stödet förLAMBDAochLET
Version 2.318.0
Tillagt
- Formelberäkning utvärderar nu obligations- och statspappersfunktionerna:
COUPDAYBS,COUPDAYS,COUPDAYSNC,COUPNCD,COUPPCD,COUPNUM(primitiver för kupongdagräkning),PRICE/YIELD(standardprissättning av obligationer med bisektionslösare för avkastning),PRICEDISC/YIELDDISC(diskonterade värdepapper),PRICEMAT/YIELDMAT(baserat på förfallodag),DURATION/MDURATION(Macaulay och modifierad),TBILLEQ/TBILLPRICE/TBILLYIELD(statsskuldväxlar),DISC/INTRATE/RECEIVED(diskontering och ränta),ACCRINTM(upplupen ränta vid förfall),DOLLARDE/DOLLARFR(konvertering av bråkdelar av dollar),EFFECT/NOMINAL(effektiv och nominell ränta),CUMIPMT/CUMPRINC(kumulativ ränta och amortering),FVSCHEDULE(framtida värde med rörlig ränta) samtAMORDEGRC/AMORLINC(fransk avskrivning); alla delar en fristående nästlad kupongdatumsmotor med de fem standardbaserna för dagräkning
Version 2.317.0
Tillagt
- Inläsning av krypterade arbetsböcker accepterar nu Agile Encryption-filer som deklarerar hash-algoritmen SHA-256 (producerade av vissa tredjepartsskrivare): härledningen av lösenordsnyckeln, spinnloopen, lösenordsverifieraren samt IV:n och HMAC för dataintegritetsnyckel/värde följer alla den deklarerade hashen, medan filer som deklarerar oförenliga hash:ar mellan nyckeldata och nyckelkrypteraren fortfarande avvisas; sparande fortsätter att skriva Excel’s standardvariant SHA-512
Version 2.316.0
Tillagt
SortRangebevarar formler i båda arbetsboksmotorerna: formelceller följer med sina rader och deras relativa referenser förankras om enligt Excel’s sorteringssemantik ($-absoluta delar behålls, referenser som flyttas utanför rutnätet kläms fast på plats), så sorterade tabeller fortsätter att beräknas istället för att kollapsa till värden- Bakgrundsbilder för kalkylblad:
SetBackgroundImagelägger en bild som kakel bakom cellerna i ett XLSX-kalkylblad (endast för visning, precis som i Excel), med roundtrip genom kalkylbladetspicture-element, dess mediarelation och paketets innehållstyper
Rättat
- Omberäkning av en aritmetisk formel som refererar en aldrig vidrörd tom cell avbryts inte längre med ett konverteringsfel — tomma operander bidrar med 0 precis som i Excel
Version 2.315.0
Tillagt
CopyToClipboardpublicerar det inbyggda Biff8-urvalsformatet tillsammans med text och HTML i båda arbetsboksmotorerna, så att intervall som klistras in i Excel eller andra HotXLS-arbetsböcker bär med sig värden, formler, nummerformat, typsnitt, fyllningar, ramar, justering och sammanfogade celler istället för enbart textPasteFromClipboardföredrar Biff8-nyttolasten när den finns: text som klistras in från Excel behåller sina ursprungliga värden utan lokalanpassad omtolkning av datum och tal, formler förankrar om sina relativa referenser mot klistringsmålet och sammanfogade områden återskapas på destinationsplatsen; båda motorerna klistrar även in varandras block med fullständig formatering
Ändrat
- Formler som klistras in i Excel anländer som sina beräknade värden (en begränsning i Excel’s tredjepartstolkning av Biff8-urval); allt annat — text, tal med format, fyllningar, ramar och sammanfogningar — klistras in förlustfritt i Excel, och formler överlever fullt ut i riktningarna Excel-till-HotXLS och HotXLS-till-HotXLS
Version 2.314.0
Tillagt
- Kameraobjekt på XLSX-kalkylblad:
AddCameraplacerar en levande snapshotbild bunden till ett cellintervall — Excel-kameraverktygets länkade bild — med intervallbindningen skriven till den dokumenterade ritningstilläggningen och en platshållarbild storleksanpassad till ankaret; kameraobjekt som skapats av Excel öppnas igen med sin intervallbindning bevarad
Version 2.313.0
Tillagt
- Patchning av kalkylblad på plats för XLSX-paket:
BeginPatchpå den strömmande skrivaren öppnar en befintlig arbetsbok och skriver om exakt ett kalkylblad — varje annan del (format, ritningar, diagram, pivottabeller, anpassade delar) kopieras över med sina komprimerade bytes ordagrant, utan att något dekomprimeras eller skapas om, så en stor mall får sitt datablad uppdaterat på en bråkdel av tiden för en fullständig ombyggnad - Patchläge kan även lägga till ett nytt kalkylblad: bladet registreras i arbetsbokens dellista, relationer och innehållstyper med numrering som aldrig kolliderar med befintliga delar, enligt paketets egen strikta eller övergångsbaserade relationskonvention
- Patchade paket tar automatiskt bort den inaktuella beräkningskedjan (Excel bygger om den vid inläsning), och funktioner som skulle kräva nya paketdelar (tabeller, diagram, bilder, kommentarer, definierade namn) rapporterar ett tydligt fel istället för att skriva ett ogiltigt paket
Version 2.312.0
Tillagt
- Strikt Open XML-utdata: att ange
StrictOOXMLpå en XLSX-arbetsbok sparar paketet i strikt ISO/IEC 29500-konformans — varje namnområdesdeklaration och relationstyp växlar från de övergångsbaserade vokabulärerna till de striktapurl.oclc.org-vokabulärerna över kalkylblad, delade strängar, format, tema, ritningar, diagram, kommentarer, dokumentegenskaper och bevarade delar, medan innehållstyper, delnamn och VML-vokabulärerna förblir som båda konformansklasserna delar dem - Inläsning av strikt konforma arbetsböcker är nu komplett: relationstyper skrivna i strikt form löser upp till samma mål som sina övergångsbaserade motsvarigheter, vilket kompletterar acceptansen av strikta elementnamnområden så att filer som sparats i Excel’s läge "Strict Open XML Spreadsheet" öppnas som vilken annan arbetsbok som helst
- Sparande med strikt utdata aktiverad rapporterar ett tydligt fel för funktioner som endast finns som Microsoft-tillägg (VBA-projekt, formulärkontroller, trådade kommentarer, metadata för dynamiska arrayer) istället för att skriva ett paket som inte skulle valideras
Rättat
- Anpassade dokumentegenskaper deklarerade ett felstavat namnområde för värdetyper, vilket kunde göra att egenskapsdelen misslyckades med valideringen i externa verktyg
Version 2.311.0
Tillagt
- Inläsning av en XLS-arbetsbok bevarar ej igenkända kalkylbladsposter: varje post som den typade tolkaren inte modellerar fångas upp ordagrant och spelas upp igen vid sparande, så filer som bär leverantörsspecifika eller nyare specifikationsposter gör roundtrip genom HotXLS utan att de går förlorade
Version 2.310.0
Tillagt
- Former med förinställd geometri på XLSX-kalkylblad:
AddPresetShapeskriver någon av de 187 OOXML-förinställdaST_ShapeType-token (rightArrow,flowChartDecision,star5, …) ordagrant till ritningens<a:prstGeom>, och egenskapenPrstTokenlåter befintliga former växla geometri — token gör roundtrip genom sparande och öppning igen
Version 2.309.0
Tillagt
- Mallhantering på kalkylblad:
ApplyTemplateersätter{{key}}-platshållare i alla celler — värden behåller sina inbyggda typer och formelplatshållare substitueras före tolkning — ochFillTemplateBandklonar ett mallblock en gång per post med radöversättning av formler per klon, kloning av sammanfogade intervall och ett fält#skipför villkor på radnivå, vilket förvandlar vilket handgjort blad som helst till en datadriven rapportgenerator
Version 2.308.0
Tillagt
- PDF-export kan bifoga filer:
AddAttachmentför in råa dokument i den exporterade PDF:en som/EmbeddedFiles-poster (filspecifikation, inbäddad ström med valfri MIME-subtyp och katalogens namnträd), så rapporter levereras tillsammans med sina stöddata i en enda fristående fil
Ändrat
- Inläsning av en XLS-arbetsbok med ett ej igenkänt BIFF-versionsord avvisar inte längre hela strömmen: läsaren faller tillbaka till BIFF8-layouten så att filer från skrivare som genererar ovanliga versionsnummer fortfarande laddas när deras poster tolkas
Version 2.307.0
Tillagt
- Central hantering av temporära filer: varje temporär fil som biblioteket skapar registreras och städas bort, så en avbruten export eller ett undantag mellan skapande och borttagning lämnar inte längre kvar föräldralösa temporära filer
VerifyEncryptedSaveöppnar en nyligen skriven krypterad behållare igen genom hela dekrypteringspipelinen och misslyckas med sparandet när lösenordet inte kan låsa upp den — trasiga behållare upptäcks omedelbart istället för vid användarens nästa öppning- Datasetexport genererar en
OnExportLimit-händelse när raddelning aktiveras, och arbetsbokens rutnätsgränser per formatversion exponeras som konstanter (65536×256 för BIFF8, 1048576×16384 för formaten från 2007 och framåt) för kapacitetsförhandling
Version 2.306.0
Tillagt
- XLSX-kalkylblad får stöd för att skapa formulärkontroller:
AddFormButton,AddFormCheckBox,AddFormRadioButton,AddFormComboBoxochAddFormListBoxskriver knapp-, kryssrute-, alternativknapp-, listrute- och listkontroller med etiketter, länkade celler, markerat tillstånd och makrobindning — sparandevägen genererar VML-formerna, de per-kontrollctrlProps-delarna, deras relationer och innehållstypsposterna, och filer som innehåller kontroller gör roundtrip med sina delar ordagrant vid öppning igen
Version 2.305.0
Tillagt
- PDF-export får ett opt-in-läge
UsePDFAsom producerar dokument identifierade som PDF/A-2b: sRGB-profilen IEC61966-2.1 bäddas in som utdatasavsikten GTS_PDFA1, XMP-metadatan bär del-/konformansidentifieringenpdfaidoch huvudet deklarerar PDF 1.7 — kombinera det med ett inbäddat TrueType-typsnitt (UnicodeFontFileeller det automatiskt valda installerade typsnittet) för arkiverbar utdata
Version 2.304.0
Tillagt
- Liveutvärdering mellan arbetsböcker:
RegisterExternalWorkbookparar ett arbetsboksobjekt med ett arbetsboksnamn så att formler som[Book.xlsx]Sheet!A1kompileras (prefixet[Book]Sheet!Reftolkas nu som en riktig extern referens) och läser det registrerade objektets aktuella tillstånd vid varje omberäkning; avregistrering tar bort den levande länken och faller tillbaka till cachen för externa länkar
Version 2.303.0
Tillagt
- Jämförelse av arbetsböcker genom
TXLSXWorkbookCompare: parar ihop blad efter namn och rapporterar tillagda/borttagna blad, tillagda/borttagna celler, ändrade värden, ändrade formler samt tillagda/borttagna sammanfogade intervall — som en strukturerad difflista för verktyg och som en läsbar rad per skillnad genomReport
Version 2.302.0
Tillagt
- Den strömmande direkta skrivaren får en radleverans i pull-läge:
OnNeedRowutlöses en gång per presumtiv rad och leverantören skriver den raden direkt genom skrivaren, med deklaration av slut på data för att stoppa — datapipelines kan driva en export utan att först buffra radlistor
Version 2.301.0
Tillagt
- ODS-export skriver cellformler: referenser inom samma blad översätts till den standardmässiga
of:=OpenFormula-stavningen (hakparentesreferenser, semikolon som argumentavgränsare, stränglitteraler lämnas orörda), medan bladkvalificerade och strukturerade referenser färdas genommsoxl:-genomsläppet som Excel själv använder för roundtrips mellan programvaror — sparade paket öppnas igen med den ursprungliga Excel-formeltexten
Version 2.300.0
Tillagt
- Kalkylblad från höger till vänster renderas nu spegelvänt överallt: PDF-export vänder kolumngeometrin över den utskrivbara bredden (kolumn A till höger, cellinnehåll orört) och båda HTML-exportörerna skriver ut
dir="rtl"på tabellen så att webbläsaren vänder kolumnordningen — bladets flagga gör redan roundtrip genom XLSX och BIFF
Version 2.299.0
Tillagt
- Datasetexport (
TDataToXLS) får ett titelband och ett sidfotsband:Titlerenderar en sammanfogad, fetstilsformaterad rad ovanför huvudet (egenTitleFontoch valfriTitleColor), ochFooterlägger till en rad under den sista data- eller sammanfattningsraden ForEachFormattedCellpå ett kalkylblad går igenom varje ifylld cell i rad-/kolumnordning och levererar dess visningstext — med nummerformat tillämpat — genom en callback, redo för indexering och textextraktion
Version 2.298.0
Tillagt
- ApiTour-exemplet öppnar nu direkt i en live-demo: en minnesbaserad försäljningsinstrumentpanel med KPI-rutor, formler för
SUMIF/COUNTIFöver flera blad, datastapelar, en färgskala, en ikonuppsättning och två diagram renderas i den inbäddade arbetsboksvyn så fort exemplet startar, varje rutnätscell förblir redigerbar med omedelbar omberäkning och uppdaterade villkorsstyrda format, och åtgärder med ett klick exporterar demon till PDF, HTML och CSV eller skickar den vidare till Excel med live mätning av bygg- och exporttider - C++Builder-exemplet ApiTour speglar den nya Delphi-demon, den inbäddade visaren, formelfältet, exportåtgärderna och aktivitetsloggen
Ändrat
- ApiTour-exemplen ersätter modala resultatdialoger med en aktivitetslogg i fönstret medan den klassiska genomgången för att skapa, ändra och exportera behåller sitt beteende
Version 2.297.0
Tillagt
- PDF-export får ett opt-in-läge
UseXRefStreamsom producerar PDF 1.5-filer med komprimerade objektströmmar och en binär korsreferensström: små ordlisteobjekt färdas i en Flate-komprimerad behållare och den klassiska xref-tabellen och trailern ersätts av en kompakt ström, vilket förminskar exporterade dokument medan sidinnehållet förblir byteidentiskt
Version 2.296.0
Tillagt
- Den strömmande direkta skrivaren får ett opt-in-läge
AutoSplitRows: en rad bortom kalkylbladets gräns (1048576) avslutar det aktuella bladet och fortsätter på ett nyskapat<name>_2-,<name>_3-… blad, så obegränsade exporter skriver aldrig ett ogiltigt radindex FillTableCalculatedColumnpå ett kalkylblad för ned en tabellkolumns formel för beräknade kolumner till varje datarad, radöversatt per cell på samma sätt som Excel’s eget författande gör, och beräknar sedan om naturligt
Version 2.295.0
Ändrat
- XLSX-HTML-export centraliserar cellformatering: identiska stil-kombinationer skrivs ut en gång som
td.cN-klasser i en stilmall istället för ett upprepat inline-style-attribut på varje cell, vilket förminskar HTML-utdata för enhetligt formaterade tabeller; visuella överlagringar för villkorsstyrda format förblir inline så att de behåller sin per-cell-karaktär
Version 2.294.0
Rättat
- Strukturerade referenser i formen för aktuell rad (
Table[@Col]) utvärderas nu mot formelcellens egen rad under omberäkning, i både den seriala och den parallella utvärderingsvägen; tidigare läste varje sådan formel rad 1 i kolumnen — vanligtvis rubriktexten — och omberäkningen misslyckades helt med ett typkonverteringsfel när den raden innehöll text
Version 2.293.0
Ändrat
- Memo-funktionen
RecalcAggregateCache(opt-in) täcker nu även ovillkorade aggregeringar över ett enda intervall —SUM,AVERAGE,MIN,MAX,COUNTochCOUNTAöver ett enkelt enskilt bladintervall — så upprepade summor över samma block återanvänder resultatet från den första körningen under samma port för referensstabilitet som den villkorade familjen
Version 2.292.0
Tillagt
- Generator från arbetsbok till kod (
TXLSCodeGen): går igenom en arbetsbok och skriver ut de källsatser som bygger upp den igen — bladskapande, cellvärden, formler, nummerformat, kolumnbredder och sammanfogade intervall — i Delphi- eller C++Builder-dialekter, så en handgjord fil blir ett färdigt API-exempel - Importvaliderare för kolumnregler (
TXLSImportCheck): regler för obligatorisk fyllnad, textlängd, regex-mönster och unikhet per kolumn samt en anropscallback som körs över kalkylbladets datarader; överträdelser kan markeras tillbaka med ett rött typsnitt och en kommentar med orsaken, ochKeepOnlyViolationskomprimerar bladet till rubriken plus de rader som misslyckas för en arbetsbok av typen "rätta till och skicka tillbaka"
Version 2.291.0
Tillagt
- CSV-import accepterar en alternativpost:
OpenCSV-överlagringar tar emot hopp över inledande rader (SkipRows, för titelband ovanför rutnätet) och trimning av mellanslag (AutoTrim) tillsammans med avgränsare och växlare för typdetektering FillMergedCellValuespå ett kalkylblad kopierar varje sammanfogat intervalls ankarvärde till varje täckt medlemscell, så att blad i rapportstil med sammanfogade etiketter läses som ett enda platt rutnätAddListValidationfår en överlagring med strängmatris som slår samman objekten till en enda listruta i ett enda anrop- Datasetexport (
TDataToXLS) får zebrarandning (AlternatingColor, målad på udda detaljrader) och en totalrad (SummaryRow) som lägger till riktigaSUM-formler för de exporterade numeriska fälten eller en av anroparen namngiven fältlista, med en fetstilsformaterad etikettcell
Rättat
- Datasetexport tillämpar nu den konfigurerade
DetailColor-bakgrunden på detaljceller; tidigare accepterades egenskapen men målades aldrig
Version 2.290.0
Ändrat
- Memo-funktionen
RecalcLookupCache(opt-in) täcker nu ävenVLOOKUP-sökningar med exakt och ungefärlig matchning,HLOOKUPsamtMATCH-matchningssätten 0 och 1, så arbetsböcker som upprepar dessa klassiska uppslagningar över samma intervall återanvänder utfallet från den första sökningen under en omberäkningspassage under samma säkerhetsport för referensstabilitet somXLOOKUP/XMATCH
Version 2.289.0
Tillagt
- Den strömmande direkta skrivaren får ett opt-in-läge
TrackColumnWidths: kalkylbladet läggs i minnet medan rader strömmar så att den sparade filen bär<dimension>-ledtråden för använt intervall och bredder per kolumn anpassade till den längsta visade texten (tecken plus utfyllnad, max 255), vilket approximerar autofit för exporter vars data bara är känd allt eftersom den strömmar; explicit angivna kolumnbredder vinner alltid
Version 2.288.0
Tillagt
- Öppning av XLSX-paket tolererar icke-kanoniska namnområdesprefix: kalkylblad, diagram, ritningar och delar för dokumentegenskaper som binder sina element till ett annorlunda prefixat (eller ISO 29500-strikt) namnområde normaliseras till standardvokabulären under parsningen, så filer från tredjepartsgeneratorer och sparare i strikt läge laddas korrekt
- Kalkylblad vars celler utelämnar positionsattributet
rplacerar varje cell efter sin föregångare i skanningsordning, och rader utanr-attribut fortsätter radsekvensen — konventionen som används av flera strömmande skrivare
Version 2.287.0
Tillagt
Openläser Excel 2.0/3.0/4.0-arbetsböcker (BIFF2-4): råa BIFF-strömmar utan OLE-omslag laddas med sina tal, texter, booleska värden, fel och cachelagrade formelresultat; strängresultat från formler anländer genom BIFF2-4:s String-post, och strömmens teckensidspost styr textavkodningen
Ändrat
- BIFF2-4-dokument läses för värden — nummerformat och stilar från dessa generationer modelleras inte, så datum dyker upp som råa serienummer och formler som sina senast beräknade värden
Version 2.286.0
Tillagt
- Nummerformat med jämförelsesektioner (
[>=100],[<0], …) väljer sektion efter värde överallt där visningstext renderas, i linje med Excel’s beteende för villkorsstyrt format - Textsektioner i nummerformat (
"ID:"@) mallar strängvärden istället för att ignorera formatet SetCellFromHtmlfyller en cell från ett lätt HTML-fragment:<b>/<strong>,<i>/<em>,<u>,<br>och<font color=...>blir rika textsegment; andra taggar tas bort medan deras text behålls- Uppmärkningen
TaggedTextaccepterar<br>-radbrytningar, aliasen<strong>/<em>, attributformen<font color=...>samt entiteterna"/ - Block som håller ihop kolumner (
KeepColumnsTogether) stoppar vertikala sidbrytningar inom en kolumngrupp och speglar funktionen på radnivå i paginering, förhandsvisning och PDF-utdata - Klassiska formulärkontroller Spinner och ScrollBar kan skrivas in i XLS-filer med inställningarna Min/Max/Inc/Page och en länkad cell, via OBJ FtSbs-subposten
WriteAutoValuekänner igenm/d/yyyy- ochd.m.yyyy-datum med valfria tider (inklusive AM/PM) utöver ISO-form, och avvisar omöjliga kalenderdatumConvertFormulasToValuesfår ettOnlyExternal-läge som fryser endast formler som refererar andra arbetsböcker, och den klassiska XLS-fasaden får metoden för hela bladet- Rad-autofit mäter sammanfogade celler mot deras sammanlagda kolumnbredd och fördelar den nödvändiga höjden över de sammanfogade raderna
Version 2.285.0
Tillagt
- PDF-export ritar kalkylbladsdiagram som inbyggd vektorgrafik: grupperade, staplade och procentstaplade kolumner och staplar, linjediagram med markeringar, ytdiagram, cirkel- och munkdiagram med procentetiketter, spridningsdiagram och radardiagram — var och en med en titulerad ram, automatiskt skalade axlar, ticketiketter, rutnätslinjer, en förklaring, valfria datapunktsetiketter, solida fyllningar per serie och Excel’s standardpalett för accentfärger; 3D-diagramtyper renderas som sin 2D-projektion
- Diagram som är förankrade bortom den sista cellen utökar nu den utskrivna ytan, så ett diagram som placerats under dataraderna syns fortfarande i PDF- och förhandsvisningsutdata istället för att klippas bort
Version 2.284.0
Tillagt
- PDF-sidhuvuden och sidfötter renderar Excel’s stilkoder:
&Bfet,&Ikursiv,&U/&Eenkel/dubbel understrykning,&Sgenomstrykning,&X/&Yupphöjd/nedsänkt,&nnteckenstorlek,&Kfärg och nyckelorden&"Font,Style"för vikt - PDF-export respekterar kalkylbladets svartvita utskriftsläge genom att reducera fyllningar, typsnitt, ramar, datastapelar och ikoner till gråskala baserad på luminans
- Utskrivna rad- och kolumnrubriker (radnummer och kolumnbokstäver) renderas bredvid rutnätet när bladet begär dem
- Utskriftscentrering:
CenterHorizontally/CenterVerticallyflyttar det utskrivna rutnätet mellan marginalerna medan sidhuvud- och sidfotsband förblir på plats - Cellkommentarer skrivs ut antingen som en röd hörnindikator (läget som visas) eller som en sida med kommentarslista efter bladet genom den nya kalkylbladsegenskapen
PrintCommentsAtEnd, som gör roundtrip av Excel’s sidinställningsvärdecellComments="atEnd" - Interna hyperlänkar (
Sheet!Cell-mål) blir klickbara GoTo-länkar i dokumentet som hoppar till målbladets sida - Exportören exponerar en
PageLayout-preferens för visaren och skriver ett XMP-metadatapaket tillsammans med dokumentinformationsordlistan - TrueType-samlingar (
.ttc) kan fungera som det inbäddade Unicode-typsnittet; de fetstilta och kursiva varianterna av det inbäddade typsnittet syntetiseras när endast ett vanligt typsnitt finns
Ändrat
- Kolumnbredder konverteras genom Excel’s formel för maximal sifferbredd (Calibri 11-mått) istället för en fast uppskattning per tecken, så PDF- och förhandsvisningsbredder matchar Excel’s lagrade pixelbredder
- Radbrutna rader mäts om från varje rads egen första tecken, vilket åtgärdar radbrutna rader som ignorerade bredden på ord som flyttats ner av en tidigare brytning
Version 2.283.0
Tillagt
- PDF-export radbryter
WrapText-celler med riktig ordbrytning, horisontell justering rad för rad, vertikal blockjustering och justerad eller distribuerad radavstånd - PDF-export renderar roterad celltext genom PDF-textmatriser, inklusive vertikal staplad text, och respekterar
ShrinkToFitgenom att stega ner teckenstorleken tills värdet får plats - PDF-text som överflödar en cell sträcker sig nu över tomma grannceller och klipps vid den första upptagna cellen, i linje med Excel’s utskriftsbeteende; allmän justering högerställer tal precis som Excel
- PDF-export ritar riktextsegment med typsnittsstil, storlek, färg, understrykning, genomstrykning, upphöjd och nedsänkt text per segment; radbrutna rader behåller formateringen per segment
- PDF-export ritar diagonala cellramar och äkta dubbellinjersramar
- Text som sträcker sig över sammanfogade celler ritar, justerar, radbryter och förankrar nu hyperlänkar över hela den sammanfogade rektangeln, och täckta sammanfogningsmedlemmar målar inte längre sin egen bakgrund
Ändrat
- PDF-textbredder kommer från kalibrerade breddstabeller per tecken istället för en fast genomsnittlig teckenbredd, så justering, radbrytning och förminskning matchar den utskrivna sidan
- Cellindragning flyttar text precis som Excel, och celler med ikonuppsättningar indragar sitt värde bredvid ikonen
Version 2.282.0
Tillagt
- PDF-export bevarar PNG-transparens: bilder med alfakanal skriver nu ut ett mjukmaskplan istället för att förlora transparensen, inklusive palettbilder med ett tRNS-segment
Ändrat
- PDF-sidans innehållsströmmar är nu Flate-komprimerade, vilket förminskar exporterade dokument avsevärt utan krav på visare utöver PDF 1.4
- PDF-export grupperar på varandra följande textoperationer i delade textblock och hoppar över överflödiga val av typsnitt, storlek och färg, vilket minskar både utdatastorleken och genereringstiden
- Angränsande celler med samma solida fyllning renderas som en sammanfogad rektangel, och kolinjära ramsegment med samma stil ritas som en enda linje istället för kanter per cell
- PNG-bilder bäddas in i PDF utan avkodning och omkodning, vilket bevarar den ursprungliga komprimerade strömmen och exakta pixlar
- Bilder med identiskt byteinnehåll bäddas in en gång och delas, oavsett hur många bildobjekt som refererar dem
Rättat
- Hyperlänkkommentarer skapas nu även för länkceller vars text renderas genom den inbäddade Unicode-typsnittsvägen
- PDF-innehållets byte beror inte längre på den aktiva systemets teckensida, så västerländsk text renderas identiskt på vilken Windows-språkversion som helst
Version 2.281.0
Rättat
- Urklippsläsare trunkerar inte längre datahandtaget till 32 bitar, vilket fick
XLSGetClipboardBiff8och XML Spreadsheet-klistringsvägen att returnera tomt i 64-bitarsprogram - Urklippsoperationer försöker öppna urklippet igen i upp till en halv sekund när ett annat program håller i det, istället för att misslyckas vid första konflikten
Ändrat
- Uppslagningar av regler för villkorsstyrda format (vägarna
FindAt/IndexOfCell) parsar varje regels cellintervall en gång istället för för varje frågad cell, i linje med cachen för datavalidering - PDF-export bygger ett hyperlänkindex per blad, som ersätter den linjära genomsökningen per cell med en binärsökning
Version 2.280.0
Tillagt
- Användardefinierade funktioner kan registreras efter namn:
RegisterUserFunctiondirigerar formler som anropar det namnet direkt till sin hanterare (ingen global if-kedja i en endaOnUserFunction), medan arbetsbokshändelsen fortfarande betjänar oregistrerade namn ScanUnknownFunctionsgranskar en arbetsbok för formelfunktioner som beräkningsmotorn inte kan utvärdera, och rapporterar varje cell och namn — idealiskt innan omberäkning aktiveras på externa filerRecoveryMode: en strukturellt skadad kalkylbladsdel hoppas över med en varningsdiagnostik istället för att avbryta hela öppningen- Nativt BIFF8-urklippsformat:
XLSSetClipboardBiff8/XLSGetClipboardBiff8publicerar och läserBiff8-strömmen som Excel själv använder, så att urklippsutbyte behåller värden, formler och formatering
Ändrat
- Granskning av datavalidering parsar varje regels cellintervall en gång istället för för varje cell, vilket snabbar upp
CheckDataValidationsöver stora blad
Version 2.279.0
Tillagt
- PDF-export bäddar in kalkylbladsbilder: PNG/GIF/BMP-bitmappar konverteras till Flate-komprimerade RGB-XObjects och JPEG-filer passerar orörda via DCTDecode (utan omkomprimering); identiska bilder på flera sidor delar ett objekt, och bilder som läggs till utan explicit storlek får nu som standard sina pixeldimensioner vid 96 DPI
- Block som håller ihop:
KeepRowsTogetherhindrar utskrift-/PDF-paginering från att bryta inuti ett radblock som får plats på en sida, ochXlsxAutoPageBreaksgör om de naturliga (håll-ihop-medvetna) sidgränserna till explicita radbrytningar så att Excel paginerar som exporten - Konfigurerbar XLSX-komprimering:
ZipCompressionLevelväljer deflate-nivå för sparanden (standard -1 upp till 9) - Reproducerbara sparanden:
DeterministicOutputlåser zip-posternas tidsstämplar så att samma arbetsbok som sparas två gånger ger byteidentiska filer
Rättat
- Korrupta sammansatta filer med cykliska FAT-kedjor hänger inte längre den klassiska .xls-läsaren — sökningarna genom katalog- och strömkedjor bär cykelskydd
Version 2.278.0
Tillagt
- PDF-export skriver ut klickbara länkkommentarer för kalkylblads hyperlänkar: celler som bär en URL får en osynlig /Link-rektangel med en URI-åtgärd över cellområdet
- PDF-export skriver en dokumentöversikt (bokmärken): varje exporterat kalkylblad blir ett bokmärke som pekar på sin första renderade sida
Version 2.277.0
Tillagt
- Datavalidering får en gransknings-API:
CheckDataValidationsskannar ifyllda celler mot bladets regler (listmedlemskap, heltals-/decimal-/datum-/tidsgränser, textlängd, anpassade formler genom kalkylatorn) och rapporterar varje avvikande cell med regelindex och en orsak - Typade anpassade dokumentegenskaper gör roundtrip genom
docProps/custom.xml: text-, tal-, datum- och booleska poster påWorkbook.CustomProperties - Anpassade XML-datadelar gör roundtrip genom
Workbook.CustomXmlPartsmed relationer på arbetsboksnivå och innehållstyper - Bilder accepterar en SVG-följeslagare:
AddImagePairlagrar SVG-byten bredvid rasterreserven, skriversvgBlip-tillägget och den extra mediadelen som Excel 2016+ förbrukar - Diagram kan hämta dataetiketttext från ett cellintervall (“Value From Cells”) genom
DataLabelsRange, som skickas som diagramtillägget och återställs vid öppning - Anpassade tabellstilar:
Workbook.CustomTableStylesdefinierar namngivna stilar med färgade/fetstilta sektioner (rubrikrad, totalrad, ränder, kantkolumner), skrivna tilltableStylesmed sina egna differentiella stilar så att tabeller kan referera till dem med namn
Version 2.276.0
Tillagt
- Cellgradientfyllningar: linjära svep per grad och sökvägsgradienter med färger per stopp gör roundtrip genom
gradientFill, renderas som CSS-gradienter i HTML-export, bandinterpolerade fyllningar i PDF-export och arbetsboksvisaren, och erbjuds genom bekvämlighetenTXLSXFills.AddLinearGradient - Nummerformat för förfluten tid (
[h]:mm:ss,[mm]:ss,[s]) renderar nu löpande totaler istället för att slå om som en klocka, i varje visningsväg (FormattedText, HTML, PDF, värden för villkorsstyrt format) - Bråknummerformat (
# ?/?,# ??/??, fasta nämnare som0/8) renderas med Excel’s bästa rationella approximation, inklusive döljande av nollan i heltalsdelen och justeringsmellanrum - Färghakparenteser av typen
[Red]synliggörs nu genomTXLSXCell.GetFormattedTextColoroch målar om celltexten i PDF-export TXLSXWorkbook.ValidateNumberFormatkontrollerar en anpassad formatsträng på samma sätt som Excel’s dialogruta för anpassat format — antal sektioner, citatbalans och hakparentesinnehåll (färger, villkor, enheter för förfluten tid, lokaldirektiv)- Fryst ruttillstånd kan läsas tillbaka genom
GetFrozenPanes, och rullningspositionen för den nedre högra rutan gör roundtrip genomSetPaneScroll/GetPaneScroll(skrivet somtopLeftCell) - Växlingsknappen för visning av rad-/kolumnrubriker
DisplayRowColHeadersgör roundtrip genomshowRowColHeaders - Diagram exponerar
DispBlanksAs(gap / span / zero) ochPlotVisibleOnlyistället för att hårdkoda dem, och återställer båda från bevarad ChartML vid öppning - Kommentarer bär redigerbar rutgeometri (
WidthPt/HeightPt, VML-punkter) plus en textdriven heuristikAutoSizeFromText
Version 2.275.0
Tillagt
- Sök & ersätt förstår Excel’s jokertecken:
*(valfri sekvens av tecken),?(exakt ett tecken) och~som escape för ett bokstavligt*,?eller~— samma semantik som Excel själv tillämpar i Sök & ersätt,COUNTIF-familjens villkor och autofilter - XLSX-kalkylbladets
FindTextfår en överlagring med alternativ: skiftlägesmatchning, matchning av hela cellinnehållet, sökning i formeltext såväl som värden, jokerteckensläge och bakåtskanning, med ett startankare så att upprepade anrop går igenom träffarna ReplaceTextfår samma uppsättning alternativ plus en valfri callback per träff som kan acceptera, skriva om, hoppa över eller avbryta varje ersättning cell för cell- Den klassiska XLS-kalkylbladets
FindText/ReplaceTextfår överlagringar för jokertecken och hela celler, så att båda fasaderna delar Excel’s söksemantik GetRangeStatisticsskannar en rektangel och rapporterar minimum, maximum, summa, medelvärde, antal numeriska värden och antal ifyllda celler i ett enda passWriteAutoValueskriver text på samma sätt som Excel’s egen cellinmatning tolkar den:TRUE/FALSEblir booleska värden, fellitteraler som#N/Ablir felvärden, entydiga ISO-datum blir datum, vanliga tal i invariant format blir tal, och allt annat — inklusive inledande nollor och tusentalsavgränsare — förblir text (båda fasaderna)GetHtmlFromCellrenderar en cell som ett stilat HTML-fragment med escaped uppmärkning, som komplement till hela bladets HTML-exportSortRangeaccepterar en flagga för skiftlägesokänslig sortering så att textnycklar ordnas alfabetiskt oavsett skiftläge (XLSX-fasaden)
Version 2.274.0
Tillagt
- Excel-tabeller gör nu roundtrip för tabeller utan rubrikrad och kommentarer per tabell genom de nya tabellegenskaperna
HasHeaderRowochComment, skrivna somheaderRowCount="0"ochcomment-attributet - Diagram kan välja en Excel-galleristil genom den nya egenskapen
ChartStyle(1–48 eller det utökade intervallet 101–148), med roundtrip genom diagramdelens stilelement - Kombinationsdiagram kan styra lagerläggningen av plotområdet genom en ny egenskap
ZOrderpå varje plotgrupp, så att en kolumnserie kan renderas bakom eller framför en linjeserie - Kalkylblad och enskilda celler kan frysa formler till sina beräknade värden genom
ConvertFormulasToValuesochConvertFormulaToValue, medan det cachade resultatet behålls och formeln, delade formellänken och arraymetadata tas bort - Definierade namn bär nu en valfri kommentar genom den nya name-egenskapen
Comment, med roundtrip genom den klassiska posten för namns kommentar och XLSX-definierat-namn-comment-attributet - PDF-export accepterar anpassade pappersdimensioner i punkter genom de nya egenskaperna
PaperWidthochPaperHeight, som åsidosätter pappersstorleksenumet för varje renderat kalkylblad - PDF-export kan undertrycka sidhuvud- eller sidfotsbandet genom den nya uppsättningen
HidePrintObjects - PDF-sidhuvudets och sidfotens fältkoder
&F(filnamn) och&Z(sökväg) expanderas nu med hjälp av källarbetsbokens sökväg som fångas av filbaserade exporter - Datastapelar stödjer en oberoende ramfärg för negativa värden genom de nya inställningarna
NegativeBorderColorochNegativeBarBorderColorSameAsPositive, som skickas i datastapeltillägget för Excel 2010+ - Inbyggda cellstilar vars identifierare saknar en äldre postplats (Hyperlink, Title, Headings, Accents, Good/Bad/Neutral, …) löser nu sina kanoniska visningsnamn vid sparande, så att Excel’s Styles-galleri överlever en roundtrip
- Agile-krypterade arbetsböcker bär nu ett riktigt
dataIntegrity-block: skrivaren skickar en spec-konform HMAC över hela det krypterade paketet, och öppning verifierar den, vilket upptäcker fel lösenord eller ett manipulerat paket; filer från skrivare utan blocket öppnas fortfarande oförändrade - Klassiska arbetsböcker stödjer Excel’s skrivreservation “lösenord för att ändra” genom
SetModifyPassword(rekommendera skrivskyddad-flagga, äldre lösenordshash och reserverande användarnamn skickas som postparet WRITEPROT + FILESHARING);IsWriteReservedrapporterar tillståndet och ett tomt lösenord rensar det - En opt-in-memo
RecalcLookupCachepåskyndar omberäkning med många uppslagningar: upprepadeXLOOKUP/XMATCH-skanningar över samma intervall återanvänder den första skanningens resultat. Memon aktiveras endast när beroendegrafen är bevisligen referensstabil (ingaOFFSET/INDIRECTeller olösbara referenser, inga cirkulära kedjor, inga What-If-datatableller) och förblir tyst avstängd annars, så resultaten är alltid identiska - En följeslagande memo
RecalcAggregateCachepåskyndar omberäkning av villkorade aggregeringar: upprepadeSUMIF/COUNTIF/AVERAGEIF-skanningar över samma intervall och villkor återanvänder det första resultatet, under samma port för referensstabilitet och med identiska resultat LAMBDA-uttryck utvärderas med fullständiga closures: ett definierat namn vars RefersTo är enLAMBDAkan anropas med namn och argument (=MyFunc(5)), closures binder lexikaliskt inutiLET(=LET(f, LAMBDA(x, x*2), f(21))), parametrar skuggar kolumnreferenser med samma stavning, och formeltexten gör roundtrip ordagrant; en barLAMBDAsom lagras som ett cellresultat behåller beteendet hoppa över utan värdeLEThar nu fullständig semantik: varje bindning är synlig för senare bindningar och för kroppsuttrycket, inklusive nästladLET-komposition — som ersätter den tidigare partiella implementationen- Formeltext accepterar nu kommatecknet som argumentavgränsare tillsammans med det klassiska semikolonet, i linje med Excel’s kanoniska syntax för inklistrade och importerade formler
- Strukturerade referenser i formler utvärderas nu:
Table[Column],Table[[Column]], kolumnspann och item-formerna[#Data]/[#All]/[#Headers]/[#Totals]löser sig mot arbetsbokens Excel-tabeller vid parsningstillfället, så=SUM(Table1[Amount])beräknas medan den ursprungliga formeltexten fortfarande gör roundtrip ordagrant; olösbara referenser behåller det tidigare beteendet hoppa över utan värde och former för aktuell rad ([@Column]) förblir ej stödda
Ändrat
- När en arbetsbok inaktiverar full precision lagras nu omberäknade resultat avrundade till antalet decimaler som visas av varje cells nummerformat, i linje med Excel’s beteende “precision som visas” för HotXLS-beräknade värden
- Regler för villkorsstyrd formatering som skrivs till XLSX får nu bladunika prioriteringar, vilket eliminerar filer med dubblerade prioriteringar som fick Excel att fråga om reparation
- Villkorsstyrda format som flaggas som PivotTable-omfattade genom den nya egenskapen
IsPivotdirigeras till tilläggsfacket istället för kalkylbladets huvudblock för villkorsstyrd formatering, där Excel skulle tappa eller felplacera dem
Version 2.273.0
Ändrat
TXLSXWorkbook.PreserveRawPartskopierar nu oförändrade kalkylbladsbilder, sidhuvuds- och sidfotsbilder samt diagramdelar med sina ursprungliga komprimerade nyttolaster, medan bilddataändringar och diagrammodelländringar tar serialiseringsvägen- En lyckad fil-SaveAs accepterar nu det genomförda paketet som nästa baslinje för råkopior, vilket gör att efterföljande sparanden kan återanvända nyserialiserad ogenomskinlig data, VBA, anslutningar, externa länkar, bilder, diagram, teman och pivotnyttolaster utan att öppna det tidigare källpaketet på nytt
Rättat
- Okända kalkylblads- och ritningsrelationer från paket med icke-standardiserade dellägen baseras nu om mot sina genererade kanoniska ägare, inklusive enbart-ritningspaket vars enda ankare är bevarade ej stödda former
- En misslyckad kopiering av komprimerad medlem rullar nu tillbaka sitt partiella lokala huvud, nyttolastbyte, poster i överordnad mapp och centralkatalogantalet före säker serialiseringsfallback, vilket förhindrar att oåtkomlig data ackumuleras i utdataarkivet
Version 2.272.0
Ändrat
- XLSX-SaveAs öppnar nu ett validerat källarkiv för hela sparoperationen och kopierar varje oförändrad ogenomskinlig del som nås via relationer med sin ursprungliga komprimerade nyttolast, vilket undviker upprepade centralkatalogsökningar samt dekomprimering och omkomprimering medan ändrade nyttolaster fortfarande tar serialiseringsvägen
Rättat
- Okända arbetsboksrelationer från paket vars arbetsbok använder ett icke-standardiserat delnamn baseras nu om mot den genererade arbetsboksplatsen, vilket förhindrar att deras bevarade måldelar blir oåtkomliga efter SaveAs
- Projicerade direkta läsningar behåller nu definitioner av delade formelmaster utanför den valda rad- eller kolumnuppsättningen, så att valda följarceller fortfarande får sina korrekt översatta formler utan att oanvända värden eller rik text byggs om
- Att redigera ett diagram tar inte längre bort ett omodellerat axelnummerformat bara för att författande av dataetiketters nummerformat använder ett element med samma lokala namn
Version 2.271.0
Rättat
- Den klassiska HTML-exportören skriver nu UTF-8 och deklarerar det med en
<meta charset>plus ett HTML5-doctype; tidigare skrevs strömmen i systemets ANSI-teckensida, vilket korrumperade varje icke-ASCII-cellvärde, och den saknade teckenuppsättningsdeklarationen lämnade sidan åt webbläsarens godtycke
Version 2.270.0
Tillagt
- Diagramdataetiketter kan nu bära ett explicit nummerformat och en placering genom de nya serieegenskaperna
LabelNumFmtochLabelPos(med deras*Set-flaggor), skickade som<c:numFmt>och<c:dLblPos>i både standard- och kombinationsdiagramskrivarna — vilket möjliggör procent- eller valutamärkningstext och etikettplaceringar som outside-end eller center; endera inställningen slår också på etikettblocket för sig, och ej inställda serier förblir byteidentiska
Version 2.269.0
Tillagt
- Linje- och spridningsdiagramserier kan nu bära en explicit markörsymbol och -storlek genom de nya egenskaperna
MarkerSymbol,MarkerSizeochMarkerSet, skickade som seriens<c:marker>-block i både standard- och kombinationsdiagramskrivarna; ej inställda serier behåller automatiska markörer - Värdeaxlar med visningsenheter kan nu visa enhetsetiketten (“Thousands”, “Millions”, …) via den nya axelegenskapen
ShowDispUnitsLabel
Version 2.268.0
Tillagt
- XLSX-diagramtrendlinjer stödjer nu en fast intercept plus framåt- och bakåtprognosperioder genom de nya egenskaperna
Intercept/InterceptSet,ForwardochBackward, skickade som<c:intercept>/<c:forward>/<c:backward>; tidigare erbjöd endast den klassiska BIFF-diagrambyggaren dessa kontroller, och ej inställda trendlinjer förblir byteidentiska
Version 2.267.0
Tillagt
- Formelberäkning utvärderar nu de komplexa talfunktionerna
IMCOS,IMSIN,IMTAN,IMSEC,IMCSC,IMCOT,IMLOG2ochIMLOG10, vilket fullbordarIM*-familjen av ingenjörsfunktioner med trigonometrisk, reciprok och bas-2/bas-10-logaritmtäckning över komplexa strängoperander
Version 2.266.0
Ändrat
- Den strömmande direkta läsaren tillämpar nu kolumnprojektion innan cellvärden ackumuleras: när en projicerad kolumnuppsättning är konfigurerad hoppar celler utanför den över byggandet av värde-, formel- och riktextsträngar som tidigare kördes för varje cell och kasserades vid cellens slut, vilket snabbar upp läsningar av breda blad som projicerar endast några få kolumner
Version 2.265.0
Tillagt
- Stapel- och kolumndiagramplotgrupper exponerar nu ett konfigurerbart grupperingsläge (
clustered,stacked,percentStacked), en klustergapbredd och en serieöverlappning genom de nya egenskapernaBarGrouping,GapWidthochOverlap; tidigare var varje stapel-/kolumndiagram hårdkodat tillclusteredutan kontroll av gap eller överlappning, och ej inställda grupper förblir byteidentiska medan redigera-efter-öppning-sammanslagningslistan behandlar de nya elementen som ägda
Version 2.264.0
Rättat
- PDF-cellramar återspeglar nu kalkylbladets ramstil och -vikt istället för att varje ram ritas som en identisk 0.75 pt solid linje: XLSX-celler renderar vikterna thin, medium, thick, hair och double samt mönstren dashed, dotted, dash-dot, dash-dot-dot och slant-dash-dot, och BIFF-celler renderar stilarna thin, medium och dashed/dotted
Version 2.263.0
Tillagt
- PDF-export kan nu bädda in dokumentmetadata genom de nya egenskaperna
DocumentTitle,DocumentAuthor,DocumentSubjectochDocumentKeywords; när någon är inställd bär PDF:en en/Info-ordlista med dessa fält plus enCreator/Producer-identitet och ettCreationDate, medan standardexporter utan metadata förblir byteidentiska
Version 2.262.0
Rättat
- CSV-export citerar inte längre fält överdrivet: ett internt mellanslag tvingar inte längre fram citattecken, så värden som
John Smithskrivs ociterade, i linje med RFC 4180 och Excel; fält med avgränsaren, ett dubbelt citattecken, en radbrytning eller inledande eller avslutande blanksteg citeras fortfarande som tidigare
Version 2.261.0
Tillagt
- Varje diagramserie kan nu bära en solid fyllnadsfärg genom den nya egenskapen
SolidFillHex, skickad som seriens<c:spPr>-formegenskaper; att tilldela en hexfärg stämplar serien med en varumärkes- eller palettfärg istället för Excel’s automatiska temafärg, medan ej inställda serier förblir byteidentiska och redigera-efter-öppning-sammanslagningslistan behandlarspPrsom ägd så att den ersätter istället för att dupliceras
Version 2.260.0
Ändrat
- Backend för gles celllagring växer nu varje 256-rads blockbuffert geometriskt (fördubbling) istället för att omfördela vid varje tillagd cell, vilket tar bort den kvadratiska kopieringskostnaden vid inläsning av täta kalkylblad
Version 2.259.0
Rättat
- BIFF8-kalkylbladsposterna för objektskydd (
OBJECTPROTECT) och scenarioskydd (SCENARIOPROTECT) läses nu tillbaka till bladets skyddstillstånd, så att låsflaggor överlever en roundtrip istället för att skrivas men gå förlorade vid omläsning - BIFF8-arbetsboksglobala poster
MMS,RefreshAllochUseSelFSbevaras nu genom roundtrip istället för att tyst kasseras
Version 2.258.0
Tillagt
- Formaterad visningstext känner nu igen färgdirektiven
[Cyan]och[Magenta]samt de indexerade palettdirektiven[Color1]till[Color8], så att HTML-stilformaterad utdata tillämpar dessa färger istället för att kassera dem
Version 2.257.0
Tillagt
- Formelberäkning utvärderar nu ingenjörs- och matematikfunktionerna
FACTDOUBLE,SQRTPI,DELTA,GESTEP,SERIESSUMochCONVERT, därCONVERTtäcker enheterna massa, avstånd, tid, tryck, kraft, energi, effekt, magnetism, temperatur och volym och avvisar felaktigt matchade enhetskategorier
Version 2.256.0
Rättat
- Formaterad visningstext renderar nu minuter korrekt i tidsmasker som
hh:mm,mm:ssoch[h]:mm:ss; tidigare användes Delphi’smm(månad), så minutfält visade månadsnumret - Lokal- och valutadirektiv som
[$-409]och[$$-1009]tas nu bort från formaterad utdata istället för att läcka som ett bokstavligt$-409-prefix, medan en valutasymbol som finns i direktivet bevaras
Version 2.255.0
Tillagt
- ZIP-paketinläsning förstår nu ZIP64-arkiv, parsar det extra fältet för utökad information samt ZIP64-posterna end-of-central-directory och locator så att arbetsböcker vars delar eller offset överskrider de klassiska gränserna 4 GB / 65535 poster öppnas korrekt istället för att misslyckas med sanity-checken för end-of-central-directory
Version 2.254.0
Säkerhet
- Lösenordsverifiering för krypterade arbetsböcker jämför nu verifierar-hashen i konstant tid för både Agile och Standard Encryption, vilket stänger en tidsbaserad sidokanal som kunde avslöja hur många inledande byte av lösenordshashen som matchar
- Agile-kryptering faller inte längre tillbaka på en tidsfröad pseudoslumgenerator för salt, verifierare och mellanliggande nycklar när systemets CSPRNG inte är tillgänglig; den misslyckas nu på ett säkert sätt (fails closed) istället för att producera förutsägbart nyckelmaterial
Version 2.253.0
Tillagt
- Formelberäkning utvärderar nu Excel 365:s arrayformningsfunktioner
VSTACK,HSTACK,TOROW,TOCOL,WRAPROWS,WRAPCOLS,TAKE,DROP,CHOOSECOLS,CHOOSEROWS,EXPAND,RANDARRAYochTEXTSPLIT, som spiller ut sina resultat genom den befintliga dynamiska array-mekanismen - Formelberäkning utvärderar nu de moderna textfunktionerna
TEXTBEFOREochTEXTAFTERmed hantering av förekomstnummer, skiftlägesokänslighet, matchning mot slutet och ej hittade värden - Formelberäkning utvärderar nu
RANDBETWEEN,ISEVEN,ISODDochFORECAST.LINEAR-aliaset förFORECAST
Version 2.252.0
Tillagt
- Definierade namn bär en valfri kommentar, som gör roundtrip som BIFF8-posten NAMECMT och OOXML-attributet
commentpådefinedName - Mål för lokala filhyperlänkar normaliseras (konvertering av bakstreck till snedstreck, prefixen
file://ochfile:///, procentkodning av reserverade tecken) så att Excel lagrar dem ordagrant - Fyllningstyper för former, bilder och textrutor (solid, bild, gradient, ingen, automatisk) är nu typade ovanpå den råa fyllningstypsegenskapen och gör trogen roundtrip
- Datastaplar i villkorsstyrd formatering stödjer Excel 2010+ oberoende ramfärger för staplar med negativa värden
- Fält i pivotcachear gör roundtrip av flernivåkoplingen för datum- och talgruppering
- Återanrop för användarfunktioner tar emot en deskriptor för argumenttyp så att hanterare kan skilja på litterala värden, cell- eller intervallreferenser och arraykonstanter
- Formelkompilering accepterar lokaliserade funktionsnamn (tyska, franska, spanska), som skrivs om till kanonisk engelska före lexningen
- Hjälpare för lösenord och kryptering exponerar namngivna konstanter för returkoder
Ändrat
- Sparningar av paket och XLSX flödar nu genom större deflate-buffertar med en högre komprimeringsminnesnivå och hoppar över ett redundant kontrollsummepass över redan komprimerade byte, vilket minskar CPU- och väggklockstid vid sparande
- Intern tillväxt för strängbyggare, listor och hashtabeller använder nu geometrisk (fördubblande) allokering tillsammans med en tidigare punkt för hash-storleksändring, vilket sänker allokeringsomsättning och uppslagningskostnad när en arbetsbok bär många stilar, namn, definierade intervall eller delade strängar
- Uppslagningar i tabellen för delade strängar jämför nu de lagrade byten direkt innan en fullständig sträng materialiseras, vilket minskar allokeringarna vid uppslagning på stora tabeller för delade strängar
Version 2.251.0
Rättat
- XLSX-öppning och -sparande behåller nu främmande namnområdesdeklarationer på arbetsbokens rot, attribut för uppmärkningskompatibilitet, fullständiga nyttolaster för
<extLst>på arbetsboksnivå samt deras okända relationer när det typade arbetsbokstillståndet genereras om; bevarader:id-referenser följer omtilldelningen av relations-ID:n istället för att bli inaktuella när de kolliderar med genererade kalkylblads- eller arbetsboksrelationer
Version 2.250.0
Ändrat
- XLSX-poster för glesa rader lagrar nu endast sin kolumn och sitt stabila cellhandtag, vilket eliminerar oanvända nyttolasttaggar samt redundant klassificering och en andra uppslagning av radindex närhelst ett cellvärde, en formel eller ett riktextobjekt ändras
Version 2.249.0
Tillagt
TXLSRTFImport.LoadFromRTF- ochTXLSWorksheet.OpenRTF-överlagringar kan importera tabeller eller styckeslistor vid en explicit etta-baserad målrad och målkolumn medan de ursprungliga överlagringarna fortsätter att börja vid A1
Ändrat
- XLSX typade radskrivare lägger nu till strikt framåtriktade batchar direkt till förstorade glesa radvektorer, och uppslagning av glesa celler löser träffar i första kolumnen och sista kolumnen utan binärsökning medan överlappningsskrivningar behåller sin befintliga ersättningsväg och sina stabila cellhandtag
Rättat
- Filbaserad XLSX-kopiering av råa delar och selektiv bladinläsning använder nu en privat identitet för källarkivet med validering av storlek och tidsstämpel, så att en senare strömöppning eller en publik
FileName-tilldelning inte kan omdirigera bevarade delar till en annan arbetsbok RefreshPivotCacheväxlar nu uppdaterade cachear till typad serialisering så att återskapade poster inte kan skrivas över av inaktuella råa paketbyte vid sparande- Rå ZIP-kopiering av komprimerade data kräver nu att källströmmen innehåller exakt det deklarerade antalet komprimerade byte, och avvisar både trunkerade och för långa poster före registreringen i centralkatalogen
- Återanvändning av en och samma RTF-importör återställer nu parserstillståndet för teckensidor och teckenformat mellan dokument så att fet, kursiv, understrykning, genomstrykning och teckenstorlek inte kan läcka in i nästa import
MetadataOnly-öppningar av XLSX undviker nu delade strängar, person-, kalkylbladsrelations-, kommentars-, ritnings-, diagram-, tabell-, frågetabell-, pivot- och ogenomskinliga nyttolaster som nås via kalkylblad, samtidigt som arbetsboksegenskaper, namn, bladtillstånd, stilar, tema, anslutningar och externa länkar behålls
Version 2.248.0
Ändrat
- XLSX-SaveAs kopierar nu oförändrade
connections.xml-delar från källpaketet på rå väg när den parsade anslutningsmodellen är oförändrad, vilket bevarar källans XML-trohet och undviker onödig dekomprimering och omkomprimering medan redigerade anslutningar fortfarande skrivs om från den typade modellen
Version 2.247.0
Ändrat
- XLSX-SaveAs kopierar nu oförändrade XML-delar för externa länkar och relationer från källpaketet på rå väg när den parsade modellen är oförändrad, vilket bevarar okänd tilläggs-XML och undviker onödig dekomprimering och omkomprimering medan redigerade länkar fortfarande skrivs om från den typade modellen
Version 2.246.0
Tillagt
TXLSHTMLImport.LoadFromHTML-överlagringar kan importera vid en etta-baserad målrad och målkolumn, välja en nollbaserad toppnivåtabell eller alla tabeller, och parsa tal med en explicit decimalavgränsare utan att ändra globala formatinställningar
Ändrat
- XLSX-stilinläsning löser nu varje cellstil genom en delad oföränderlig cellXf-array istället för upprepad konstruktion av strängnycklar och linjära kartuppslagningar, vilket minskar öppningstiden för arbetsböcker med stilar och temporära allokeringar
Rättat
- Ändrade byte för VBA-projekt kringgår nu kopieringen av bevarade råa delar så att sparande av en redigerad makroaktiverad arbetsbok inte kan återställa den ursprungliga
vbaProject.bin-nyttolasten - Rå kopiering av ZIP-medlemmar avvisar nu komprimeringsmetoder andra än STORE och DEFLATE istället för att generera ett felaktigt komprimeringshuvud, vilket låter anropare använda säker dekomprimering och omskrivningsvägar som fallback
- HTML-import ignorerar nu rad- och celltaggar utanför toppnivåtabeller och bevarar det etablerade beteendet med alla tabeller hos de ursprungliga överlagringarna
Version 2.245.0
Tillagt
- Redigerbara
TXLSWorkbookViewer-celler med inmatning som beaktar skyddade celler, formelinmatning och omberäkning, rektangulärt intervallval, val av formelreferenser samt avgränsad cirkulär historik för ångra och gör om TXLSPivotDesignertillhandahåller en återanvändbar icke-visuell modell för fältlistor med zoner för rad, kolumn, filter och värde, deterministisk förflyttning av fält, val av aggregering, layoutvalidering och tillämpning av resultat- Klassiska XLS-arbetsböcker tillhandahåller nu
CalculateAndVerify-diagnostik med delade poster för avvikelser som innehåller kalkylbladsidentitet, etta-baserade cellkoordinater, cachade och nyligen beräknade värden samt formeltext - Klassiska XLS- och XLSX-kalkylblad tillhandahåller nu typade numeriska, sträng- och variant-skrivare för rader och kolumner med etta-baserade koordinater, klippning mot rutnätets gränser, direkta skrivningar i cellmodellen och ett returnerat skrivningsantal
Ändrat
- XLSX-visarens målning bevarar nu glesa kalkylblad genom att undvika materialisering av tomma celler vid omritning och stilupplösning
TXLSXWorksheet.ReplaceTextbesöker nu lagrade celler direkt i linjär tid utan att kopiera och sortera hela cellkollektionen
Rättat
- Klassiska XLS RC4- och RC4 CryptoAPI-läsningar och -skrivningar bevarar nu varje klartextspostkropp som krävs av
[MS-XLS], hållerBoundSheet8.lbPlyPosokrypterat, förbrukar matchande nyckelströmmspositioner och aktiverar dekryptering innan den första krypterade posten efterFILEPASSläses - SpreadsheetML-serialisering tillämpar nu den symmetriska
_xHHHH_-kodeken endast på Xstring-fält, medan formler och referenssyntax använder vanlig XML-escappning så att tokenformade litteraler behåller sin exakta formelbetydelse
Version 2.244.0
Tillagt
- Import från urklipp i flera format:
XLSPasteFromClipboardRichföredrar XML Spreadsheet-formatet på urklippet (som bär formler, stilar och sammanfogningar) framför vanlig Unicode-text, medXLSClipboardHasXmlSpreadsheet,XLSGetClipboardXmlSpreadsheetochXLSParseXmlSpreadsheetför formatdetektering, extrahering och parsning av SpreadsheetML 2003
Version 2.243.0
Tillagt
- Externa definierade namn:
TXLSXExternalLinkparsar, lagrar och gör nu roundtrip av<definedNames>-poster (namn + refersTo) från externa arbetsbokslänkar, medAddDefinedName,FindDefinedNameoch indexeradDefinedNames[]-åtkomst - Tillstånd för uppdateringsfel per blad: varje
TXLSXExternalSheetDatabär enRefreshError-flagga som registrerar om det senaste uppdateringsförsöket misslyckades, parsad från och utsänd till attributetrefreshError
Version 2.242.0
Tillagt
TXLSXWorkbook.PreserveRawPartskopierar den komprimerade representationen av oförändrade delar (tema, VBA-projekt, pivottabeller och pivotcachear) direkt från källarkivet under SaveAs, vilket undviker dekomprimering och omkomprimering av bevarade ogenomskinliga poster
Version 2.241.0
Tillagt
- Egenskapen
TXLSXWorkbook.SelectedSheetsmöjliggör selektiv inläsning av kalkylblad: Open parsar cell-XML endast för blad som namnges i listan, medan andra blad behåller sina namn och synlighetstillstånd med noll celler. AnropaLoadSheet(Index)för att materialisera ett överhoppat blad på begäran från det ursprungliga arkivet
Version 2.240.0
Tillagt
- Öppningsläget
TXLSXWorkbook.MetadataOnlyparsar arbetsboksegenskaper, definierade namn, bladnamn och synlighetstillstånd, stilar, tema, anslutningar och externa länkar, men hoppar över all cell-XML för kalkylblad och satellitdelar för snabb upptäckt av egenskaper och namn i stora arbetsböcker
Version 2.239.0
Tillagt
- Kompakt cellagring i 256-radsblock med stabila publika handtag, cachevänlig serialisering i radordning och stilkomprimering över alla arbetsbokspooler före varje sparande
- Intervallstilöverlagringar låter formatering av rader, kolumner och rektanglar förbli kompakt utan att materialisera tomma cellobjekt, löses lat vid cellåtkomst, överlever strukturella redigeringar och gör roundtrip som kompakta kolumn-, rad- och enbart stil-celler
Ändrat
- Normalt arbetsbokssparande strömmar nu varje kalkylbladsrad direkt in i paketets deflate-ström, så att toppminnet följer den största enskilda raden snarare än hela kalkylbladets XML
- Delade strängar och extra XML-delar strömmar nu en post i taget genom en enda återanvändbar UTF-8-serialiserare, vilket begränsar toppminnet till den största posten istället för hela delen
Version 2.238.0
Tillagt
TXLSPaginationModelbygger återanvändbara logiska sidor för XLS- och XLSX-intervall, kalkylblad och arbetsböcker med pappersgeometri, marginaler, sidhuvuden, sidfötter, rad- och kolumnband, upprepade titlar, sidordning, rutnätslinjepolicy och placeringar av ritningarTXLSWorkbookViewertillhandahåller nu utskriftsförhandsvisning med delad modell, sidnavigering med tangentbord och mushjul, cachad åtkomst tillPaginationModel, explicitRefreshPaginationoch EMF-utdata för vald sidaTXLSPDFExport.CreatePaginationModelexponerar exakt den ägda sidmodell som används av PDF-räkning och -rendering för alla sex XLS- och XLSX-inmatningstyperna
Ändrat
- PDF-export och sidräkning använder nu en enda pagineringsmotor istället för att underhålla separata XLS- och XLSX-sidloopar
- Anpassa-till-bredd- och anpassa-till-höjd-skalning löses nu mot faktiska sidband, inklusive manuella brytningar och upprepade titlar, inom Excel’s skalintervall från 10 % till 400 %
Version 2.237.0
Tillagt
TXLSFormulaDebuggerskapar en ägd interaktiv session som innehåller det parsade uttrycksträdet, källans spann, operatorer, operandnoder och -värden, mellanresultat, deterministisk utvärderingsordning och navigerbart tillstånd för aktuellt steg- Formeldebuggningssessioner exponerar cell- och intervallberoenden med lösta bladkoordinater, rapporterar valda och överhoppade grenar för
IF,IFERROR,IFNA,CHOOSE,IFSochSWITCH, och bevarar återställda inre fel med sin ursprungsnod
Ändrat
- Arbetsbokens och kalkylbladets
Calculatereturnerar nu Excel-formelfel som standardmässigaVariant-felvärden istället för att konvertera dem tillNull TXLSFormulaTracerregistrerar nu exakta operandstackar före och efter för push- och reduktionssteg
Version 2.236.0
Tillagt
TXLSXWorksheet.StructuralEditRegistrylåter nu applikationsägd kalkylbladsmetadata delta i infogningar eller borttagningar av rader och kolumner genomIXLSXStructuralEditParticipant
Ändrat
- XLSX-strukturella redigeringar slutför nu sitt referenskänsliga arbete i en skyddad transaktion som täcker formler, namn, valideringar, villkorsstyrd formatering, kommentarer, hyperlänkar, ritningar, tabeller, frågor, scenarier, datatabeller, utskriftsinställningar, sparklines, pivotcachear och -vyer samt kalkylbladstillägg
Rättat
- Infogade eller borttagna rader och kolumner uppdaterar nu skyddade intervall, ankare för trådade kommentarer, återöppnad VML för klassiska kommentarer, lokala och tvärbladsreferenser för sparklines, typade pivotkällor och -ankare, beräknade pivotformler samt igenkännbara referenser i bevarad XML för kalkylbladstillägg
Version 2.235.0
Tillagt
TXLSDirectWriterlägger nu till klassiska kommentarer, förankrade kalkylbladsbilder, formelbaserade kolumn-, stapel-, linje-, yt-, cirkel-, munk- och spridningsdiagram samt fullständig anropartillhandahållen ChartML utan att konstruera en fullständig arbetsboksobjektmodell- Bilder kan tillhandahållas som byte, sökbara strömmar med valfri ägarskapsöverföring eller filsökvägar och kan använda PNG-, JPEG-, GIF-, BMP-, EMF- eller WMF-innehåll
Ändrat
- Rika direkt-skrivardelar använder sidkanalsdeskriptorer för aktuellt blad, tilldelar kalkylbladets relationsidentifierare innan bladet stängs och strömmar media och relaterade XML-delar efter kalkylbladets XML för att hålla radminnet oberoende av bladstorleken
Version 2.234.0
Tillagt
TXLSDirectReaderexponerar nu valfria händelser för dimension, bladformat, kolumn, rad, ruta och sammanfogade intervall med typade layoutposter- Kolumn- och radhändelser rapporterar bredder eller höjder, dolt och komprimerat tillstånd, dispositionsnivåer och källans stilindex utan att konstruera cellobjekt för kalkylblad
Ändrat
- Tilldelade layout-återanrop använder ett minnesbegränsat metadatapass före celleverans, vilket säkerställer att sammanfogade intervall och andra layoutfakta anländer före celler som beror på dem, medan vanliga enbart-cellskanningar behåller den ursprungliga enpassningsvägen
- Parallella direkta läsningar håller layout-återanrop på den anropande tråden och avslutar metadata för valda blad innan ordnade arbetarcellköer töms
Version 2.233.0
Tillagt
TXLSXChartTextStyletillhandahåller nu typade teckensnittsnamn, punktstorlekar, RGB-färger, emfas och textrotation för diagramtitel, förklaring, axeltitel och axeletiketterTXLSXChartLayouttillhandahåller nu normaliserad manuell positionering av plottarea, diagramtitel, axeltitel och förklaring med explicita kant- eller faktorslägen samt inre eller yttre plottmål- Diagram exponerar nu typade kontroller för förklaringens synlighet, position, överlagring och textstil samt layout tillsammans med inställningar för överlagring av diagramtitel
Ändrat
- Manuella layouter serialiserar alltid fullständiga x-, y-, bredd- och höjdgrupper med Office-kompatibla standardlägen så att Excel inte kastar bort partiella eller motstridiga koordinater
Rättat
- Redigering av typade diagramteckensnitt eller -layouter bevarar orelaterade tilläggslistor och anpassat namnområdesinnehåll medan rensning av en känd färg- eller emfasegenskap inte längre återställer det importerade värdet under strukturell sammanfogning
Version 2.232.0
Tillagt
TXLSXImageexponerar nu procentbaserade beskärningskanter, transparens, ljusstyrka, kontrast, rotation i grader samt sträck- eller kakelfyllningslägenTXLSXImage.HasPreservedXmlrapporterar om importerad DrawingML finns tillgänglig, medanClearPreservedXmlväljer in en bild i ren regenerering av den typade modellen
Ändrat
- Bildeffektvärden använder kompakt lagring med fixpunkt och skriver inbyggda DrawingML-enheter utan att allokera hjälpobjekt per effekt
Rättat
- Redigering av en stödd egenskap på en importerad bild bevarar nu orelaterade tillägg, val för uppmärkningskompatibilitet, anpassade attribut, formeffekter och namnområdeskvalificerat innehåll
Version 2.231.0
Tillagt
- Importerade XLSX-diagram bevarar nu sin ursprungliga ChartML medan
TXLSXWorkbook.PreserveUnsupportedPartsär aktiverat, och behåller okända namnområden, alternativ för uppmärkningskompatibilitet, tilläggslistor, anpassade stilar och omodellerad formatering TXLSXChart.HasPreservedXmlrapporterar om den ursprungliga ChartML finns tillgänglig, ochClearPreservedXmllåter applikationer välja in ett diagram i ren regenerering av den typade modellen
Ändrat
- Sparande av ett orört importerat diagram spelar upp dess ursprungliga ChartML, medan redigeringar av stödda egenskaper strukturellt överlagrar endast de modellerade diagramnoderna och håller orelaterat innehåll på plats
Rättat
- Redigering av en diagramtitel, serie, axel eller annan stödd egenskap kastar inte längre bort orelaterade Excel-skapade tillägg, alternativt innehåll, stilar eller formatering från diagramdelen
Version 2.230.0
Tillagt
TXLSXChart.AddPlotGroupbygger nu ordnade kombinationsdiagram vars diagramfamiljer och serier behåller oberoende tilldelningar av primäraxel eller sekundäraxel- Diagram exponerar nu primära och sekundära kategori- och värdeaxlar samt en serieaxel, med typade inställningar för kategori-, värde-, datum- och serieaxlar inklusive positioner, identifierare, korsningar, datumenheter, etikettintervall och synlighet
- Kolumn-, stapel-, linje-, cirkel- och ytdiagram har nu dedikerade 3D-diagramtyper med konfigurerbar rotation, höjd, djup, perspektiv, rätvinkliga axlar och gapdjup
- Serier exponerar nu typade sträng- och talscachear för namn, kategorier, värden och bubbelstorlekar, inklusive glesa punktindex och numeriska formatkoder
Ändrat
- Kompatibilitets-API:erna
ChartType,AddSeriesoch plattaSeriesfortsätter att avse den primära plottgruppen medan diagrammodellen behåller varje ordnad plottgrupp
Rättat
- Öppning och återsparande av kombinationsdiagram kollapsar dem inte längre till en enda diagramfamilj eller förlorar sekundära, datum- eller serieaxlar
- Diagramformelreferenser och cachade serievärden överlever nu arbetsbokskopior och öppna/spara-cykler utan att plattas ut eller kastas bort
- Diagramankare matchas nu mot sina diagramdelar med relationsidentifierare, så applikationer som ändrar ordningen på relationsposter byter inte längre diagraminnehåll mellan kalkylbladspositioner
Version 2.229.0
Tillagt
TXLSXWorksheet.HeaderFooterImagesskapar, hittar, ersätter och tar nu bort typade bildplatser för varje vänster, mitten- och höger position för sidhuvud eller sidfot på udda, jämna och första sidor- Sidhuvuds- och sidfotsbilder exponerar sina rådata, format, titel, punktdimensioner och punktmarginaler, med direkt inläsning från PNG-, JPEG-, GIF-, BMP-, EMF- och WMF-filer
Ändrat
- Jämna-sidor- och förstasidors-bilder aktiverar automatiskt matchande sidvarianter och upprätthåller de obligatoriska bildfältskoderna när sidhuvuds- eller sidfotstext redigeras
Rättat
- Kalkylbladskommentarer och sidhuvuds- eller sidfotsbilder behåller nu oberoende VML-relationer när de delar ett kalkylblad
- Excel-skapade bildplatser för sidhuvud och sidfot bevarar nu sina bildbytes, format, titlar, dimensioner, marginaler och relationer genom öppna- och spara-cykler
Version 2.228.0
Tillagt
- Klassiska XLS-kalkylblad och formsamlingar skapar och upptäcker nu typade
TXLSButton- ochTXLSRadioButton-kontroller vid sidan av kryssrutor, kombinationsrutor och listrutor - Formulärkontroller exponerar nu makronamn, länkade celler, indataområden, krysslägen, platt eller 3D-utseende och radiogrupplänkar genom typade egenskaper
- Definierade namn exponerar
IsMacroså att makrobindingar behåller den nödvändiga metadatan för arbetsbokens namn
Rättat
- Att redigera och spara klassiska formulärkontroller igen kastar inte längre bort krysslägen, makrobindingar, formler för länkade celler, källområden eller metadata för radiogrupper som stöds
- Att rensa ett källområde för en kombinationsruta eller listruta tar nu bort den serialiserade indataformeln istället för att återställa det tidigare området vid nästa öppning
Version 2.227.0
Tillagt
LINESTochLOGESTreturnerar nu kompletta multivariabla koefficient-arrayer och valfria fem-radiga statistikmatriserTRENDochGROWTHreturnerar nu formade förutsägelse-arrayer för en- och multivariabla indata
Ändrat
- Arrayaritmetik, jämförelser, konkatenering, unär negering och procentoperationer sänder nu skalärer och ensamma rader eller kolumner samtidigt som per-cell resultat behålls
- Beräkningsberoenden expanderar nu nästlade arbetsboks- och kalkylbladsnamn, formeldefinierade namn och multi-area-referenser med omfångsmedvetet cykelskydd
Rättat
- Ett fel i ett arrayelement kollapsar inte längre det kompletta resultatet och faller inte felaktigt tillbaka på skalär utvärdering
- Formeldefinierade namn vars beroenden kan lösas statiskt tvingar inte längre fram onödig volatil fullständig omberäkning
Version 2.226.0
Tillagt
- Befintliga XLSX-pivotcacher och pivottabellvyer laddas nu in i den typade modellen via paketrelationer, inklusive cacheposter, fält, delade objekt, gruppering, filter, format, beräknade definitioner och tillägg
TXLSPivotTable.Makeutvärderar nu beräknade cachefält, beräknade objekt och beräknade datamedlemmar med beroendemedveten namnbinding- Utökade
ShowDataAs-lägen lägger till föräldraprocent, löpande procent samt stigande eller fallande rang med giltig XLSX-tilläggsmarkering
Ändrat
- Pivotresultatgenerering tillämpar nu objektsynlighet, sidval samt rubrik-, datum-, aggregat- och värdefilter innan grupperade domäner byggs
- Numeriska, datum- och diskreta grupper, etikett- eller datavärde-sortering, konfigurerade delsummor och valfria materialiserade totalrader eller -kolumner deltar nu i resultatgenerering
Rättat
- Pivotfilter använder nu schemagiltig rotnivå-filtermarkering och symboliska filtertyper istället för tvetydiga numeriska värden
- Relationsdriven inläsning antar inte längre konventionella eller sekventiella pivotcache-, cachepost- eller pivottabell-delenamn
Version 2.225.0
Tillagt
TXLSXWorkbook.ConnectionsochTXLSXWorksheet.QueryTableserbjuder nu typat skapande och redigering för metadata för externa databaser, webb, text och frågeresultat- Anslutningsparametrar bevarar sin exakta Boolean-, heltals-, flyttals-, sträng- eller cellreferenstäyp, inklusive explicita noll-, false- och tomma strängvärden
Ändrat
- XLSX-öppning och -sparning löser och skriver nu anslutnings- och frågetabelldelar via sina ägande relationer, synkroniserar resultattabeller och definierade namn och bevarar okända attribut, barnnoder och tilläggslistor
- Rad- och kolumnredigeringar håller frågeresultatintervall justerade, medan kopiering av kalkylblad i samma arbetsbok och mellan arbetsböcker bevarar frågeägarskap och mappar om anslutningsidentifierare och motstridiga namn
Rättat
- Frågetabeller kan samexistera med standardtabeller, trådade kommentarer och pivottabeller utan kollisioner av Relationsidentifierare för kalkylblad eller arbetsbok
Version 2.224.0
Tillagt
- Klassiska XLS- och moderna XLSX-kalkylblad exponerar nu
AddDataTableochDataTablesför What-If-datatabeller med en variabel för rad, en variabel för kolumn och två variabler
Ändrat
- Omräkning av arbetsboken utvärderar varje datatabellresultat med en isolerad inmatningskontext, inklusive indirekta formelberoenden, och bevarar definitioner plus cachade resultat genom öppna, spara, kalkylbladskopior och strukturella rad- eller kolumnredigeringar
Rättat
- Borttagna What-If-inmatningsceller producerar nu
#REF!-resultat, och klassisk arbetsboksomräkning besöker varje kalkylblad istället för att utelämna det första bladet - Att infoga rader längst upp i ett klassiskt kalkylblad riskerar inte längre ett åtkomstfel på Win64
Version 2.223.0
Ändrat
- Avbrytning av parallell direktläsare sprids nu genom aktiva ZIP-medlemsläsningar och varje dekomprimeringssteg istället för att vänta på nästa XML-drag
Rättat
- Att avbryta en parallell kalkylbladsskanning väntar inte längre på att en stor komprimerad XML-läsning ska slutföras innan blockerade arbetare frigörs
Version 2.222.0
Tillagt
TXLSDirectReader.ParallelBufferMemoryLimitbegränsar aggregerad raw-cell-kö-last för parallell kalkylbladsskanning, medanParallelPeakBufferedBytesexponerar den uppmätta toppen för diagnostik och kapacitetstester
Ändrat
- Parallella direkta läsningar strömmar nu ZIP-poster för kalkylblad till arbetslokala XML-läsare och begränsade producent-konsument-köer istället för att behålla fullständigt uppackat kalkylblads-XML och fullständiga cellbuffertar per blad
- Aktiva kalkylblad erhåller oberoende köbudgetar och bearbetas i fönster i arbetarstorlek, vilket bevarar återanropsordning utan att tillåta senare kalkylblad att svälta ut det kalkylblad som för närvarande sänds
Rättat
- Cellavbrott, återanropsfel och arbetsfel väcker nu blockerade producenter och konsumenter, stoppar XML-drag samarbetsvilligt, sammanfogar alla arbetare och lämnar direktläsaren återanvändbar
Version 2.221.0
Ändrat
- Att öppna XLSX med flera blad strömmar nu varje ZIP-post för kalkylblad direkt till dess arbetslokala inflaterare och XML-läsare istället för att behålla uppackat kalkylblads-XML före tolkning
- Samtidiga kalkylbladsläsare serialiserar endast korta positionerade läsningar från paketkällan, så dekomprimering och XML-tolkning förblir parallella medan övergående kalkylbladsinmatningsminne begränsas av antalet aktiva arbetare
Version 2.220.0
Tillagt
- Resultatgenerering för pivottabell kör nu alla nio klassiska
ShowDataAs-lägen, inklusive differens, procent av ett baselement, procentuell differens, löpande summa, procent av rad, procent av kolumn, procent av total och indexberäkningar xlPivotBaseItemPreviousochxlPivotBaseItemNexttillhandahåller typade väljare för intilliggande baselement i jämförelseberäkningar
Ändrat
- Pivotprocent och indexvärden använder rad-, kolumn- och totalsummor som aggregeras direkt från källposterna, och bevarar korrekt semantik för Average, Product, Count, varians och standardavvikelse utan att skanna om källan
- Löpande summor följer pivotobjektets ordning, återställs oberoende för varje peer-grupp och behåller gles resultatlagring för pivottabeller med hög kardinalitet
Rättat
- BIFF8-
SXDI-poster använder nu den standardiserade fasta 14-byteslayouten och bevararShowDataAs, basfält, baselement, nummerformat och visningsnamn via typade läsningar, medan äldre HotXLS-poster förblir läsbara - XLSX-datafält skriver nu pivotfältindex, mappar föregående och nästa väljare till de obligatoriska OOXML-värdena och avger basattribut endast för de lägen som använder dem
- Saknade jämförelseceller förblir tomma, medan existerande nollnämnare returnerar
#DIV/0!istället för att förväxlas med saknade data
Version 2.219.0
Rättat
VDBtillämpar nu variabel avskrivning med degressiv avskrivning över fraktionerade perioder, byter till linjär avskrivning när det är fördelaktigt och respekterarno_switch- Nollfaktorer, restvärdesgränser, fraktionerade startperioder och ogiltiga periodintervall följer nu Excel-kompatibla resultat istället för att avrunda perioder och returnera en förenklad approximation av degressiv avskrivning
Version 2.218.0
Tillagt
TXLSXWorksheet.Scenariostillhandahåller nu typad redigering av What-If Scenario Manager med namngivna scenarier, aktiva och visade index, cellintervall som ändras, användar- och kommentarmetadata, låsta och dolda tillstånd samt ägda indatacellsvärden- Scenariedefinitioner följer nu kalkylbladskopior och strukturella rad- eller kolumnredigeringar, medan Excel-kompatibilitetsgränser valideras innan ogiltiga metadata kan skrivas
Rättat
- Öppna och spara Excel-skapade scenarier bevarar nu rotattribut och nästlade indataceller istället för att platta ut hierarkin till förlustbringande rå XML
- Scenario-, AutoFilter-, datakonsoliderings-, sammanslagningscell- och fonetiska kalkylbladselement använder nu schemaordningen så att strikta kalkylbladskonsumenter inte kräver en reparationssweep
Version 2.217.0
Tillagt
TXLSXWorksheet.IgnoredErrorserbjuder nu typad redigering för varje standardkategori av ignorerade fel med flervalsreferenser, stöd för kopiering av kalkylblad, uppdateringar vid strukturella redigeringar samt öppna/spara-rundturerTXLSXWorkbookexponerar nu referensläge, omberäkna vid sparning, full precision, samtidig beräkning och manuella samtidighetsinställningar vid sidan av sina befintliga beräkningsalternativ
Rättat
- Varje beräkningsinställning för arbetsboken som inte är standard producerar och rundturar nu oberoende ett schemaordnat
calcPr-element, inklusive iterationsgränser som konfigurerats innan iteration aktiveras - Beräkningslägen, referenslägen, iterationsgränser, beräkningsidentifierare och manuella samtidighetsräknare avvisar eller normaliserar nu ogiltiga värden i stället för att skriva ett tvetydigt arbetsbokstillstånd
Version 2.216.0
Ändrat
XMATCHochXLOOKUPutför nu logaritmiska stigande eller fallande binära sökningar vid begäran, inklusive Excel-kompatibla gränser för dubbletter och ungefärliga träffarXIRRrespekterar nu sin gissning med en skyddad lösare som kan hitta både höga och gissningskänsliga rötter, medanXNPVanvänder kompenserad summering och validerade indata för datum och ränta- Uppslag för XLSX-definierade namn med hög kardinalitet använder nu ett lat omfångsmedvetet hashindex samtidigt som serialiseringsordningen, företräde för lokala namn och beteendet vid först match bevaras
- Bevarade XLSX-paketdelar allokerar nu sin deklarerade okomprimerade storlek en enda gång, samtidigt som fullständig längd- och CRC-verifiering behålls
Rättat
- Ogiltiga uppslagslägen, binära sökningar med jokertecken, tvådimensionella uppslagsintervall och matchande
XLOOKUP-resultatvektorer rapporterar nu formelfel i stället för att ge tvetydiga resultat XIRRochXNPVavvisar nu ogiltiga kassaflödestecken, räntor, gissningar och datum, trunkerar decimala datumserier och rapporterar utebliven konvergens i stället för att returnera overifierade mittpunkter
Version 2.215.0
Tillagt
FREQUENCYreturnerar nu en vertikal matris med ett resultat per intervall samt ett överflödsuppsamlingskärl
Ändrat
SORTanvänder nu en stabil och skalbar ordning för rader eller kolumner och bevarar källordningen för lika nycklarUNIQUEanvänder nu stabil hashindexerad matchning för rader eller kolumner, inklusiveexactly_once-resultat och skiftlägesokänslig textPERCENTRANK.INC,PERCENTRANK.EXCochMODE.MULTskalar nu effektivt på indata med hög kardinalitet i stället för att förlita sig på kvadratiska genomsökningar
Rättat
- Alternativet
by_colförSORTochUNIQUEverkar nu på kolumner i stället för att falla tillbaka på radbeteende
Version 2.214.0
Tillagt
- XLSX-öppning accepterar nu strömmande UTF-16 little-endian och big-endian XML-delar med byte-ordningsmarkör eller den obligatoriska endian-specifika deklarationen, inklusive tecken utanför det flerspråkiga grundplanet
Ändrat
- Uppdateringar av pivottabellcacher med hög kardinalitet använder nu deterministiska hashindex för delade värden och allokerar postmatrisen en enda gång, vilket bevarar först sedd objektordning och undviker upprepade linjära sökningar samt radvis tillväxt
- Projicerade direktläsningar kastar celler utanför de valda raderna och kolumnerna innan råa värden, formler och rich text kopieras till per-blad-buffertar
Rättat
- Felaktig XML med dubbla byte-ordningsmarkörer, stöds ej eller motsägelsefulla kodningsdeklarationer, UTF-32-signaturer, udda UTF-16-bytelängder eller ogiltiga surrogatpar avvisas nu
- Parallella direktläsar-arbetstrådar initierar nu allt jobbtiltstånd innan start, slutar ta nya bladjobb efter ett fel, kastar om jobbfelet med lägst index deterministiskt och städar upp varje skapad arbetare om poolbyggandet misslyckas
Version 2.213.0
Tillagt
T.TESTutvärderar nu oberoende urval med antingen sammanslagen lika varians eller Welchs olikvärdiga varians utöver parade urval, inklusive ensidiga och tvåsidiga sannolikheter
Ändrat
- XLSX-öppning följer nu mål för arbetsboks-, kalkylblads- och ritrelationsrelationer för kalkylblad, delade strängar, stilar, teman, makron, externa länkar, kommentarer, trådade kommentarer, VML, ritningar, bilder, diagram, tabeller och pivottabeller, inklusive giltiga paket som använder omdöpta eller icke sammanhängande delsökvägar
Rättat
- Felaktiga paket med dubbla relationsidentifierare tillåter inte längre att en senare relation som saknar stöd ersätter det första användbara målet under återställning av kompatibilitet
Version 2.212.0
Ändrat
- Formelberoendespårning skalar nu bättre på stora kalkylblad genom att indexera cell- och intervallberoenden före ombyggnader och ogiltigförklaring av smutsiga celler
- Stora statistiska och regressionsformler utvärderar nu varje numeriskt värde i de angivna intervallen i stället för att stanna vid den tidigare fast storleksbufferten
Rättat
- XLSX-celler utanför kalkylbladets rutnät avvisas konsekvent så att ogiltiga koordinater inte längre kan aliasera giltiga celler
- Redigering av formler återställer inte längre arbetsbokens beräkningsläge, iterationsgränser, fullberäkningsflaggor eller andra beräkningsinställningar
- Blob-listläsningar validerar nu uttryckligen begärda intervall och tillåter giltiga tomma sektorer i slutet av strömmen
Säkerhet
- Klassisk XLS-kryptering omfattar nu pivotcacheströmmar tillsammans med kalkylbladsdata
- Felaktiga SST-tilläggsstjärtar och centrala ZIP-katalogposter avvisas innan överdimensionerad allokering, trunkerade läsningar eller kommentar-inbäddade falska katalogposter kan påverka inläsningen
Version 2.211.0
Tillagt
TXLSPivotTable.Makematerialiserar nu varje konfigurerat datafält med sin egen aggregering och expanderar värdena på rader eller kolumner enligtDataFieldAxisIsRow
Ändrat
- Pivotresultatgenerering återanvänder hashindexerade nyckeldomäner för rader och kolumner över alla datafält, väljer tät eller gles ackumulatorlagring utifrån resultatformen, bevarar cacheobjektordning bortom nio nycklar och avger läsbara kombinerade etiketter för axlar med flera fält
Rättat
Countinkluderar nu icke-tom text, booleska värden, fel, datum och numeriska cachevärden medanCountNumsendast inkluderar numeriska värden och datum,Productreturnerar noll för skärningspunkter utan numeriska värden, tomma celler räknas inte längre som poster och värdebaserade pivoter kan materialisera sina totalbelopp utan rad- eller kolumnfält
Version 2.210.0
Tillagt
TXLSWorkbookViewerrenderar nu XLSX-villkorsfyllningar, teckensnittsfärg och betoning, talformat, riktade positiva och negativa datastaplar, övertoningar, ramar, axlar, dolda värden och alla inbyggda ikonuppsättningsfamiljerTXLSWorkbookViewer.RefreshConditionalFormatsbygger om förberedd aggregerad och tröskeltillstånd efter att anroparen har ändrat en ansluten XLSX-arbetsbok på plats
Ändrat
- Visaren cachar en förberedd villkorsformatutvärderare per aktivt kalkylblad, återanvänder den vid rullning, markering och omritning och frigör den när arbetsboken eller kalkylbladet ändras
Rättat
- Datastapelaxlar vid den högra kanten klipps nu inuti den ägande cellen i stället för att ritas ut i den intilliggande cellen
Version 2.209.0
Tillagt
- XLSX-kalkylblad exponerar nu en förberedd villkorsformatutvärderare som löser regelprioritet,
StopIfTrue, relativa formler, differentiella stilar, Topp/Botten-rankning, över/under-medeltester, dubblett- och unika värden, relativa datumperioder, två- och trefärgade skalor, datastaplar och ikonuppsättningar för vilken cell som helst
Ändrat
- HTML- och PDF-export renderar nu matchande villkorsfyllningar, teckensnittsbetingning och färg, talformat, färgskalor, riktade positiva och negativa datastaplar, uttryckliga axlar, ikonfamiljeglyfer, dolda värden och temafärger med nyansupplösning
- Stora villkorsformatdomäner återanvänder nu kompilerade relativa formler utan per-cell-syntaxträdallokering, strömmar medelvärde, avvikelse, minimum och maximum-statistik, behåller endast ordnade värden för rangordnings- eller percentilregler, batch-sorterar Unicode-dubblettnycklar och använder radbandskandidatindex för att undvika att genomsöka orelaterade regler
Rättat
- Klassiska villkorsregler läser nu in uttryckstyper korrekt och utvärderar omvända mellan gränser, skiftlägesokänsliga textpredikat, tomma celler och fel-predikat konsekvent
Version 2.208.0
Ändrat
- Den packade cellagringsmotorn skriver nu inhemska taggade sträng-, booleska-, fel- och tomma nyttolaster, itererar celler i rad-major-ordning och kör längdkodar konsekutiva liktydade celler för lägre minnesanvändning och snabbare sekventiell utmatning
- Klassiska arbetsbokens delade strängar behåller nu teckenbyte i en enda allokering och skapar avkodade strängvärden lat, vilket minskar allokeringsomkostnaden för stora unika strängtabeller
Tillagt
- Pivottabeller kan nu beräkna en komplett resultatmatris från cacheposter med rad- och kolumnnyckelgruppering och alla 11 stödda aggregeringsfunktioner
- Klassiska arbetsboksdiagram exponerar nu typade serier, axel-, förklings- och diagramgruppinformation för konverterings- och inspektionsarbetsflöden
Version 2.207.0
Tillagt
TXLSPivotCache.RefreshFromSourcebygger en pivotcache från ett källkalkylbladsintervall: den läser rubrikraden för att namnge fälten, destillerar varje datarads distinkta värden till per-fält domän för delade objekt, låser fälttypen från det första icke-tomma värdet och registrerar index för delat objekt för varje (post, fält) — så att en pivottabell kan skapas programmatiskt från ett dataintervall i stället för att förlita sig på Excel’srefreshOnLoad. En återanropbaserad värdeläsare håller pivotenheten fri från ett direkt kalkylbladsberoende
Version 2.206.0
Tillagt
- Nya
TlxCellMMU(enhetenlxCellMMU) implementerar en packad, rad-major cellagringsmotor med kör-längdkodning av liktydade och tomma cellblock, samt en taggad-byta-typkod som även fungerar som dataviddsväljare — så att en kolumn med små heltal kostar en byte per cell i stället för åtta. Motorn kodar tal i den minsta vidden som bevarar värdet (int8 / int16 / int32 / 2-decimal / 4-decimal skalade heltal / IEEE double), lagrar strängindex, booleska, fel- och tomma celler kompakt och exponerar ettGetValue/SetNumber/SetString-API plus en framåtiterator. Detta är nästa generations backend bakom en funktionsflagga för det befintligaTXLSXCells-API:et, med sikte på en 10–25× minskning av arbetsminnet på täta blad
Version 2.205.0
Tillagt
TXLSCustomChart.GetChartInfoavkodar nu en semantisk sammanfattning från råströmmen av BIFF-diagramposter — diagramtypsfamilj (stapel, linje, cirkel, yta, punkter, radar, munk, yta, bubbeldiagram), antal serier och om en förklaring finns — så att en BIFF-diagrams typ kan frågas programmatiskt och att en BIGH-till-XLSX-diagramkonvertering kan välja rätt målfamilj. Den byte-genomströmmande lagringen som garanterar rundtur-fidelitet är oförändrad
Version 2.204.0
Ändrat
- Den klassiska
.xls-tabellen för delade strängar skriver nu ASCII-endast-strängar i den komprimerade Latin-1-kodningen ([MS-XLS] §2.5.294fHighByte=0, en byte per tecken) i stället för att alltid använda UTF-16, vilket ungefär halverar SST-storleken — och därmed.xls-filen — för ASCII-tunga arbetsböcker
Version 2.203.0
Tillagt
- Nya
TlxCompoundFileläser och skriver Compound File Binary-behållarformatet (OLE2) direkt i ren Pascal, utan någotole32.dll/ COMIStorage-beroende — vilket öppnar dörren för minnesintern och plattformsoberoende.xls-hantering. Läsaren täcker v3-layouten som HotXLS möter i praktiken (huvud + DIFAT i huvudet + FAT-kedjevandring + MiniFAT och mini-strömmen för strömmar under 4096 byte + katalogträdet); skrivaren avger en minimal men giltig v3-behållare som räcker för HotXLS utmatning
Version 2.202.0
Tillagt
- Sorteringstillståndet för autofiltrering har nu en typad modell (
TXLSXSortStatemedTXLSXSortCondition-barn) som täcker sortering efter värde / cellfärg / teckensnittsfärg / ikon, sorteringsmetod (none / stroke / pinYin), skiftlägeskänslighet, kolumnsortering och per-villkor anpassade listor — så att program kan bygga sorteringstillstånd programmatiskt i stället för att redigera rå XML, medan det äldre ogenomskinligaSortStateXml-genomflödet fortfarande vinner för filer som HotXLS inte har skapat - Dynamiska filter läses och skrivs nu som en typad
TXLSXDynamicFilterType(över/under medelvärde och standardavvikelse, idag/igår/imorgon, denna/förra/nästa vecka, månad, kvartal och år, år-till-datum, Q1–Q4, M1–M12) med valfriaval/maxVal-gränser — att öppna en arbetsbok som använder ett dynamiskt filter släpper det inte längre vid sparande
Version 2.201.0
Tillagt
- Yt- och 3D-ytdiagram (
xlsxChartSurface/xlsxChartSurface3D) är nu förstaklass diagramtyper — skrivs, läses och rundtur-bevaras som de andra diagramfamiljerna - API:et för att skapa autoshapes täcker en praktisk delmängd av OOXML:s lista över förinställd geometri — trianglar, diamanter, parallellogram, hexagoner, oktagoner, pilar, chevroner, bildtexter, flödesschemanoder, stjärnor, hjärtan, sol, måne, hakparenteser och klamrar — var och en mappad till rätt
prst-token och[MS-ODRAW]-shape-id, så att skapade shapes renderas korrekt i Excel (den fullständiga listan med 187 förinställningar bevarades redan vid rundtur genom rå-ankarpass-through)
Version 2.200.0
Rättat
- Att öppna en arbetsbok vars autofilter använder ett färgfilter eller ett ikonfilter släpper inte längre det filtret vid sparande —
colorFilterochiconFilterläses nu in i typade kolumner (TXLSXAutoFilterColumn.SetColorFilter/SetIconFilter) och avges ordagrant i stället för att förloras som okända filterkolumn-barn
Version 2.199.0
Tillagt
TCondFormatRule.Evaluatesvarar på huruvida en regel för villkorsformatering avfyrar för en given cell, vilket täcker cellvärdesjämförelser, formeluttryck, text innehåller/börjar/slutar, tomma celler och felregler — grunden för att fråga vilka celler en regel för närvarande markerar och för att rendera villkorsformateringsresultat utanför Excel
Ändrat
FACToch de interna faktorialhjälparna använder nu en förberäknad 0!..170!-tabell i stället för att beräkna om en O(n)-produkt vid varje anrop, vilket snabbar uppFACT, multinomialkoefficienter och Poisson/Binomial/chi-i-två-fördelningsvägarna
Version 2.198.0
Ändrat
- Att spara ett kalkylblad grupperar nu celler i rader med ett enda räkna-sedan-fylla-pass i stället för att växa varje rads index med en omallokering per cell, vilket tar bort en dold O(celler × celler-per-rad)-kopiering på stora blad
- Formelns beroendegraf indexerar nu sina referensintervall efter (blad, rad) så att sådd av en smutsig cell binärsöker kandidatbandet i stället för att genomsöka varje formel på varje ändrad cell — ju större arbetsboken är och ju fler blad den har, desto större blir hastighetsökningen vid omberäkning
- Rad-major, kolumnsorterad cellgenomgång exponeras nu som
TXLSXWorksheet.BuildRowMajorCellOrderså att spara, urklipp, autofilter och andra radordnade konsumenter delar en genomgång i stället för att härleda den på nytt
Version 2.197.0
Rättat
- Radar-, aktie- och cirkel-av-cirkel-/stapel-av-cirkeldiagram försvinner inte längre när en
.xlsx-arbetsbok som innehåller dem öppnas och sparas på nytt — diagramläsaren känner nu igen containerelementenc:radarChart,c:stockChartochc:ofPieChartsom den redan skriver, vilket återställer symmetrisk läs-/skrivtäckning SUBTOTALmed funktionskoder 101–111 exkluderar nu värden på dolda rader, ochAGGREGATErespekterar nu sina alternativkoder för att ignorera dolda rader (2, 3, 6, 7), vilket matchar Excel i stället för att behandla varianterna inkludera-dolda och ignorera-dolda identiskt- Att anropa en inbyggd funktion med fast aritet med fler argument än deklarerat (till exempel
=SIN(1,2)) ger nu#VALUE!centralt i stället för att accepteras av dispatchern
Version 2.196.0
Rättat
- Infogning eller borttagning av rader och kolumner partitionerar nu cellvärdes- och uttrycksvillkorsformat samt datavalideringar när redigerade målområden kräver olika relativa formelankare, samtidigt som regelinställningar bevaras, unika villkorsformatprioriteringar tilldelas och aggregerade villkorsformatdomäner hålls intakta
Version 2.195.2
Ändrat
- PDF-export delmängder nu det inbäddade TrueType-teckensnittet via Windows
fontsub.dllCreateFontPackage-API, vilket endast behåller de glyfer som dokumentet faktiskt renderade i stället för att bädda in hela.ttf— vanligtvis krymper PDF:en 8–20× för Unicode-tunga blad; faller tillbaka på full inbäddning när delmängdsning inte är tillgänglig
Version 2.195.1
Rättat
- Infogning eller borttagning av rader och kolumner på den klassiska
.xls-motorn skriver nu om varje påverkad formelreferens (cellformler och definierade namn) så att de matchar Excel-semantik — referenser under en infogning skiftar, referenser helt inuti en borttagning blir#REF!och delvis överlappande områden krymper — i stället för att lämna kvar inaktuella koordinater
Version 2.195.0
Ändrat
- Borttagning av tabellkolumner konverterar nu varje påverkad strukturerad-referens-token till
#REF!över kalkylbladsformler, tabellformler, definierade namn och diagramserier samtidigt som orelaterade referenser och strängliteraler bevaras
Rättat
- Att ta bort en hel tabell lämnar inte längre kvalificerade strukturerade referenser som pekar på en tabell som inte längre finns
- Klonade datavalideringar behåller nu sitt IME-inmatningsläge
Version 2.194.0
Ändrat
- Rad- och kolumnredigeringar håller nu Excel-tabellens kolumnidentifierare, namn, beräknade formler, totalformler, filterkolumner, filterintervall och sorteringsvillkor i linje med den redigerade tabellen
Rättat
- Villkorsformat- och datavalideringsformler baserar nu om relativa och blandade referenser när borttagning tar bort deras första målområde
- Kalkylblads- och tabellsorteringstillstånd skriver nu giltiga attribut och kastar villkor vars intervall raderades
Version 2.193.0
Ändrat
- Rad- och kolumnredigeringar uppdaterar nu komplexa och korsomfattande formler för definierade namn, bubbeldiagramdataintervall och formelbaserade visuella villkorsformattrösklar
- Bubbel- och punktdiagram återställer nu sina X-axel-, Y-axel- och bubb storleks serieintervall när de öppnas på nytt
Rättat
- Multiområdes mål för villkorsformat och datavalidering skiftar nu varje överlevande område oberoende i stället för att lämna den kompletta mållistan oförändrad
- Textrutor och WordArt-ankare flyttas eller ändras storlek nu vid infogade och raderade rader och kolumner
Version 2.192.0
Tillagt
- Strömmande direktläsningar och radmarkörsgenomgång kan nu välja strukturerade rich strings med fullständig kör-formatering, fonetiska körningar och fonetiska egenskaper samtidigt som begränsad lagring av delade strängar behålls
TXLSDirectWriter.WriteRichStringskriver formaterad och fonetisk text som inline- eller deduplicerade delade strängar
Ändrat
- Deduplicering av delade rich-strängar skiljer nu på kör-formatering och fonetiska metadata samtidigt som vanlig sträng-interning behålls på sin befintliga snabba sökväg
Rättat
- Fonetisk text i inline-strängar inkluderas inte längre i det visade cellvärdet
Version 2.191.0
Tillagt
TXLSXRange.SetDynamicArrayFormulaskapar nu inhemska dynamiska-matris-formler med den kompletta Excel XLDAPR-metadatakedjan
Ändrat
- Dynamiska-matris-rötter delar nu en deduplicerad post för arbetsboksmetadata och kopia av kalkylblad eller intervall mellan arbetsböcker mappar om den posten till målarbetsboken
- Stödd dynamisk-matris-metadata förblir tillgänglig när bevarande av ostödda paketdelar är inaktiverat, medan orelaterad värdemetadata fortfarande avlägsnas
Rättat
- Spill-cell för dynamiska matriser modelleras inte längre som äldre CSE-följare, och att ersätta eller rensa roten lämnar inte längre inaktuella metadataindex
- Att ta bort den sista dynamiska-matris-roten tar nu bort den oanvända metadatadelen, arbetsboksrelationen och innehållstypsposten
Version 2.190.0
Ändrat
- Strömmande direktläsningar och radmarkörsgenomgång expanderar nu delade formelföljare till fullständiga cellrelativa formler samtidigt som projektions- och begränsat-minne-beteendet behålls
Rättat
- Dynamiska-matris-arbetsböcker bevarar nu cell- och värdemetadataindex, attribut för omberäkning av formler, metadatapaketrelationer och oförändrade framtida-funktionsprefix under öppnings- och sparcykel
- Att inaktivera bevarande av ostödda delar lämnar inte längre kvarhängande kalkylbladsmetadataindex efter att metadatadelen har tagits bort
Version 2.189.0
Tillagt
- Att öppna XLSX-arbetsböcker expanderar nu delade formelföljare till fullständiga per-cell-formler med korrekta relativa, absoluta, blandade, intervall- och blad-kvalificerade referenser
Rättat
- Självstängande delade formelföljare fångar inte längre upp senare värde- eller formel-XML, och deras cache-resultat överlever öppnings- och sparcyklar
- CSE-matrisformler behåller nu sitt ankar- och följare-förhållande genom rad- eller kolumnstrukturredigeringar, intervallkopior för hela områden, kalkylbladsduplicering och korsarbetsboks-bladkopior
- Att tilldela en vanlig formel eller rensa en cell tar nu bort inaktuellt CSE-matrismedlemskap så att beräkning inte kan omdirigeras till ett gammalt matrisankare
- Att kopiera endast en del av en CSE-matris skapar inte längre kvarhängande följare-referenser i målet
- Intervallkopior ögonblicksbildar nu överlappande källor och skiftar relativa formelreferenser, vilket förhindrar att källceller eller matrisankare skrivs över innan de kopieras
- Rad- eller kolumnredigeringar som skär endast en del av en CSE-matris avvisas i stället för att tyst ändra storlek på eller lösgöra matrisen
Version 2.188.0
Tillagt
TXLSDirectReader.SharedStringMemoryLimitbegränsar avkodat minne för delade strängar och migrerar automatiskt större tabeller till index temporärlagring som raderas vid stängning med en fast storleksvärdecacheTXLSRowCursor.SharedStringMemoryLimitexponerar samma begränsade lagring av delade strängar för framåt-radiell radgenomgång
Ändrat
- Direkt tolkning av delade strängar bevarar nu värden som endast är blanksteg, CDATA, XML-entiteter, tecken utanför BMP, tomma objekt och rich-text-körordning samtidigt som fonetisk vägledningstext utesluts från det visade värdet
Rättat
- Att öppna XLSX-arbetsböcker behåller nu varje objekt i delade strängar i dokumentordning, vilket förhindrar att duplicerad text eller olika formaterade rich-strängar kollapsar senare cellindex
- Att spara XLSX-arbetsböcker deduplicerar nu rich-strängar efter körgränser och formateringsegenskaper i stället för enbart synlig text, vilket bevarar distinkt formatering för celler med samma visade värde
Version 2.187.0
Tillagt
TXLSDirectReader.FirstRowochLastRowbegränsar strömmande läsningar till ett 1-baserat radintervall och stoppar kalkylbladstolkning efter det begärda intervalletTXLSDirectReader.IncludeColumnochClearColumnProjectionger konstant-tids kolumnprojektion som hoppar över omarkerade celler innan värdeavkodning och återanropsutskick
Version 2.186.0
Tillagt
TXLSDirectWriter.UseSharedStringskan deduplicera upprepad text till en OOXML-del för delade strängar med korrekta total- och unika antal, vilket minskar paketstorleken för repetitions-tunga dataTSimpleDomReaderger ett kompakt single-pass XML-träd för slumpmässig åtkomst-frågor av arbetsboksmetadata och paketdelar, med skiftlägeskänslig QName- och lokalt-namn-uppslagning
Ändrat
- Direkt XLSX-läsning använder nu hash-assisterad exakt elementutskick, single-pass attributskörd och konstant-tids uppslagning av aktuell-rad-kolumn samtidigt som strömmande minnesbeteende bevaras
- Generering av XML för delade strängar använder nu en buffert med linjär tillväxt för att undvika upprepade kopior av hela strängen på stora tabeller med distinkta strängar
Rättat
- CSV-formulexport lägger inte längre till ett andra likhetstecken när formeltext redan inkluderar ett
- XLSX-PDF-export trunkerar inte längre celltext med hjälp av en teckenantalsskattning före layout
- XML-läsarens namnhashar spårar nu bearbetningsinstruktioner, attribut och flyttar tillbaka till sina ägande element utan att exponera inaktuellt elementtillstånd
Version 2.185.1
Rättat
- Infogning eller borttagning av rader och kolumner justerar nu lokala och korsark-referenser exakt en enda gång samtidigt som funktionsnamn och textliteraler bevaras
Version 2.185.0
Tillagt
TXLSPDFExporttillhandahåller nu ett 1-baseratFirstPage- ochLastPage-val för utmatning, ett komplett logisktPageCountoch sexCalculatePageCount-överlagringar för klassiska och XLSX-intervall, kalkylblad och arbetsböcker utan att konstruera PDF-sidobjektTXLSXWorkbook.SaveWorkbookAsHTMLpublicerar synliga kalkylblad i ett navigerbart HTML-dokument med stabla per-blad-ankare, escaperade titlar och bladnamn och ett alternativ för att inkludera dolda eller mycket dolda bladTDataToXLS.BeforeRecordkan hoppa över poster före radutmatning ochBeforeValuekan omvandla eller undertrycka fältvärden med kontext för datauppsättning, detaljnivå, källfält och exportkolumnTXLSWorkbookViewerexponerar kommentarer och hyperlänkar för markerade celler, höjer ett programstyrt hyperlänkhändelse, målar kommentarsindikatorer och XLSX-teckensnitt, fyllningar och justering och normaliserar markering och rendering över sammanslagna intervall
Ändrat
- Exemplet ConversionWorkbench kan nu producera PDF-utmatning och publicerar alla synliga XLSX-kalkylblad för HTML-mål, medan exemplet WorkbookViewer demonstrerar sammanslagen-cell-navigation, kommentarer och hyperlänksaktivering
Version 2.184.0
Tillagt
- Klassiska XLS- och XLSX-intervall kan kopiera Unicode-tabelltext och stylad HTML till Windows-urklipp genom
CopyToClipboard, vilket bevarar formler, sammanslagna celler, länkar, visningsformatering och säkert escaperade inbäddade tabbar, radbrytningar och citattecken TXLSXWorkbookbevarar nu anpassade paketdelar nåbara från okända paketrot-, arbetsboks-, kalkylblads- eller ritrelationsrelationer, inklusive hantering av kollisioner för relations-ID, innehållstyper, barnrelationer, komprimeringsval och exakta nyttolastbyte;PreserveUnsupportedParts,UnsupportedPartCount,UnsupportedPartBytesochClearUnsupportedPartsexponerar kontroll och diagnostik- Klassiska XLS-sparningar exponerar återanrop för början, arbete och slut med annullering genom
OnProgressEx, medanIXLSWorkbookProgresstillhandahåller strukturerad diagnostik med stabila koder, allvarlighetsgrad, operation, bladkontext, inhemska returvärden och undantagsdetaljer TXLSXWorkbookexponerar nu samma struktureradeDiagnostics-,LastDiagnostic- ochOnDiagnostic-ytor för spar-, öppnings-, omberäknings-, annullerings- och undantagsrapportering- Tolkade VBA-moduler stöder nu redigering av
SourceCodeoch skrivning av den uppdaterade komprimerade modulströmmen tillbaka genom klassiska XLS-, fristående VBA-lagring och makroaktiverade OOXML-sparningar samtidigt som strömprefix och orörda projektinnehåll bevaras - Klassiska kalkylblad och shape-samlingar exponerar nu typade
TXLSCheckBox-,TXLSComboBox- ochTXLSListBox-formulärkontroller med skapandehjälpare, etiketter, kontroll-typ-inspektion, cellankare, borttagning samt upptäckt vid öppna/spara TXLSXRange.ApplyFormatPatchkan selektivt kopiera teckensnitts-, fyllnings-, kant-, nummerformat-, justerings- och skyddskomponenter med källmönster-ibrukning samtidigt som målvärden och omarkerad formatering bevarasTDataToXLSkan rekursivt exportera länkade master-detail-datauppsättningar genomReadDetailTablesochIndentDetailTables, vilket bevarar aktiva datalänkar, lägger till varje detailtabell under sin master-post och ärver fält-, titel- och formateringsalternativ på varje nivåTXLSXWorksheet.AddWordArtskapar cellförankrad DrawingML-text med förinställd förvridning samt konfigurerbara text- och konturfärger, och raw drawing-anchor-bevarandesökvägen behåller den kompletta WordArt-shapen vid senare öppna/spara-cyklerTXLSWorkbookViewerlägger till en VCL-kalkylbladsvisare för klassiska och moderna arbetsboksobjekt med inläsning av XLS-, XLSX-, XLSM-, mall- och ODS-filer, formaterad celltext, klassiska stilar, rad- och kolumnstorlek, rubriker, rutnät och markeringsrendering, rullningslister, musmarkering, tangentbordsnavigation, cellpositionering, kalkylbladsbyte samt markerings- eller kalkylbladshändelser- Nya Delphi-exempel
FeatureShowcaseochWorkbookViewerdemonstrerar stylad PDF-utskrift, utskriftstitlar, manuella brytningar, klassiska formulärkontroller, selektiva format-lappar, WordArt, diagnostik, visarskapande vid körning, filinläsning, cellnavigation, kalkylbladsbyte och visarhändelser, med matchande engelska guider och utvecklarreferensämnen
Ändrat
- Klassisk XLS- och modern XLSX PDF-export för arbetsbok, kalkylblad och intervall skriver nu varje synligt kalkylblad till ett dokument, hoppar över dolda och diagramblad, renderar solida fyllningar, teckensnittsfärger, teckenstorlekar, fet och kursiv betoning, horisontell och vertikal justering, explicita cellramar och valfria kalkylbladsrutnät, följer varje kalkylblads utskriftsområde, pappersstorlek, orientering, marginaler, zoom, anpassa-till-bredd, kolumnbredder, faktiska radhöjder, manuella rad- och kolumnsidbrytningar, upprepade titelrader och kolumner och tredelade sidhuvuden och sidfötter med sid-, total-sid-, bladnamn-, datum- och tidsfält, paginerar breda och höga intervall över båda axlarna, avger lokaloberoende PDF-numerisk syntax och bäddar in ett kvalificerat TrueType-teckensnitt plus en ToUnicode-mappning för text utanför WinAnsi
- XLSX utökade förloppsåteranrop tar nu emot tillförlitliga början-, arbete- och slut-tillstånd för sparande, öppning och omberäkning, medan det äldre återanropet fortfarande är endast arbete och varje operation återställer tidigare annulleringstillstånd
- Klassisk XLS-serialisering propagerar nu kalkylblads-, diagram-, stilutöknings-, VBA-, kontrollström-, lagrings- och utmatningsfel i stället för att rapportera framgång, och fil-sparning samlar den kompletta sammansatta filen innan målet atomärt ersätts
- XLSX- och ODS-filsparningar bygger nu ett komplett syskon-temporärtpaket och ersätter målet atomärt först efter lyckad slutförande, vilket lämnar befintliga filer oförändrade efter annullering eller fel
Version 2.183.0
Tillagt
TXLSDirectWriterstöder nu återanvändbara cellstil-hanteringar på paketnivå och stil-kloning utan att buffra kalkylbladsrader; samma stilindex kan appliceras på valfritt antal celler eller återanvändas över kalkylblad- Direkta cellstilar tillhandahåller 30 formateringsmöjligheter som spänner över teckensnittsnamn, storlek, BGR-färg, fet, kursiv, genomstruken, kontur, skugga, fem understrykningslägen, 19 fyllningsmönster med förgrund-/bakgrundsfärger, fem oberoende färgade kantkanter med 14 linjestilar och diagonala riktningar, inbyggda eller anpassade talformat, horisontell och vertikal justering, radbrytning, krymp-till-passning, indrag, textrotation, citattecken-prefix och låst/dold-skydd
- Stylade överlagringar är tillgängliga för strängar, tal, booleska, datum, formler, fel och varje cache-formelresultattyp, vilket gör att högvolym-exportörer kan välja en förbyggd stil via heltalsindex vid sekventiell skrivning
Ändrat
- Direktskrivaren deduplicerar lika teckensnitts-, fyllnings-, kant- och talformatkomponenter när
styles.xmlbyggs, samtidigt som stabila cellstilindex som redan har skrivits till kalkylbladsströmmar bevaras - Genererade direkt-skrivar-stiltabeller inkluderar nu standard
none- ochgray125-standardfyllningar före anpassade fyllningar för striktare OOXML-kompatibilitet
Version 2.182.0
Tillagt
TXLSDirectWriterskriver nu villkorsformatering samtidigt som dess minnesprofil oberoende av radantal behålls, med åtta cellvärdesoperatorer, uttrycksregler, innehåller/inte innehåller/börjar-med/slutar-med-textregler, topp eller botten värde- och procentregler, över eller under medel-regler, dubblett- och unika värden, tomma och icke-tomma celler, fel och icke-fel celler, datastaplar, två- och trefärgskalor och alla 17 baslinje-ikonuppsättningsfamiljer- Direkta villkorsformat-regler stöder explicita prioriteter, stop-om-sann-utvärdering, alternativ för genomsnittsstandardavvikelse och likhet, ikontröskelersättning, endast-ikon- och omvänd visning, synlighet för stapelvärde, BGR-färger och differentiella fyllnings-, teckensnittsfärgs-, fet- och kursiv-stilar
Ändrat
- Direktskrivaren deduplicerar likvärdiga differentiella stilar över kalkylblad och lagrar endast villkorsformat-regler och stilar, så att minnesanvändningen skalas med antalet regler snarare än med antalet kalkylbladsrader
- Automatiska tröskelvärden för datastapel-minimum och -maximum normaliseras till standard
min- ochmax-tokens i baselementet för OOXML för bred kalkylbladskompatibilitet
Version 2.181.0
Tillagt
TXLSDirectWriterskriver nu kalkylblads- och arbetsboksskydd utan att buffra kalkylbladsdata, inklusive 15 finmaskiga kalkylbladsbehörigheter, äldre lösenordsverifierare, modern hash-metadata, redigerbara skyddade intervall med valfria lösenord eller säkerhetsbeskrivningar, lås för arbetsboksstruktur och fönster, raw verifierartilldelning och rensning av skydd
Rättat
- Ostödda ritankare behåller nu varje stängande element när de återskapas för rundtur-utmatning, så att shape-endast-ritningar förblir välformade efter öppna och spara
- Behörigheter för XLSX-kalkylbladsskydd följer nu OOXML-definitionen av låst-flagga, så att tillåtna åtgärder skriver
0, förbjudna åtgärder skriver1och utelämnade attribut öppnas med sina schemastandarder - Äldre XLSX-lösenord för kalkylblad, skyddat intervall och arbetsbok använder nu den Excel-kompatibla 16-bitars verifierar-algoritmen med ANSI-konvertering och 15-byte-gränsen
Version 2.180.0
Tillagt
- XLSX-kalkylbladsmodellen rundtur-bevarar nu What-If Scenariohanteraren (
<scenarios>) och Data Konsolidering (<dataConsolidate>)-elementen. Nya egenskaperScenariosXmlochConsolidateXmlmed raw-XML påTXLSXWorksheetbär det inre innehållet ordagrant — skrivaren avger wrapper-elementen, läsaren tolkar scenario-/datakonsoliderings-barn tillbaka. Finansiella modelleringsfiler som definierar scenarier eller konsolideringsdefinitioner förlorar dem inte längre vid rundtur
Version 2.179.0
Tillagt
- En ny hjälparfunktion
XlsxBuildNumFmtkonstruerar OOXML-talformatkoder från semantiska egenskaper —Decimals,Thousands(separator),NegativeRed(röda negativa),CurrencySymbolochPercent. Anropare behöver inte längre hand-skriva formatsträngar som"$#,##0.00;[Red]-$#,##0.00"— byggaren producerar dem från enkla parametrar. Designad för användning medCell.NumberFormatellerWorkbook.NumberFormats.Add
Version 2.178.0
Tillagt
- XLSX-kalkylbladsmodellen rundtur-bevarar nu VBA-kodnamnet (
<sheetPr codeName="..."/>), vilket är väsentligt för VBA-interop där VBA-projektet refererar till kalkylblad via kodnamn. Ny egenskapCodeNamepåTXLSXWorksheet - Kommentarer stöder nu en synlighetsväxel
AlwaysShowpåTXLSXComment— när True är kommentarsballongen alltid synlig (Excels per-kommentar "Visa/Dölj kommentar"-växel), inte bara vid svävning - Datavalidering rundtur-bevarar nu attributet för IME-läge (
imeMode) påTXLSXDataValidation. Enumen med 11 värden styr CJK-inmatningsmetodens beteende vid cellinmatning (noControl / off / on / hiragana / fullKatakana / etc.). Väsentligt för japanska/koreanska/kinesiska-lokal-filer - Kalkylbladsmodellen får en egenskap
PaneStateför pane-state-attributet på<pane>utöver befintlig hantering av fryst läge — stöderfrozenSplit(fryst-sedan-rullningsbart) ochsplit-tillstånd
Version 2.177.0
Tillagt
- Tre tidigare registrerade men ej implementerade kalkylbladsfunktioner har nu full dispatch:
DOLLAR(valuta-formaterad text),FIXED(fast-decimal text med valfri komma-undertryckning) ochAREAS(antal områden i en referens). Tidigare var dessa registrerade iInitFuncHashmen hade inget beräkningsmotor-fall — att utvärdera=DOLLAR(...)returnerade tyst felaktiga resultat - XLSX-kalkylbladsmodellen rundtur-bevarar nu zoomskalor per vytyp (
zoomScaleNormal/zoomScalePageLayoutView/zoomScaleSheetLayoutView), rutnätslinjefärg (sheetView color) och visningsflaggor för arkvy (showFormulas/showZeros). Nya egenskaper påTXLSXWorksheet:ZoomNormal,ZoomPageLayout,ZoomSheetLayout,GridColor,ShowFormulas,ShowZeros - Riktningsvisning för översikt rundtur-bevaras nu. Nya egenskaper
SummaryBelow,SummaryRightochShowOutlineSymbolspåTXLSXWorksheetstyr huruvida sammanfattande rader/kolumner visas under/över detalj och huruvida översiktssymboler är synliga. Skrivaren avger<outlinePr>inuti<sheetPr>; läsaren tolkar det tillbaka - Arbetsbokens calcPr bär nu
forceFullCalc- ochcalcCompleted-attribut vid sidan av den befintliga trioncalcId/fullCalcOnLoad/calcMode/iterate
Version 2.176.0
Tillagt
- XLSX-formelmotorn löser nu strukturerade tabellreferenser före kompilering. En ny metod
ResolveStructuredRefspåTXLSXWorkbooksöker igenom formeltext efterTableName[ColumnSpec]-mönster och ersätter dem med konkreta A1-intervallreferenser med hjälp av arbetsbokensTXLSXTable-samling. Stödda specifikationer inkluderar kolumndataintervall (Sales[Qty]), aktuell-rad-kolumn (Sales[@Total]), full data (Sales[#Data]/Sales[#All]), rubriker (Sales[#Headers]) och totalrad (Sales[#Totals]). Upplösningen körs automatiskt inutiGetCompiledFormula— befintliga formler påverkas inte eftersom icke-tabell-identifierare lämnas ordagrant. Tidigare orsakade strukturerade referenser att formelkompilering misslyckades
Version 2.175.0
Tillagt
- Formelmotorn stöder nu kompilering av formler med R1C1-referensstil. En ny metod
GetCompiledFormulaR1C1påTXLSCalculator(ochGetCompiledR1C1påTXLSFormula) accepterar en formel skriven i R1C1-notation (R2C3för absolut,R[-1]C[2]för relativ,RCför aktuell cell) och kompilerar den genom att först konvertera till A1-notation med formelcellens rad/kolumn. En fristående funktionR1C1ToA1utför konverteringen — den upptäckerR/C-markörer som är fristående (inte del av ett funktionsnamn som ROUND), tolkar de valfria parentes-offseten och producerar motsvarande A1-referens. Strängliteraler och identifierare hoppas över. Tidigare kunde endast A1-stil-formler kompileras
Version 2.174.0
Tillagt
- AutoFilter-utmatning från
TXLSDirectWriterstöder nu kalkylblads- och tabellfilterkolumner, värdefilter, blanka filter, datumgruppfilter, anpassade jämförelsefilter, dynamiska filter, topp/Botten-filter, filterknappsflaggor, sorteringstillstånd, sorteringsvillkor, XML-escapering och undertryckning av duplicerade kalkylblads-/tabellfilterintervall vid strömmande skrivning av XLSX-filer
Version 2.173.0
Tillagt
- Tabellutmatning från
TXLSDirectWriterstöder nu tabellkommentarer, totalrad antal, kolumner för totalradsetiketter, kolumner för totalradsfunktioner, beräknade kolumnformler, totalradsformler och XML-escapering för kolumnmetadata vid strömmande skrivning av XLSX-filer
Version 2.172.0
Tillagt
TXLSDirectWriterskriver nu Excel-tabelldelar vid strömmande skrivning av XLSX-filer, inklusive kalkylbladstabellrelationer, innehållstyper för tabelldelar, tabellintervall, kolumnnamn, flaggor för rubrik- och totalrad samt inbyggda flaggor för tabellstil utan att bygga en full objektmodell för arbetsboken
Version 2.171.0
Tillagt
TXLSDirectWriterskriver nu kalkylbladsdatavalideringar vid strömmande skrivning av XLSX-filer, inklusive list-, heltal-, decimal-, datum-, tidslängd-, anpassad-formel-, godtyckligsqref, inmatningstips, fel-varning, tillåt-tomma, rullgardinsmeny och flaggor för fel/inmatningsmeddelande utan att bygga en full objektmodell för arbetsboken
Version 2.170.0
Tillagt
TXLSDirectWriterskriver nu arbetsboks- och bladlokala definierade namn vid strömmande skrivning av XLSX-filer, inklusive dolda namn, kommentarer, genererade absoluta intervall, utskriftsområden, utskriftstitelrader, utskriftstitelkolumner, kombinerade utskriftstitlar, citerade bladnamnsreferenser, XML-escapering och ersättningssemantik för upprepade utskriftsnamns-uppsättare utan att bygga en full objektmodell för arbetsboken
Version 2.169.0
Tillagt
TXLSDirectWriterskriver nu kalkylbladshyperlänkar vid strömmande skrivning av XLSX-filer, inklusive externa URL-, mailto- och filrelationer, interna bladpositioner, visningstext, verktygstips, en- eller flercelliga hyperlänkintervall, normalisering av enklawww.-URL:er, XML-escapering och procentkodade relationsmål utan att bygga en full objektmodell för arbetsboken
Version 2.168.0
Tillagt
TXLSDirectWriterskriver nu metadata för utskrift och arkvy vid strömmande skrivning av XLSX-filer, inklusive växlar för rutnätslinje- och rad-/kolumnrubrikvisning, sidmarginaler, text för udda sidhuvud/sidfot, utskriftsrutnät och rubriker, sidcentrering, pappersstorlek och landskapsorientering, anpassa-till-sida-dimensioner och manuella rad- eller kolumnsidbrytningar utan att bygga en full objektmodell för arbetsboken
Version 2.167.0
Tillagt
TXLSDirectWriterskriver nu kalkylbladslayoutmetadata vid strömmande skrivning av XLSX-filer, inklusive standardkolumn- och radstorlekar, anpassade kolumnbredder, dolda rader och kolumner, sammanslagna intervall, AutoFilter-intervall, frysta rutor, bladflikfärger och höger-till-vänster-arkvyer utan att bygga en full objektmodell för arbetsboken
Version 2.166.0
Tillagt
- Strömmande XLSX-arbetsflöden inkluderar nu bladnamnslistning utan kalkylbladsgenomsökningar, radmarkörs-bladval via namn, strömmande av råa numeriska datum, återanvändning av direkt-skrivare, felcellsskrivning och cache-formelresultat-skrivare för numeriska, sträng-, booleska, datum- och felvärden
Version 2.165.0
Rättat
TXLSDirectReader.ReadStreamåterställer nu anroparens strömposition efter direkt skanning, vilket matchar det dokumenterade strömkontraktet och låter program återanvända samma ström efter ett direkt läspass
Version 2.164.0
Tillagt
- Datauppsättningexport från
TDataToXLSstöder nu stränglistor förIncludeFieldsochExcludeFields. Program kan vitlista exporterade fält, utelämna känsliga kolumner och hålla rubriker, datarader, kolumnbredder och exportåteranrop i linje med den valda fältuppsättningen
Version 2.163.0
Tillagt
- CSV-export får konfigurerbar textcitationstecken över XLS- och XLSX-motorerna.
TXLSWorkbookexponerar nuCSVEmitFormulasochCSVQuoteAllStrings, ochTXLSXWorkbooklägger tillCSVQuoteAllStrings. När det är aktiverat skriver formulexport formeltext och strängfält citeras medan numeriska, datum-, booleska-, Null- och Empty-fält behåller normala citatteckenregler
Version 2.162.0
Tillagt
- XLSX-motorn får ett avbrytbart förloppshändelsesystem. Ett nytt återanrop
OnProgressExpåTXLSXWorkbookavfyras bredvid det befintligaOnProgressmed tre förbättringar: (1) en parameterTXLSXProgressState(ppsBegin/ppsWork/ppsEnd) som inramar varje fas så att UI:er vet när en operation startar och slutar; (2) en var-parameterAbort: Booleansom låter återanropet avbryta den aktuella operationen mitt i strömmen — looparna för läs/skriv/beräkning kontrollerarWorkbook.Abortedoch bryter ut rent; (3) en ny fasxlsxProgressExportingför exportoperationer (HTML/RTF/CSV/ODS). En hjälparmetodFireProgresscentraliserar dispatch för dubbel-återanrop. FlagganFAbortedåterställs i början av varje toppnivåoperation (Open / SaveAs / Recalculate)
Version 2.161.0
Tillagt
- XLSX-diagrammodellen stöder nu fyra nya diagramelement för starkare Excel-kompatibilitet. Diagramdatatabell (
c:dTable):TXLSXChartfår växlarShowDataTable+ShowDataTableKeys— när aktiverad avger skrivaren elementet inuti plottområdet så att Excel renderar källdatan som ett rutnät under diagramaxeln. Upp/Ner-staplar + hög-låg-linjer (aktie/OHLC-diagramelement):TXLSXChartfårHasUpDownBars+UpDownGapWidthochHasHiLowLines— skrivaren avgerc:upDownBarsochc:hiLowLinesinuti diagramelementet (linje-/aktiediagram). 3D-vy-kontroller:TXLSXChartfårRotation3DX/Rotation3DY/Elevation3D/Perspective3D/RightAngleAxes3D— skrivaren avgerc:view3Dpå diagramnivå när någon 3D-egenskap skiljer sig från standard. Tidigare avges inget av dessa element, så diagram byggda med datatabeller, aktiediagramelement eller 3D-vyer förlorade dem vid rundtur
Version 2.160.0
Tillagt
- Formelreferenser justeras nu automatiskt när rader eller kolumner infogas eller raderas i XLSX-motorn. Metoden
ShiftSheetGeometry— anropad avInsertRows/DeleteRows/InsertCols/DeleteCols— går nu igenom varje överlevande formelcell och skriver om dess A1-referenser för att återspegla den strukturella ändringen. En ny textskannerXlsxAdjustFormulaRowColRefsupptäcker en-cells-referenser (A1,$B$2) och intervallreferenser (A1:B3), skiftar deras rad-/kolumnkomponenter förbi insättningspunkten och konverterar raderade referenser till#REF!. Både relativa och absoluta referenser skiftas (vilket matchar Excels beteende). Tidigare lämnades formler tyst att peka på fel celler efter en strukturell redigering
Version 2.159.0
Tillagt
- AutoFilter-sorteringstillstånd rundtur-bevaras nu genom XLSX-motorn.
TXLSXWorksheetfår en egenskapSortStateXmlsom bär den inre XML:en för OOXML-elementet<sortState>(kolumnsorteringsriktning, skiftlägeskänslighet, sorteringsmetod och varje<sortCondition>med sin fallande flagga + ref). Skrivaren avger elementet efter<autoFilter>; läsaren tolkar attributen och sorteringsvillkoren tillbaka. Tidigare släpptes sorteringstillstånd tyst vid läsning och skrevs aldrig - CJK-fonetiska/ruby-inställningar rundtur-bevaras nu genom XLSX-motorn.
TXLSXWorksheetfårPhoneticFontId,PhoneticType(hiragana / katakana / fullWidthKatakana / noConversion) ochPhoneticAlignment(left / center / distributed). Skrivaren avger<phoneticPr>efter<sheetData>; läsaren tolkar attributen tillbaka. Tidigare släpptes det fonetiska elementet tyst vid läsning — japanska marknads-filer förlorade sina furigana läs-hjälp-inställningar
Version 2.158.0
Tillagt
- XLSX-motorn rundtur-bevarar nu tabellen för namngivna cellstilar (
<cellStyles>). En ny klassTXLSXNamedStyle+ samlingenTXLSXNamedStylespåTXLSXWorkbookbär hela ytan:Name,XfId,BuiltInId,CustomBuiltIn,Hidden,BuiltinLevel. Skrivaren avger en<cellStyle>per post när samlingen inte är tom; läsaren tolkar dem tillbaka. Tidigare hardcodeade skrivaren en enda"Normal"-post och läsaren kastade alla namngivna stilar, så filer med "Good"/"Bad"/"Total"/anpassat-namngivna stilar förlorade de namnen vid rundtur
Version 2.157.0
Tillagt
- XLSX-motorn rundtur-bevarar nu det fullständiga elementet
<calcPr>, inte bara växlarna för iterativ beräkning.TXLSXWorkbookfårCalcId(beräkningsmotor-identifieraren Excel använder för att avgöra om cache-värden är inaktuella),FullCalcOnLoad(tvingar Excel att göra en fullständig omberäkning vid öppning — kritiskt för arbetsböcker producerade av en icke-Excel-motor) ochCalcMode(auto / manual / autoNoTable). Skrivaren avger matchande attribut på<calcPr>; läsaren tolkar dem tillbaka. Tidigare hanterades endastiterate/iterateCount/iterateDelta, och resten släpptes tyst
Version 2.156.0
Tillagt
- Formelutvärderaren implementerar nu 37 kalkylbladsfunktioner som tidigare var registrerade (ptg tilldelad i InitFuncHash) men saknade dispatch-implementation — de föll igenom till
#NAME?. De nya implementationerna spänner över fem funktionsfamiljer: Regression (FORECAST,LINEST,TREND,GROWTH,LOGEST,CORREL,PEARSON,SLOPE,INTERCEPT,RSQ,STEYX), Avskrivning (SLN,SYD,DB,DDB,VDB), Beskrivande statistik (AVEDEV,DEVSQ,KURT,SKEW,GEOMEAN,HARMEAN,TRIMMEAN,FREQUENCY), Matris parvis (SUMXMY2,SUMX2MY2,SUMX2PY2), och Kombinatorisk/Matematik (COMBIN,PERMUT,FACT,QUOTIENT,ROMAN,DEGREES,RADIANS,STANDARDIZE). Regressionsfunktionerna använder en minsta-kvadrat-lösare; avskrivningsfunktionerna implementerar linjär, års-summa, och degressiv avskrivning; funktionerna för beskrivande statistik beräknar medel absolut avvikelse, kurtosis, skevhet, geometrisk/harmonisk/trimmad medel; och de parvisa funktionerna beräknar summan av kvadrerade skillnader mellan två lika stora intervall. En ny hjälpareCollectRangeValuespåTXLSCalculatorextraherar numeriska värden från intervallargument för statistikfunktionerna
Version 2.155.0
Tillagt
- Formelutvärderaren stöder nu fem ytterligare statistiska och tekniska kompatibilitetsnamn:
ERFC,ERFC.PRECISE,BINOM.INV,CHI.INV.RTochF.TEST.ERFCkompletterar den befintliga fel-funktionsserien,BINOM.INVsöker binomial-CDF-tröskeln,CHI.INV.RTaliaserar chi-i-två-inversen för högra svansen, ochF.TESTreturnerar p-värdet för tvåsvansad urvalsvarians
Version 2.154.0
Tillagt
- Formelutvärderaren löser nu korsarbetsboks-referenser via ett nytt återanrop
OnGetExternalValuepåTXLSCalculator. När en 3D-intervallreferens pekar in i en extern arbetsbok ([1]Sheet1!A1), dirigerar utvärderaren genom återanropet i stället för att returnera#REF!. XLSX-motorn kopplar detta återanrop tillGetExternalCellValue, som mappar SupBook-index + bladindex till den matchandeTXLSXExternalLink:s<sheetDataSet>-cache och avkodar det cache-lagrade cellvärdet efter dess OOXML-typattribut (numeriskt / booleskt / sträng / fel). Tidigare returnerade korsarbetsboks-formler#REF!ovillkorligen; återanropsinfrastrukturen låter nu varje motor (BIFF8, XLSX, eller en anpassad kalkylatorvärd) tillhandahålla externa värden - Formelutvärderaren utför nu element-vis matris-sändning på binära operatorer (
+/-/*///^). När endera operanden är en 1D- eller 2D-variantmatris (t.ex. ett matris-funktionsresultat, ett spill-intervall, eller en CSE-matrisoperand), appliceras operatorn element-för-element; en skalär-operand sänds till varje element i matrisoperanden. Den nya hjälparenApplyArrayBinaryOphanterar formvalidering, skalär-sändning, och propagation av division-med-noll. Äldre skalär aritmetik är oförändrad — matris-sökvägen aktiveras endast när minst en operand är en variantmatris - Formelutvärderaren känner nu igen funktionen
TABLE(What-If-analys DataTable). Excel lagrar datatabeller som CSE-matrisformler vars kropp ärTABLE(rowRef, colRef); tidigare varTABLEokänd och föll igenom till#NAME?. Funktionen är registrerad med en syntetisk ptg (ftabTABLE = 4232) så att den rundtur-bevaras genom BIFF8-formelkodning, och vid utvärdering returnerar den ett platshållarvärde (0) — de verkliga resultaten är förberäknade av Excel och lagrade som cache-cellvärden, så HotXLS utvärderar inte ersättningslogiken på nytt
Version 2.153.0
Tillagt
- Den typade PivotTable-modellen bär nu sidegenskaperna (Hier / Caption / Name), auto-sort-omfånget och raw-XML-rundtur-krokarna för
<formats>och<extLst>som behövs för fullständigare Excel-kompatibilitet.TXLSPivotFieldfårPageHier/PageCaption/PageName(F16 — OLAP-hierarkinamn + sid-axeletikett + visningsnamn) ochAutoSortScope(F20 — A1-intervallreferens som fäster de celler Excel använder för att auto-sortera fältets objekt);TXLSPivotTablefårFormatsXml/ExtLstXml(F17 — raw-inre-XML-rundtur för blocket<formats>för villkorsformat-/talformat-åsidosättningar och blocket<extLst>för slicer / tidslinje / x14, som avges ordagrant när det är satt så att rundtur är säker även över motorversioner). XLSX-skrivaren avger de matchande attributen<pageField hier=... cap=... name=.../>, barnet<autoSortScope>till<pivotField>, och blocken<formats>+<extLst>före den stängande vaktposten - Formelspåraren registrerar nu ögonblicksbilder av operand-stacken per steg, vilket möjliggör en sann steg-för-steg "Utvärdera formel"-felsökare.
TXLSFormulaStepfårStepKind(push / reduce / function),StackBefore/StackAfter(kommaseparerade ögonblicksbilder av operand-stacken vid det ögonblick varje steg startade / avslutades), ochTokenStart/TokenEnd(1-baserat teckenspann som fäster steget tillbaka till källformeln).TXLSFormulaTracerfårTraceReversed(returnerar samma steg i omvänd utvärderingsordning — användbart för ett steg-bakåt-UI som går från det slutgiltiga resultatet mot de ursprungliga operanderna) och en egenskapStepCount. Tidigare registrerade spåraren endast Djup / Källa / Uttryck / Värde utan något stacktillstånd - HTML-export bäddar nu in per-cell-bilder via ett nytt återanrop
OnCellImagepåTXLSHTMLExportoch ett nytt alternativxhImages. När alternativet är satt och återanropet är kopplat, frågar exportören implementeraren för varje cells<img>-fragment (vanligtvis en Base64 data-URI) och lägger till det efter celltexten. Detta frikopplar exportören från XLS-motorns BIFF8-bildlagring (som lever i MsoDrawing-posten per blad) så att exportören inte behöver tolka ankare själv. XLSX-motorns HTML-export hade redan inbäddat bilder; detta stänger gapet för XLS-motorn - RTF-import applicerar nu teckenegenskaper (fet / kursiv / understruken / genomstruken / storlek) från RTF-kontrollorden till målcellens teckensnitt.
TXLSRTFImportspårar\b/\i/\ul/\strike/\fsgenom dokumentet och skjuter in den dominerande körningens formatering i cellens XF vid commit-tid. En ny egenskapImportCharFormat(standard True) växlar beteendet; sätt till False för att återställa den äldre text-endast-importen. Flerkörnings-celler kollapsar till ett enda XF (den sista aktiva körningen vinner) eftersom XLS-motorns cell-API är cellnivå, inte per-fragment — men detta är långt bättre än att släppa all formatering, vilket var vad den äldre importören gjorde - En ny klass
TXLSHTMLImporttolkar HTML-tabeller till kalkylbladsceller. Den går igenom den första<table>i källan, avger en kalkylbladsrad per<tr>och en cell per<td>/<th>. Den respekterarcolspan/rowspan(Excel-stil sammanslagning), strippar taggar inuti en cell (kollapsar nästlad formatering till vanlig text), avkodar de fem standard teckenentiteterna (&/</>/"/'/ ) och de numeriska formerna&#NNN;/&#xNN;, och tvingar rena numeriska strängar till Double så att importerade tabeller förblir beräkningsbara. Designad för den utmatning HotXLS själv producerar (SaveAsHTML) plus allmänna kopiera-klistra-kvalitet HTML-tabeller; inte en full HTML5-tolk
Version 2.152.0
Tillagt
- XLSX-tabeller behåller nu kolumnnivå metadata för totalrad och tabellformler.
TXLSXTableexponerarColumnTotalsRowFunctions[],ColumnTotalsRowLabels[],ColumnCalculatedColumnFormulas[]ochColumnTotalsRowFormulas[];SaveAsavger den matchande XML för tabellkolumntotalsRowFunction,totalsRowLabel,calculatedColumnFormulaochtotalsRowFormula,Openläser dem tillbaka, och tabellkloner bevarar dem
Version 2.151.0
Tillagt
- Den typade PivotTable-modellen bär nu filtersamlingen per fält, växeln för flerval, fieldGroup-discretePr + groupItems-ytan, och modellen för beräknade objekt / beräknade medlemmar som behövs för fullständigare PivotTable-kompatibilitet.
TXLSPivotFieldfår en typad samlingTXLSPivotFilters(varje post bärFilterTypeöver OOXML-enumenST_FilterTypemed 80 medlemmar — antal / procent / summa / rubrik / värde / datumfamiljer — plusValue1/Value2/StrValue1/StrValue2,EvalOrder,DataField,MemberPropertyId,Name,Description), en växelMultipleItemSelectionAllowed(F9), och en samlingTXLSPivotCalculatedItem(F14).TXLSPivotCacheFieldfårDiscreteIndices[]+AddDiscreteIndexochGroupItemLabels[]+AddGroupItemför blocken fieldGroup discretePr + groupItems (F13).TXLSPivotTablefår en samlingTXLSPivotCalculatedMember(F14). XLSX-skrivaren avger matchande<pivotField multipleItemSelectionAllowed="1">, per-fält-blocket<filters><filter .../>, elementet<fieldGroup><discretePr>...</discretePr><groupItems>...</groupItems></fieldGroup>, per-fält-blocket<calculatedItems>, och blocket på tabellnivå<calculatedMembers>— så att programmatiskt byggda pivoter med filter / flerval / gruppering / beräknade objekt rundtur-bevaras
Version 2.150.0
Tillagt
- Definierade namn behåller nu sin formeltext giltig när det kalkylblad de refererar till raderas eller byter namn. Att radera ett blad skriver om varje
SheetN!-kvalificerare inuti ett definierat namns formel till#REF!(vilket matchar Excels beteende); att byta namn på ett blad skriver om kvalificeraren till det nya namnet. Tidigare pekade formeltexten fortsättningsvis mot ett obefintligt bladnamn, vilket Excel då flaggade som en bruten länk vid återöppnande - Den typade PivotTable-modellen bär nu fältnivå sorteringsordning och layoutväxlar, plus de layout- / visningsattribut på tabellnivå som behövs för fullständigare PivotTable-layoutkompatibilitet.
TXLSPivotFieldfårSortType(manuell / stigande / fallande),Compact,Outline,SubtotalTop,DragToRow/DragToCol/DragToPage/DragToData,ShowAll,InsertBlankRow,NumFmtId;TXLSPivotTablefårCompact/CompactData/Outline/OutlineData/Indent/ShowEmptyRow/ShowEmptyCol/ShowHeaders/ShowDrill/EnableDrill/FieldListSortAscending/GridDropZonesplusRowHeaderCaption/ColHeaderCaption/ErrorCaption/MissingCaption/ShowError/ShowMissingoch layoutparet för sidaxelRowPageCount/ColPageCount. XLSX-skrivaren avger matchande attribut<pivotField sortType=... compact=... outline=...>och<pivotTableDefinition indent=... outline=... showEmptyRow=...>och elementet<location rowPageCount=... colPageCount=.../>så att programmatiskt byggda pivoter bär den användarsatta layouten i stället för Excels standarder - En ny metod
FormulaIsVolatilepåTXLSWorkbookrapporterar huruvida en formel skulle tvinga fram en omberäkning vid varje beräkningspass — d.v.s. den anropar en flyktig funktion (NOW / RAND / TODAY / OFFSET / INDIRECT) eller bär en olöslig referens. Probet delar samma beroende-extraktor som omberäkningsmotorn använder, så svaret matchar vadRecalculatefaktiskt gör. Anropare kan använda den för att flagga celler för ett verifierings-UI, för att fylla ett calc-chain-flyktigt-set på en helt ny arbetsbok, eller för att hoppa över cache-lagring av resultatet av en nyligen angiven formel
Version 2.149.0
Tillagt
- PivotTable-cacher kan nu uppdateras från sitt källintervall programmatiskt. En ny metod
RefreshPivotCache(ACacheId)påTXLSXWorkbookskannar cachens källintervall på nytt, bygger om domänen för delade objekt per fält (åter-deduplicerar värden och härleder om de per-typ-gränserna), och skriver om indexen för delade objekt per post. Tidigare förlitade sig HotXLS på flagganrefreshOnLoad="1"och uppsköt allt uppdateringsarbete till Excel vid nästa öppning; programmatiska pipelines kan nu uppdatera i process
Version 2.148.0
Tillagt
InsertColspå XLSX-motorn ärver nu kolumnbredden från sin vänstra granne, vilket matchar Excels standardbeteende för "infoga kolumn". Tidigare tog den infogade kolumnen upp arbetsbokens standardbredd, vilket producerade ett synligt fidelitetsgap efter en återöppning- XLSX-motorn får bekvämlighetshjälpare för översiktskollaps
ToggleColGrouped/ToggleRowGroupedpåTXLSXWorksheet, som går genom översiktsträdet och kollapsar eller expanderar gruppen på en given nivå. Själva kollapsflaggorna rundtur-bevarades redan; detta lägger till den saknade bekvämlighets-API:et för att gå trädet
Version 2.147.0
Tillagt
- HTML-export avger nu
<a name>-ankare vid celler som är mål för interna hyperlänkar, så att#SubAddress-hyperlänkar löser korrekt när läsaren klickar på dem. Tidigare avgs länkarna men målen saknade ankare, så interna hopp löste till ingenting - CSV-export fick en egenskap
CSVEmitFormulaspåTXLSXWorkbook. När True exporterar formelceller sin formeltext (=SUM(A1:A2)) i stället för det beräknade värdet — användbart för felsökning och för pipelines som återimporterar till en annan motor - Externa hyperlänk-URL:er är nu procentkodade vid skrivning (
XlsxEncodeHyperlinkUrl): blanksteg, vinkelparenteser, citattecken, klamrar, rör, omvända snedstreck, circumflex och backticks kodas som%XXi attributet<Relationship Target="..."/>så att filen öppnas korrekt i varje webbläsare. Befintliga procentkodade sekvenser (%20) bevaras som de är - PivotTable-stilinformation bär nu hela ytan
pivotTableStyleInfo:StyleName,ShowRowHeaders,ShowColHeaders,ShowRowStripes,ShowColStripes,ShowLastColumnpåTXLSPivotTable. XLSX-skrivaren avger matchande element så att programmatiskt byggda pivoter bär den användarvalda randstilen i stället för den hardcodeade standarden - En ny metod
CalculateAndVerifypåTXLSXWorkbookutvärderar varje formelcell på nytt och jämför det beräknade resultatet mot cellens cache-värde. Returnerar antalet oöverensstämmelser (0 = alla cache-värden matchar motorns färska beräkning; flyktiga formler exkluderas). Användbart för QA vid portering av arbetsböcker mellan motorer eller validering av att en skrivare inte korrumperade cache-värden
Version 2.146.0
Tillagt
- XLSX-motorn stöder nu iterativ cirkelreferensberäkning (Excels iterativa beräkningsläge). En ny egenskapstrio
Iterate/IterateCount/IterateDeltapåTXLSXWorkbookstyr beteendet: närIterate=Trueoch en referenscykel upptäcks underRecalculate, utvärderar motorn om cykelmedlemsceller upp tillIterateCountgånger (standard 100) eller tills varje cells ändring är< IterateDelta(standard 0,001), i stället för att returnera#REF!. Inställningarna rundtur-bevaras genom OOXMLs element<calcPr iterate="1" iterateCount="N" iterateDelta="X"/>. Finansiella modeller med avsiktliga cirkulära referenser (ränta-på-ränta, cirkulära allokeringar) konvergerar nu i stället för att fel - PivotTable-cache-fält bär nu en grupperingsmodell för numeriskt intervall- och datumpersonhierarkigruppering.
TXLSPivotCacheFieldfårHasGroup+GroupStartNum/GroupEndNum/GroupInterval(numeriskt intervall) ochGroupByDate/GroupDays/GroupMonths/GroupQuarters/GroupYears/GroupHours/GroupMinutes/GroupSeconds/GroupStartDate/GroupEndDate(datum). XLSX-skrivaren avger elementet<fieldGroup><rangePr groupBy="range|days|months|..."/>så att programmatiskt byggda pivoter med grupperade fält matchar Excels utmatning - HTML-export avger nu slutnoter för kommentarer. När
xhCommentsär bland exportalternativen, får varje kommenterad cell en[n]-indexlänk, och den fullständiga kommentarstexten (författare + kropp) listas som en slutnot-sektion efter tabellen med en tillbakalänk till cellen. Tidigare var kommentarer endast tillgängliga via cellens attributtitle=, vilket är osynligt vid utskrift eller kopiera-klistra
Version 2.145.0
Tillagt
- BIFF8-formelfel-literaler (
tErr-token) avkodas nu till ett typatSA_ERROR-syntaxobjekt i stället för att misslyckas med formeltolkningen. En cell som lagrar=#N/A(eller någon av de sju Excel-felkonstanterna) orsakade tidigare att hela formeln släpptes vid läsning; felbyten rundtur-bevaras nu genom läsning → utvärdering → skrivning och rekonstrueras till sin textform (#NULL!,#DIV/0!,#VALUE!,#REF!,#NAME?,#NUM!,#N/A) via en ny hjälpareXlsErrorToString - BIFF8-token
tIsect $0F(implicit skärningsoperator) avkodas nu i den binära formelöversättaren, vilket bygger sammaSA_ISECT-nod som texttolken producerar för@. Tidigare skulle en binär formel som innehölltIsectmisslyckas med tolkning - Villkorsformatering av datastaplar avger nu Excel 2010+ tilläggsblocket
x14i kalkylbladetsextLstnär modellen bär något icke-standard x14-fält (negativ fyllningsfärg, övertoning av, axelfärg, riktning, kant). En nyBuildDataBarExtXmlbygger elementet<x14:conditionalFormattings>extmed matchande prioritet, cfvo-par, fyllning + negativ + axelfärger, och attributen gradient/border/direction/negativeBarColorSameAsPositive
Version 2.144.0
Tillagt
- XLSX-motorn kan nu skriva Agile-krypterade arbetsböcker (
TXLSXWorkbook.SaveAsEncryptedAgile), vilket stänger ett hög-värde läs-/skriv-kompatibilitetsgap. Agile är vad Excel 2010+ skriver som standard för lösenordsskyddade .xlsx-filer; HotXLS kunde tidigare läsa Agile men endast skriva Standard Kryptering (AES-128). Den nya skriv-pipelinen speglar den befintliga avkrypterings-sökvägen: SHA-512 lösenordshashning med ett spin-antal på 100000 iterationer, AES-256-CBC paketkryptering per segment, en slumpmässigt genererad mellannyckel inlindad per de tre spec-fästa block-nycklarna, och en komplett<encryption>-beskrivare-XML som bär den krypterade verifieraren + nyckel-blobarna. Utmatningen är byte-trogen mot vad Excel producerar och rundtur-bevaras rent genomXlsLoadAgileEncryptedFile(verifierad genom test: korrekt lösenord avkrypterar, fel lösenord avvisas) - Nya kryptografiska primitiver ligger till grund för Agile-skriv-sökvägen:
XlsHMACSHA512(RFC 2104, behövs för elementetdataIntegrity),XlsBase64Encode(RFC 4648-kodare som speglar den befintliga avkodaren), ochAESEncryptCBC(AES-CBC-kryptering för valfri nyckelstorlek 128/192/256, inversen till den befintligaAESDecryptCBC). AES-enheten importerar nuaes_encrypt_key192/aes_encrypt_key256från Gladman-obj (tidigare var endast 128-bitars kryptering tillgänglig)
Version 2.143.0
Tillagt
- Formelutvärderaren tolkar och utvärderar nu den explicita skärningsoperatorn
@(Excel 365 dynamisk-matris-syntax, t.ex.=A2:A4 @ B2:B4). Lexern avger en ny tokenLT_ISECTför symbolen@, prioritetsparsern bygger en nodSA_ISECT(som binder stramare än^, lösare än%), och en ny utvärderareIntersectRangeslöser båda operanderna som intervall och returnerar värdet för den enda korsande cellen — Excels implicita skärningsregel. BIFF-token-serialiseraren avgertIsect $0Fså att operatorn rundtur-bevaras genom XLS, och sökvägen för formeltext-rekonstruktion avger den implicita blankstegsformen. Tidigare misslyckades sådana formler med tolkning - En standard Base64-kodare (
XlsBase64Encode) är nu tillgänglig, som speglar den befintligaXlsBase64Decode. Detta är förutsättningen för Agile-krypteringens skriv-sökväg, som avger saltValue / encryptedVerifierHashInput / encryptedKeyValue / encryptedHmacValue som Base64-attributvärden - Arbetsbokens händelse
OnProgressavfyras nu också under fullständig omberäkning (Recalculate), med en ny fasxlsxProgressCalculating. Tidigare avfyrade händelsen endast under läsning och skrivning, så långa full-omberäkningar gav UI:et ingen puls. Händelsen avfyras ungefär var 4% av cellerna för att undvika översvämning - De utökade dokumentegenskaperna (
docProps/app.xml) rundtur-bevarar nu tre ytterligare fält som Excel skriver för lösenordsskyddade / mallbaserade dokument:Manager,TemplateochDocSecurity(ett bitfält: 1=lösenordsskyddad, 2=skrivskydd rekommenderad, 4=skrivskydd framtvingad, 8=låst för annotering)
Version 2.142.0
Tillagt
- Den typade PivotTable-modellen bär nu ytan för metadata, källa, beräknat fält, "visa värden som" och gränser för delade objekt som den föregående analysrundan flaggade som gap.
TXLSPivotCachefårRefreshOnLoad/RefreshedBy/RefreshedDate/MissingItemsLimit/CreatedVersion/RefreshedVersion/MinRefreshableVersion/EnableRefresh/BackgroundQuery/SaveDataplus en typad form för kalkylbladskälla (SourceName/SourceRelId/SourceIsNamedRange);TXLSPivotCacheFieldfårFormula/DatabaseField/MemberPropertyField(beräknade fält) och gränserna för delade objekt (ContainsBlank/ContainsInteger/ContainsString/ContainsNumber/ContainsDate/MinValue/MaxValue/MinDate/MaxDate/HasBounds);TXLSPivotDataFieldfårShowDataAs/BaseField/BaseItemför transformeringarna "visa värden som" (procent-av / skillnad / löpande-summa / index). XLSX-skrivaren (BuildPivotCacheDefinitionXml/BuildPivotTableXml) respekterar alla dessa så att en programmatiskt byggd pivot (AddPivotTable) avger en rikarepivotCacheDefinition+pivotTableDefinition— refreshOnLoad / versionstrio / refreshedBy / namngivet-intervall-källa / beräknad cacheField-formel / sharedItems-gränser / dataField-subtotal + showDataAs. Pivottabeller lästa från en fil fortsätter att rundtur-bevara sin raw-XML ordagrant - Beteende för bildankare rundtur-bevaras nu genom en ny egenskap
AnchorTypepåTXLSXImage(xaTwoCell= flytta och ändra storlek med celler,xaOneCell= flytta men ändra inte storlek,xaAbsolute= varken flytta eller ändra storlek). Skrivaren väljer ankarelementet (xdr:oneCellAnchor/xdr:twoCellAnchor editAs=.../xdr:absoluteAnchor) för att matcha; läsaren tolkar elementnamnet + attributeteditAstillbaka. Detta mappar till Excels högerklick → Storlek och egenskaper → Egenskaper-dialog - Sidhuvud/sidfot rundtur-bevarar nu differentiering för jämna/första sidor.
TXLSXWorksheetfårEvenHeaderText/EvenFooterText/FirstHeaderText/FirstFooterTextplus de fyra<headerFooter>-växlarna (DifferentOddEven,DifferentFirst,ScaleWithDoc,AlignWithMargins). Filer där användaren aktiverade "Olika udda och jämna sidor" eller "Olika första sidan" förlorar inte längre de jämna/första-sid-sektionerna vid rundtur - Sidinställningar rundtur-bevarar nu de utökade attributen
<pageSetup>som Excel skriver för icke-standard utskriftsuppsättningar:Copies,FirstPageNumber+UseFirstPageNumber,HorizontalDpi,VerticalDpi,PrintErrors(visade/tomma/streck/NA),UsePrinterDefaults <sheetFormatPr>rundtur-bevarar nucustomHeight,zeroHeight,outlineLevelRowochoutlineLevelCol, så att filer där användaren satte en användarfast standardradhöjd, dolda standardrader, eller en standardöversiktsnivå inte längre förlorar det beteendet- Villkorsformatering av datastaplar rundtur-bevarar det standardattributet
gradient(övertoning vs. solid fyllning), ochTXLSDataBarSpecfår Excel 2010+-tilläggsfälten förx14(NegativeBarColor,NegativeBarColorSameAsPositive,GradientFill,AxisColormed tema/nyans,Direction,Border) på modellen så att API-konsumenter kan sätta dem - Kommentarsballonger rundtur-bevarar sin VML-ritning ordagrant. Läsaren fångar
xl/drawings/vmlDrawingN.vmlsom den är och skrivaren spelar upp den vid sparande (i stället för den inbyggda gul-ballong-mallen), så att varje ballongs användarsatta position / storlek / fyllningsfärg / synlighet överlever - Kommentarskroppar rundtur-bevarar per-kör-formatering.
TXLSXCommentfår en latRichText: TXLSXRichText-nyttolast (som återanvänder kör-modellen för delade strängar); skrivaren avger en<r><rPr>...</rPr><t>...</t></r>per kör när RichText bär formatering, och läsaren tolkar<b/>,<i/>,<sz val=N/>,<color rgb=.../>tillbaka så att fet / kursiv / storlek / färg överlever - Formelutvärderaren implementerar nu
SUBTOTAL(alla elva aggregatorer: AVERAGE / COUNT / COUNTA / MAX / MIN / PRODUCT / STDEV / STDEVP / SUM / VAR / VARP, plus 101–111 varianterna som ignorerar dolda) ochAGGREGATE(nitton aggregatorer med alternativkodsflaggorna 0–7 som väljer fel/dold-hoppning, inklusive familjen LARGE / SMALL / MEDIAN / PERCENTILE / QUARTILE med derask-argument). Både föll tidigare igenom till sökvägen för funktioner som saknar stöd;SUBTOTALvar registrerad men saknade implementation,AGGREGATEvar inte registrerad alls - Kalkylbladsfunktionerna
CELLochINFOutvärderas nu:CELLstöderaddress,col,row,type,contents,filename,format, och GUI-tillståndinfo_type(color,parentheses,prefix,protect,width) returnerar neutrala standarder;INFOstöderosversion,system,recalc,memavail,numfile,release,origin. Båda var registrerade men föll igenom till#NAME? - Villkorsformatering rundtur-bevarar nu attributen
stopIfTrue,stdDev,equalAverageochtimePeriodcfRule, plus hela den tio-medlemmar storatimePeriod-familjen (igår / idag / imorgon / senaste7Dagar / förraVeckan / dennaVeckan / nästaVeckan / förraMånaden / dennaMånaden / nästaMånaden). Dessa släpptes tyst vid läsning; Excel skriver dem rutinmässigt på reglerna över-medel och datum-band, och att släppa dem ändrade hur regeln utvärderades på nytt vid återöppnande - CSV-export fick en egenskap
TXLSCsvEncodingpåTXLSCSVSavermed tre lägen:ceSystemAnsi(äldre standard),ceUtf16(det historiska Unicode-läget), ochceUtf8som skriver en UTF-8-fil med byte-ordningsmarkören EF BB BF — den moderna Excel-vänliga standarden som återöppnas utan textimportguiden på valfri lokal - CSV-import fick en egenskap
LocaleTolerantNumberspåTXLSCSVLoader. När aktiverad, prövas ett numeriskt fält som misslyckas med tolkning med.som decimaltecknet på nytt med,(och vice versa), så att ett europeiskt3,14importeras som talet 3,14 på en USA-maskin. Strikt läge (standard) är oförändrat så att nolla-ledande text, postnummer och andra komma-bärande tokens förblir text
Rättat
- XLSX-motorns strikta slutsats dragning av tal tvingar inte längre komma-bärande textfält (t.ex.
3,14) till tal via DelphisTryStrToFloat, som tolererar ett komma som tusenseparator även närThousandSeparatorär satt till#0. Sådana fält förblir nu text om inte det nya alternativetLocaleTolerantNumbersär aktiverat
Version 2.140.0
Ändrat
- XLSX-motorn komprimerar nu sina sex per-attribut-stil-pooler (Teckensnitt / Fyllningar / Kanter / TalFormat / Justeringar / Skydd) före varje sparande: ett nytt pass
CompactStylePoolsskannar varje cells stilindex och kastar poolposter som inte längre refereras av någon cell — de poster som ackumuleras när celler rensas, raderas, eller stylas om efter att poolposten först lades till. De komprimerade poolerna producerar en mindre<cellXfs>-tabell i utmatningsfilen (vanligtvis 30–70% mindre för dokument som har gått igenom flera redigeringscyklar), vilket matchar den komprimering XLS-motorn redan gör viaCreateAllReferredList
Version 2.139.0
Tillagt
- Ritlager-shapes, kopplingar, gruppshapes och icke-diagram-grafiska ramar rundtur-bevaras nu ordagrant: när XLSX-läsaren påträffar ett ankare för
<xdr:sp>,<xdr:cxnSp>,<xdr:grpSp>, eller icke-diagram<xdr:graphicFrame>som den typade modellen (bilder / diagram / textrutor) inte täcker, fångar den den kompletta ankare-XML:en och spelar upp den oförändrad vid sparande — så att ritningar skapade i Excel (pilar, bildtexter, grupperade shapes, smart art-ramar) överlever en läs→skriv-cykel utan förlust. Varje kalkylblad exponerarRawDrawingAnchorCount/RawDrawingAnchor(i)för inspektion
Version 2.138.0
Tillagt
- Cache-lagrade cellvärden för externa länkar rundtur-bevaras nu på XLSX-motorn: en ny modell
TXLSXExternalCell/TXLSXExternalRow/TXLSXExternalSheetDatahänger på varjeTXLSXExternalLinkviaAddSheetData/AddRow/AddCell, skrivaren avger det matchande blocket<sheetDataSet>inutiexternalLinkN.xml, och återöppnande återställer varje cache-lagrat värde.FindCachedCell(sheetIdx, row, col)slår upp det senast kända värdet för en externt refererad cell — den data som Excel själv visar när den fjärranslutna arbetsboken är frånkopplad
Version 2.137.0
Tillagt
- OOXML-flaggan cellXf
quotePrefix— Excels mekanism för att markera lagrad text som en literal så att den överlever numerisk tvingande (CSV-importerade koder som00123, långa kontonummer, allt användaren prefixade med en apostrof) — rundtur-bevaras nu på XLSX-motorn:TXLSXAlignmentfår en egenskapQuotePrefix, dedupliceringsräkningen för justeringspoolen räknar den, skrivaren avgerquotePrefix="1"på matchande<xf>, och återöppnande återställer den oavsett om cellXf bar ett barn<alignment/>eller var en bar självt-stängande<xf quotePrefix="1"/>
Version 2.136.0
Tillagt
- Diagramaxlar är nu fullt programmerbara: en ny modell
TXLSXChartAxispå varje diagramsCategoryAxisochValueAxisexponerarLogBase(logaritmisk skala, t.ex. 10 för bas-10-logaritm),Orientation(normal / omvänd),MajorGridlines/MinorGridlines,MinValue/MaxValue(NaN = auto),MajorUnit/MinorUnit,CrossesAt,TickLblPosochDispUnits(visningsenheter: hundratal / tusental / miljoner / miljarder / biljoner). Alla standardvärden är Excels auto-beteende, så befintliga diagram avger samma XML som tidigare; skrivaren lägger till<c:logBase>,<c:orientation>,<c:majorGridlines>,<c:majorUnit>,<c:crossesAt>,<c:tickLblPos>och<c:dispUnits>endast när anroparen sätter ett icke-standardvärde, och att återöppna ett sådant diagram återställer varje inställning
Version 2.135.0
Tillagt
- Diagram-felstaplar är nu programmerbara och rundtur-bevaras på XLSX-motorn: varje
TXLSXChartSeriesfårAddErrorBar(dir)som returnerar enTXLSXChartErrBarmedValueType(fast / procent / stdDev / stdErr / anpassad),Value,PlusValue/MinusValue(anpassad) ochNoEndCap; ett felstapel-plats per riktning (X / Y) lagras, skrivaren avger det matchande blocket<c:errBars>, och återöppnande återställer riktning, typ och magnitud så att vetenskapliga / tekniska diagram behåller sina osäkerhetsindikatorer
Version 2.134.0
Tillagt
- Diagram-dataetiketter är nu programmerbara och rundtur-bevaras på XLSX-motorn: varje
TXLSXChartSeriesfår egenskapernaShowValue,ShowCategoryName,ShowSeriesName,ShowLegendKey,ShowPercent,ShowBubbleSizeochSeparatorsom avger det matchande blocket<c:dLbls>med sina<c:show*/>-barn; att återöppna ett sådant diagram återställer växlarna så att inställningarna 'visa värde' / 'visa procent' överlever en spara-redigera-spara-cykel
Version 2.133.0
Tillagt
- Vektorbildformaten EMF och WMF är nu förstaklass bildtyper på XLSX-motorn:
TXLSXImageFormatfårxlsxImageEmf/xlsxImageWmf, skrivaren avger de matchande innehållstypernaimage/x-emf/image/x-wmfoch filändelserna.emf/.wmf, och format-lukten känner igen EMF (01 00 00 73), placerbar WMF (D7 CD C6 9A) och standard-WMF-rubriker — så att bilder inklistrade från Word eller PowerPoint som Excel bäddar in som vektordata nu rundtur-bevaras i stället för att släppas
Rättat
- BIFF8-diagramunderströmmar vars GELFRAME-post (
$1066) spänner över gränsen för 8224 byte fortsättning förlorar inte längre fyllnings-/linjegeometri: läsaren accepterar nu GELFRAME-självfortsättning (Excel skriver en annan$1066i stället för den standard$003CCONTINUE) och låter också standard CONTINUE-poster sy ihop inuti diagramkontext, vilket matchar skrivarens befintliga dispatch för flera chunk - BIFF8-bakgrundsbilder för sidhuvud/sidfot (
$0866) vars nyttolast spänner över fortsättning-poster korrumperas inte längre: varje fortsättningssegment upprepar ett 14-byte MSO-rubrik som läsaren nu strippar före sammanslagning, så att den inbäddade bilddatan inte längre skiftas med 14 byte per segment
Version 2.132.19
Rättat
- Uppstädning av äldre XLS- och krypterad XLSX-lagring frigör nu compound-fil-strömmar deterministiskt, vilket förhindrar att temporära filer förblir låsta efter spara, ladda, VBA eller krypterad-paket-operationer
- Formaterad visning av utökade heltals-variantvärden applicerar nu det begärda taletformatet konsekvent, vilket matchar det befintliga beteendet för standard heltalsvärden
- Delade strängar, datavalidering, diagramblad, ZIP-arkiv, PNG-ritning och upprepad text-formler städar nu upp temporära buffertar mer försvarsvis under felsökvägar och stora textoperationer
Version 2.132.18
Rättat
- Värdetilldelning för intern strängbyggare rensar nu tidigare text när den tilldelas en tom sträng, vilket förhindrar att återanvända XML- och textbuffertar behåller inaktuellt innehåll
Version 2.132.17
Rättat
- Skapande av XLS-diagramblad accepterar nu citerade källbladnamn som innehåller ett utropstecken, avvisar övertora radreferenser innan de kan slå runt till en giltig BIFF-rad, och begränsar trendlinje-förklaringnamn till BIFF:s korttext-gräns så att genererade diagramposter förblir välformade
Version 2.132.16
Rättat
- Interna listor för strängnycklar och objektnycklar tar nu bort inaktuella uppslagningsnycklar när en befintlig plats skrivs över, vilket förhindrar att gamla nycklar löser upp till ersättningsposter
- Ersättningar i interna objektlistor och transformerade unik-nyckel-cacher frigör nu ägda poster vid överskrivning, rensning och destruktion, vilket förhindrar läckage under upprepade arbetsboks- och stiloperationer
Version 2.132.15
Rättat
- Direkta strömmande XLSX-läsningar avkodar nu booleska celler som lagrar OOXML-literala värden som true och false
- Indexuppdateringar för intern sträng-lista tar nu bort inaktuella nycklar när en befintlig plats skrivs över, vilket förhindrar att gamla namn löser upp till det nya värdet
Version 2.132.14
Rättat
- BIFF8-meddelanden för datavalidering-prompt och -fel vars första tecken är NUL bevarar nu postgränser i stället för att skriva en felmatchad DV-längd
Version 2.132.13
Rättat
- XML-texttolkning avvisar nu nästlade enhetsstarter som && i stället för att tyst släppa den oavslutade enheten
- Dekompilerade formler skriver nu numeriska konstanter med en invariant punkt-decimaltecknare så att formeltext förblir portabel över regionala inställningar
Version 2.132.12
Rättat
- PNG-transparens för palett ignorerar nu transparenta färger som inte finns i bildpaletten i stället för att markera ett godtyckligt palettindex som transparent
- SUMPRODUCT-formler slutar nu skanna återstående rader efter den första raden utanför-använt-intervall i långa intervallargument, vilket undviker onödiga cellläsningar samtidigt som det beräknade resultatet bevaras
Version 2.132.11
Rättat
- TEXT-formler returnerar nu #VALUE! när ett ogiltigt eller för stort talformat inte kan appliceras i stället för att sväljas som ett tomt framgångsresultat
- Trunkering av tabell för delade strängar frigör nu de korrekta svansblocken och håller tabellen återanvändbar efter stora raderingscykler
Version 2.132.10
Rättat
- Exakta MATCH-uppslag respekterar nu Excel-jokertecken, och metadata för klassisk XLS-rad-offset ignorerar nu rader utanför-block i stället för att korrumpera sparad arbetsboksstruktur
- PNG-komprimerad text-metadata frigör nu temporära buffertar på ett säkert sätt om chunk-bearbetning kastar
Version 2.132.9
Rättat
- PNG-komprimerad text-metadata, chunk-lista-insättning och CRC-byte-ordningshantering förblir nu stabila över Windows-plattformar som stöds
Version 2.132.8
Rättat
- LEFT- och RIGHT-formler rapporterar nu #VALUE! när num_chars inte kan konverteras till ett giltigt heltal
Version 2.132.7
Rättat
- SEARCH-formler stöder nu Excel-jokertecken ?, * och ~
- Validering av kalkylbladsnamn avvisar nu ogiltiga tecken för Excel-bladnamn vid namnbyte av blad
- Borttagning av manuell sidbrytning fungerar nu efter att en brytning har infogats före befintliga brytningar
Version 2.132.6
Rättat
- DATE-formler matchar nu Excel-kompatibelt rullningsbeteende för månad och dag, inklusive anrop som DATE(2008,14,2)
- Hidden-läsningar för kolumnintervall rapporterar nu varje kolumns synlighet i stället för att blanda i rad-synlighetstillstånd
- BIFF-rad-metadata vid radgränsen Excel 97-2003 läses nu in korrekt så att inställningar för rad 65536 bevaras
Version 2.132.5
Rättat
- BIFF-inläsning av arbetsbok tolererar nu felaktiga kalkylblads-tab-färger, trunkerade pivotetiketter och ogiltiga pivot-cache-datumfragment utan att kasta undantag
- Inläsning av arbetsbokspaket och strömmar städar nu upp misslyckade arkiv- och lagringsuppsättningssökvägar mer konsekvent, vilket undviker läckta resurser vid felaktig indata eller misslyckade ström-stödda lagringsöppningar
Version 2.132.4
Rättat
- Hantering av ZIP-arkiv slutför nu det aktuella paketet innan samma arkivobjekt återanvänds för ett annat paket, och filbaserad arkivöppning tillåter nu samtidiga delade läsare
Version 2.132.3
Rättat
- Skrivning av arbetsbokspaket bevarar nu icke-ASCII ZIP-postnamn med UTF-8-metadata, vilket förhindrar mojibake när paketdelsnamn innehåller Unicode-text
- XML-utmatning skriver nu rå text- och attributvärden som UTF-8-byte när escapering är inaktiverad, vilket matchar den deklarerade dokumentkodningen
- Formelutvärdering rensar nu sitt pågående tillstånd efter återanropsundantag och hanterar korrekt stora-tal-anullering på Unicode-Delphi-byggen
- Matrisutdrag för matrisformel respekterar nu nedre gränser som inte är noll för Variant-matriser i stället för att kasta för giltiga en-baserade matriser
Version 2.132.2
Ändrat
- Intervallsortering använder nu ett stabilt O(n log n)-ordningspass för stora sorterade intervall, samtidigt som befintligt rundtur-beteende för radinnehåll bevaras
- Numerisk tolkning och formatering för ODS och XLSX återanvänder nu invariant formateringstillstånd i stället för att skapa det upprepade gånger i heta sökvägar
Rättat
- XML-tolkning accepterar nu giltiga CDATA-block och UTF-8-bearbetningsinstruktioner utan att korrumpera text eller misslyckas med giltig markup
- Formeltolkning accepterar nu signerad vetenskaplig notation och avvisar felaktiga eller trunkerade formelbyte på ett rent sätt
- Klassiska sökvägar för öppna och spara av arbetsbok frigör nu strömmar och lagringar på ett tillförlitligt sätt efter fel, vilket förhindrar att temporära filer förblir låsta
- Hantering av binär buffert validerar nu kopierings- och läsggränser, växer destinationsbuffertar före kopiering, och avvisar felaktiga bakåtreferenser för VBA-komprimering på ett rent sätt
Version 2.132.1
Rättat
- Rättade felmeddelandet som kastas när en krypterad arbetsbok använder ett krypteringsschema som saknar stöd: det påstod tidigare att ECMA-376 Agile-kryptering inte kunde läsas, även om Agile-avkryptering (AES-128/192/256) har stötts sedan 2.119.0. Meddelandet listar nu de scheman som faktiskt stöds
- Open pekar nu anropare mot TXLSXWorkbook.OpenEncrypted när den vägrar ett krypterat OOXML-paket, i stället för att säga att krypterade arbetsböcker inte stöds
Version 2.132.0
Ändrat
- XLSX-inläsning är avsevärt snabbare: XML-läsaren intern-lagrar nu upprepade elementnamn och konverterar text- och attributvärden direkt från sin skanningsbuffert, vilket skär per-cell minnesallokeringar med mer än hälften. Flertrådig öppning (2.128.0) drar mest nytta av detta — de allokeringar som togs bort var de som serialiserade arbetartrådarna — med fler-blad-arbetsböcker som nu öppnar nästan dubbelt så snabbt som den entrådade sökvägen på flerkärniga maskiner; entrådad öppning vinner också några få procent
Version 2.131.0
Tillagt
- Kalkylblads-tilläggsblock som HotXLS inte modellerar —
<ext>-poster i ett kalkylblads<extLst>annat än sparklines, som skrivs av Excel för funktioner som x14-villkorsformatering eller slicers — bevaras nu ordagrant när en arbetsbok öppnas och skrivs tillbaka vid sparande, så att öppna och spara om en fil inte längre strippar dessa tillägg. De fångade blocken är synliga skrivskyddade viaWorksheet.RawWorksheetExtsoch följer med bladet när det kopieras till en annan arbetsbok
Version 2.130.0
Tillagt
- Sparade arbetsböcker som innehåller formler bär nu delen
xl/calcChain.xmlför beräkningskedjan, vilket låter Excel så sin beroendemotor från den inspelade ordningen i stället för att bygga om den vid inläsning. Efter ettRecalculate-anrop följer kedjan den topologiska ordningen för beroendegrafen; annars listas formelceller i dokumentordning (ett giltigt tips som Excel förfinar i farten). Delen, dess innehållstyp och dess arbetsboksrelation avges tillsammans och överlever öppna/spara-rundturer
Version 2.129.0
Tillagt
- Ny egenskap
Workbook.ParallelParseThreadsställer in antalet arbetare för den flertrådig öppna-sökvägen som introducerades i 2.128.0 (0 = automatisk, en arbetare per CPU-kärna). Tolkning av kalkylblad allokerar tungt och minnesallokering serialiseras över trådar, så på vissa arbetsbelastningar presterar en liten explicit begränsning lika bra som — eller bättre än — det fulla kärnantalet; egenskapen låter integratorer välja vad som mäts bäst för deras filer
Version 2.128.0
Tillagt
- Flertrådig XLSX-inläsning: att öppna en arbetsbok tolkar nu varje kalkylblads XML — den dominerande kostnaden på stora filer — på arbetartrådar, så att fler-blad-arbetsböcker öppnar snabbare på flerkärniga maskiner. Blad-delar extraheras från paketet i förväg och varje arbetare rör endast sitt eget blad, så att den inlästa arbetsboken är identisk med det seriella resultatet
- Ny egenskap
Workbook.ParallelParse(standardTrue) växlar tillbaka till entrådad tolkning när den sätts tillFalseföreOpen— en enkel avstängning för begränsade miljöer
Ändrat
- Läs-återanropet
OnProgressavfyrar fortfarande en gång per kalkylblad på anropstråden, nu när varje blad skickas för tolkning snarare än strikt mellan blad
Version 2.127.0
Tillagt
- Inkrementell omberäkning på XLSX-motorn: den nya metoden
Workbook.Recalculatebygger en formelberoendegraf, utvärderar varje formelcell en enda gång i beroendeordning och lagrar varje resultat i cellens cache-värde. Efterföljande anrop utvärderar endast de celler som påverkas av värdeändringar sedan det senaste passet — på kedjade modeller (finansiella blad, rapport-kaskader) omberäknar redigering av en indata endast dess nedströms formler i stället för hela arbetsboken - Flyktiga funktioner (
NOW,TODAY,RAND,OFFSET,INDIRECT) omberäknas vid varje pass, liksom formler vars referenser inte kan lösas statiskt (flerområdes-namn, externa arbetsböcker) — motorn över-omberäknar hellre än att riskera ett inaktuellt resultat - Referenscykler upptäcks i stället för att loopa:
Recalculatereturnerar en felkod när formler bildar en cirkulär kedja, hoppar över cykelmedlemmarna och utvärderar ändå varje formel utanför cykeln. Korsark-referenser, namngivna intervall och CSE-matrisformler (resultat spillda över det förankrade intervallet) deltar fullt ut i beroendegrafen
Ändrat
- Den befintliga sökvägen för beräkning på begäran
Calculateär oförändrad;Recalculateär ett separat opt-in-API och arbetsböcker som aldrig anropar det beter sig exakt som tidigare
Version 2.126.0
Tillagt
- Sparklines på XLSX-motorn: kalkylblad bär nu sparkline-grupper — de mini-diagram inuti celler som Excel renderar från ett dataintervall — med de tre Excel-typerna (linje, kolumn, vinst/förlust-stapel). Skapa en med
Worksheet.AddSparklineGroupeller bygg grupper manuellt genom den nya samlingenWorksheet.SparklineGroups, genom att lägga till valfritt antal sparklines per grupp med ett källintervall och en visningscell var - Sparkline-grupper exponerar det fullständiga alternativ-utbud som Excel erbjuder: linje-vikt, datapunkt-markörer, växlar för markering av hög/låg/negativ/första/sista punkt, åtta ARGB-färg-plats (serie, negativ, axel, markörer, första, sista, hög, låg), per-grupp eller per-sparkline vertikal-axel-skalning och hantering av gap/noll/spann för tomma källceller
- Sparklines överlever en fullständig spara→öppna-rundtur: sparande avger kalkylbladets
extLst-tilläggsblock ([MS-XLSX] §2.3.6) så att Excel 2010 och senare renderar sparklines, och att öppna en sådan arbetsbok — oavsett om den skrivits av HotXLS eller Excel — bygger om varje grupp, alternativ och intervall så att de består genom redigeringcykler. Att kopiera ett blad till en annan arbetsbok klonar också dess sparkline-grupper
Version 2.125.0
Tillagt
- Sju DBCS-byte-räknande textfunktioner utvärderas nu på båda motorerna:
LEFTB,RIGHTB,MIDB,LENB,FINDB,SEARCHBochREPLACEB. Var och en behandlar sin indata som en bytesträng under systemets ANSI-kodsida så att CJK-tecken (kinesiska/japanska/koreanska) upptar 2 byte medan ASCII upptar 1; operationer som skulle dela ett DBCS-ledande/släpande byte-par snäpper tillbaka till närmaste teckengräns, vilket matchar Excels beteende
Version 2.124.0
Tillagt
- Fem hypotestest- och distributionsfunktioner utvärderas nu på båda motorerna:
Z.TEST(ensidig högersvans-sannolikhet att urvalsmedelvärdet är minstxunder nollhypotesen),T.TEST(parad två-urval t-test p-värde; oparade lika/olikvärdig-varians-typer är uppskjutna),CHISQ.TEST(anpassnings-godhet p-värde via övre-svans chi-i-två CDF),HYPGEOM.DIST(hypergeometrisk PMF/CDF med den kumulativa flaggan), ochNEGBINOM.DIST(negativ-binomial PMF/CDF). P-värde-matematiken återanvänder motorns befintliga normal/Student-t/chi-i-två-CDF-hjälpare via fristående nästlade rutiner, så ingen befintlig Calc-metod ändras
Version 2.123.0
Tillagt
- Fjorton formelfunktioner från en granskning av kompatibilitetsgap utvärderas nu på båda motorerna:
AVERAGEIF(enskilt-kriterium-medel, syskon-funktionen till SUMIF/COUNTIF som motorn saknade),WORKDAY.INTLochNETWORKDAYS.INTL(anpassade helgmasker via nummer 1-17-koderna eller en 7-tecken Mån-Sön-sträng),XIRRochXNPV(internränta och nuvärde för oregelbundna-datum kassaflöden, lösta genom inneslutande bisektion),CEILING.PRECISE/FLOOR.PRECISE/ISO.CEILING(tecken-agnostisk avrundning),PERCENTRANK.INC/PERCENTRANK.EXC(percentilrang med matchande inklusiv/exklusiv interpolation),MODE.MULT(spiller varje värde som delar högsta frekvens),ERF.PRECISE(Gauss-felfunktion via sin alternerande serie),ACCRINT(upplupen ränta), ochISPMT(periodsränta för konstant-huvud-amortering)
Version 2.122.0
Tillagt
- Trådade kommentarer (Excel 365) rundtur-bevaras nu på XLSX-motorn:
AddThreadedCommentochAddThreadedReplypå ett kalkylblad bygger ett förälder→barn-svarsträd förankrat vid en cell, auto-registrerar varje författare på en ny arbetsboksnivåPersons-lista, och avger den dedikerade delenxl/threadedComments/threadedCommentN.xmlper blad plus den arbetsboksomfattandexl/person/person.xml; att återöppna ett sådant paket bygger om konversationsträdet och deltagarlistan från dessa delar, så att svarskedjor, identifierare och visningsnamn överlever en fullständig läs→skriv-cykel
Version 2.121.0
Tillagt
- Formelutvärderaren beräknar nu Excel 365-funktionerna för dynamiska matriser
XMATCH,SORT,UNIQUEochSEQUENCE, vilka ansluter sig till de redan stöddaXLOOKUPochFILTER; resultat spiller som 2-D-matriser så attSEQUENCE(3;2;1;1)returnerar ett 3×2-rutnät,SORTsorterar om rader efter valfri nyckelkolumn stigande eller fallande,UNIQUEkollapsar dubblettrader och behåller den första förekomsten, ochXMATCHrapporterar den 1-baserade positionen för ett uppslagsvärde med samma exakta/jokertecken/nästa-mindre/nästa-större matchningslägen somXLOOKUP
Version 2.120.0
Tillagt
- Ny metod
PasteFromClipboardpå båda motorernas kalkylblad läser tab-separerad text från Windows-urklipp — den nyttolast Excel placerar där när ett intervall kopieras, eller ett vanligt urval från något annat program — och skriver det till celler med början vid den angivna raden och kolumnen, med samma typ-promotion för tal/datum/boolesk som CSV-laddaren redan använder; inledande=-text blir en levande formel, vilket matchar hur Excel självt klistrar in
Version 2.119.0
Tillagt
- Läsning av ECMA-376 Agile-kryptering — det lösenordsskydd Excel 2010 och senare applicerar som standard:
OpenEncryptedtolkar nu XML-beskrivaren för kryptering, härleder nycklarna med SHA-512 spin-count-hashning, verifierar lösenordet och avkrypterar AES-CBC-segmenterat paket (AES-128/192/256), så att arbetsböcker lösenordsskyddade direkt i Excel öppnas utan att Excel är installerat OpenEncryptedhanterar alla tre fallen genom en ingångspunkt: vanlig okrypterad.xlsx, Standard Kryptering (vårSaveAsEncrypted-rundtur), och Agile-kryptering; ett fel lösenord kastar samma tydliga fel i varje schema
Rättat
- Att spara en
.xlsx-arbetsbok vars kalkylblads-XML översteg ungefär 116 KB — cirka 3 000 rader med typisk strängdata — kraschade med ett stack-overflow; ZIP-skrivarens CRC-32-kontrollsumma bearbetar nu data i 64 KB-sektorer, vilket håller komprimerings-backend borta från sin stora-inmatning-kodsökväg som allokerar en överdimensionerad scratch-buffert på stacken. Kontrollsummeresultatet är oförändrat
Ändrat
- Deduplicering av delade strängar körs nu genom en hash-tabell i stället för att skanna stränglistan, och delen
sharedStrings.xmlsammansätts genom den förväxta strängbyggaren i stället för upprepad sammanslagning — tillsammans med det konstant-tids cellindex tar detta sparandet av 120 000 strängceller från tiotals sekunder ner till ungefär en tredjedels sekund
Version 2.117.0
Ändrat
- XLSX-cellåtkomst är nu konstant-tids: kalkylbladets cellsamling bär ett hashindex över (rad, kolumn), vilket ersätter den tidigare linjära skanningen — så att populerande, tillbakaläsning eller inläsning av ett stort blad skalas linjärt med cellantalet i stället för kvadratiskt; att fylla 100 000 celler tar nu väl under en sekund där det tidigare tog minuter
- Hastighetsökningen gäller över hela motorn:
Cells[r, c],HasCell, arbetsboksinläsning, sparande, korsarbetsboks-kopior, auto-passning och varje hjälpare som rör celler efter position drar alla nytta; rad- och kolumninfogning eller -borttagning bygger om indexet i ett enda pass
Version 2.116.0
Tillagt
- PDF-export i den klassiska XLS-motorn: nya metoder
SaveAsPDFpå kalkylbladet och arbetsboken renderar det använda intervallet (eller ett anropartillhandahållet intervall genomTXLSPDFExport) som ett paginerat rutnät — cellvisningstext genom talformatet, rutnätslinjer, kolumnbredder härledda från Excel-bredden och skalade för att passa sidan, och automatisk flersidig paginering - Utmatning är en fristående PDF 1.4-fil utan externa beroenden, med det inbyggda Helvetica-teckensnittet med WinAnsi-textkodning; stående eller liggande A4-orientering, sidmarginal och teckenstorlek är konfigurerbara på exportören
- Detta är en data-presentations-export bredvid HTML och RTF: den återger tabell-innehåll och layout för rapporter och dokumentöverlämning snarare än full per-cell-styling
Version 2.115.0
Tillagt
- Skapande av diagram med ett anrop från ett dataintervall i XLSX-motorn: ny
AddChartFromRangebygger ett komplett diagram och härleder sina serier automatiskt från ett rektangulärt datablock — motsvarigheten till Excels "infoga diagram från markering" — med serier-i-kolumner eller transponerade serier-i-rader-layout - Namngivna genvägar
AddColumnChart,AddBarChart,AddLineChart,AddPieChartochAddAreaChartväljer en diagramtyp efter namn över samma ett-anrop-flöde, genom att läsa serienamn från rubrikraden och kategorialetiketter från den första kolumnen - Seriereferenser kvalificeras med källbladets citerade namn, så att ett genererat diagram fortsätter fungera när det placeras på valfritt blad och överlever spara och ladda om
Version 2.114.0
Tillagt
- RTF-import i den klassiska XLS-motorn, inversen till den befintliga
SaveAsRTF-exporten: nya metoderOpenRTFpå kalkylbladet och arbetsboken läser ett RTF-dokuments tabell till kalkylbladsceller —\cellavancerar kolumnen,\rowavancerar raden — med början vid A1 - Återvinner tabelldata från filer producerade av
SaveAsRTF, Word eller WordPad: numerisk text lagras som tal så att formler fortsätter fungera, hex- (\'hh) och Unicode- (\uN) escapes avkodas korrekt, och rubrikgrupper (teckensnittstabell, färgtabell, stilmall, info) hoppas över - Dokument utan tabell faller tillbaka på styckes-läge, genom att importera varje
\parsom nästa rad i kolumn A
Version 2.113.0
Tillagt
- Läsning av krypterade
.xlsx-arbetsböcker:OpenEncryptedavkrypterar nu ECMA-376 Standard Kryptering (AES-128)-paket, vilket fullbordar rundturen med den befintligaSaveAsEncrypted— den läser compound-fil-behållaren, härleder nyckeln från lösenordet, verifierar den och laddar den återvunna arbetsboken - Ett fel lösenord kastar ett tydligt "lösenordet är felaktigt"-fel, och
OpenEncryptedpå en vanlig okrypterad.xlsxfortsätter att ladda den direkt, så att anropare kan dirigera varje fil genom en ingångspunkt
Ändrat
- Meddelandet för kryptering som saknar stöd namnger nu ECMA-376 Agile-kryptering specifikt som det återstående schemat som saknar stöd, eftersom läsning och skrivning av Standard Kryptering båda är tillgängliga
Version 2.112.0
Tillagt
- Ny egenskap
TaggedTextpå XLSX-celler konverterar mellan rich text och lättviktig markup:<b>,<i>,<u>,<s>,<sub>,<sup>,<color=#RRGGBB>,<font=Name>och<size=N>, med</>/&-escaper — så att flervals-cellämningsinnehåll kan produceras från en mallsträng i stället för att sättas samman kör-för-objekt för hand - Skrivning av markup bygger kör-listan och behåller
Valuesom den sammanslagna vanliga texten; markup utan taggar lagrar en vanlig sträng utan rich-nyttolast; läsning serialiserar varje körs attribut som kompletta tagg-uppsättningar; okända taggar passerar som bokstavlig text
Rättat
- En rich-text-körning som helt består av blanksteg (till exempel ett enda stylat blanksteg mellan ord) överlever nu spara och ladda om; tidigare släpptes blanksteget när filen öppnades på nytt
Version 2.111.0
Tillagt
- Ny händelse
OnProgresspå XLSX-arbetsboken rapporterar laddnings- och spar-forlopp: den avfyras en gång per kalkylblad när det tolkas underOpeneller avges underSaveAs, bärandes fasen (läsning eller skrivning), det aktuella 1-baserade bladnumret och totalen — så att program kan driva en förloppsindikator över långa fler-blad-operationer till försumbar återanropskostnad
Version 2.110.0
Tillagt
- Ny radmarkör i dataset-stil
TXLSRowCursorför.xlsx/.xlsm-filer:Open,SelectSheet, sedanFindFirst/FindNextgår igenom ett kalkylblad en rad i taget med endast den aktuella radens celler i minnet — ett drag-drivet alternativ tillTXLSDirectReader:s återanrop för sekventiell bearbetning av blad med flera miljoner rader - Varje rad exponerar sitt 1-baserade kalkylblads-radnummer, de populerade cellerna i dokumentordning (typat värde, formeltext, stilindex), och en
ValueByCol-uppslagning som returnerarNullför kolumner som inte är populerade på den raden; rader utan populerade celler hoppas över - Bladnamn och antal är tillgängliga efter
Open(fil- och strömöverlagringar), med delade strängar och detektering av datumformat hanterat på samma sätt som för den strömmande läsaren
Version 2.109.0
Tillagt
- Ny "formatpensel"
TXLSXCellFormatför XLSX-motorn: beskriv teckensnitt, fyllning, kant, justering, talformat och skydd en gång, stämpla sedan valfritt antal mål medApply(enskild cell),ApplyRange,ApplyRows,ApplyColsellerApplySheet - Endast de aspekter som faktiskt rörts appliceras — en pensel som bara sätter
Font.Boldlämnar målens fyllningar, kanter och talformat orörda — så att penslar komponerar med befintlig formatering som Excels format-målare - Varje applicering löser upp de rörda aspekterna i arbetsbokens stil-pooler en enda gång och skriver sedan endast pool-index per cell, så att formatering av stora intervall kostar en pool-uppslagning per aspekt snarare än per cell;
ApplyRangematerialiserar saknade celler medan rad-/kolumn-/blad-formerna stämplar endast befintliga celler
Version 2.108.0
Tillagt
- Lokaliserbar boolesk visningstext: de nya variablerna
XLSBooleanTrueText/XLSBooleanFalseTextstyr hur booleska cellvärden renderas varhelst visningstext produceras —FormattedText, HTML-export och auto-passnings-mätning — så att lokaliserade program kan visa till exempel WAHR/FALSCH eller VRAI/FAUX
Ändrat
- Booleska celler visas nu som
TRUE/FALSEsom standard, vilket matchar Excels rutnät, i stället för kör-tidensTrue/False-kapitalisering
Version 2.107.0
Tillagt
- Ny händelse
OnPasswordpå den klassiska XLS-arbetsboken: närOpenmöter en krypterad arbetsbok och det tillhandahållna lösenordet saknas eller är fel, frågar händelsen programmet efter ett lösenord och försöker öppna igen (upp till tre försök) — så att interaktiva verktyg kan be användaren i stället för att för-ladda lösenord eller inspektera felkoder - Händelsen tar emot det aktuella lösenordet via referens och en flagga
Retry; att lämnaRetryvidFalseger upp och returnerar det ursprungliga lösenordsfelet
Version 2.106.0
Tillagt
- Ny klass
TXLSFileMonitorbevakar en arbetsboksfil på disk och avfyrarOnFileChangednär en annan process — typiskt Excel — sparar över den, så att program kan ladda om och uppdatera sin vy automatiskt - Pollningsbaserad (senaste-skrivning-tid plus storlek,
IntervalMskonfigurerbar, 1 s standard), så att det fungerar på lokala diskar och nätverksdelar lika utan en meddelande-loop;SynchronizeEventväljer mellan huvudtråds-leverans för UI-hanterare (standard) och direkt vakartråds-leverans för konsol- eller service-kod - En fil som kortvarigt försvinner under en spar-cykel avfyrar inte en falsk händelse; ändringen rapporteras när det nya innehållet är på plats
Version 2.105.0
Tillagt
- Begränsad auto-passning i den klassiska XLS-motorn, vilket matchar de gränser XLSX-motorn redan erbjuder: nya överlagringar
AutoFit(Columns, AMin, AMax),ColumnsAutoFit(AMinWidth, AMaxWidth)ochRowsAutoFit(AMinHeight, AMaxHeight)klämmer varje passad kolumnbredd (Excel-bredd-enheter) eller radhöjd (punkter) till det angivna intervallet — 0 lämnar en sida obegränsad, och en helt-tom kolumn eller rad får ändå det begärda minimumet
Version 2.104.0
Tillagt
- Ny skrivskyddad egenskap
FormattedTextreturnerar en cells visningstext — det lagrade värdet renderat genom dess talformat, på det sätt Excel visar det i rutnätet — vilket täcker tusentals-separatorer, decimaler, procent, datum- och tidsmasker, fler-sektion positiv/negativ/noll-masker och booleska format - Tillgängligt i båda motorerna: på
IXLSrangei den klassiska XLS-motorn (fler-cells-intervall renderar sin ankarcell) och påTXLSXCelli XLSX-motorn (rich-text-celler returnerar sin sammanslagna kör-text)
Version 2.103.0
Tillagt
- Ny funktion
DetectExcelContentFormat(filnamn- och strömöverlagringar) identifierar en arbetsboks behållare från sina inledande byte snarare än filändelsen — rapporterande en BIFF/OLE compound-fil, ett OOXML.xlsx-paket, ett OpenDocument.ods-paket eller vanlig avgränsad text — så att program kan dirigera omdöpta eller ändelselösa filer till rätt laddare
Ändrat
TXLSWorkbook.Openluktar nu på innehållssignaturen och avvisar ZIP-baserade paket (ett.xlsxeller.odsomdöpt till.xls) med ett tydligt meddelande som namnger rätt laddare, i stället för att misslyckas med en ogenomskinlig felkodTXLSXWorkbook.Openkänner nu igen OLE compound-fil-innehåll (ett äldre.xlsomdöpt till.xlsx, eller ett krypterat paket) och rapporterar vad filen faktiskt är, i stället för att visa ett ZIP-tolkar-fel
Version 2.102.0
Tillagt
- Korsarbetsboks-kalkylblads-kopiering i den klassiska XLS (BIFF8)-motorn tar nu över de arbetsboksnivå-definierade namn som en formel använder till destinationen — samma sak som Excel gör när ett blad flyttas mellan arbetsböcker: ett namn som destinationen redan har binds som det är (ingen dubblett skapas), ett saknat namn registreras med sin ursprungliga definition och synlighet så att formeln kompileras om mot det, och ett namn vars definition inte kan lösas i destinationen (till exempel pekar det på ett blad som inte finns där) lämnar formeln på sitt beräknade värde som tidigare
Version 2.101.0
Tillagt
- Korsarbetsboks-kalkylblads-kopiering i den klassiska XLS (BIFF8)-motorn pekar nu om formler mot källarbetsboken som en extern länk när destinationen saknar ett blad med det refererade namnet och källan har sparats till en fil: den kopierade cellen förblir en levande formel (dess referenser byter till [SourceBook]Sheet-formen), källans beräknade värde behålls som det cache-lagrade resultatet så att läsningar fortsätter fungera tills länken uppdateras, och den externa arbetsboks-referensen rundtur-bevaras genom spara och ladda om; formler som bär referenser till definierade namn, och kopior från osparade käll-arbetsböcker, behåller det beräknade värdet som tidigare
Version 2.100.0
Tillagt
- Matrisformler överlever nu kalkylblads-kopior i den klassiska XLS (BIFF8)-motorn: varje matrisintervall byggs om som en helhet i kopian — inom samma arbetsbok och över arbetsböcker — med rotformeln omkompilerad mot destinationens bladnamn; en matris som destinationen inte kan kompilera om behåller sina beräknade värden i stället
Rättat
- Att kopiera ett intervall som innehåller matrisformelceller mellan klassiska XLS-kalkylblad riskerar inte längre en krasch på spill-cellerna (som inte bär något eget formelträd); sådana celler överför nu sitt beräknade värde
Version 2.99.0
Tillagt
- Diagramblad kan nu kopieras mellan klassiska XLS (BIFF8)-arbetsböcker: diagrampostströmmen klonas in i destinationen, seriekategori- / värde- / namn-referenser kompileras om mot destinationens bladnamn (en serie vars blad saknar motsvarande med samma namn faller tillbaka på en tom referens så att filen ändå öppnar), diagramtypsnitts-referenser migrerar via värde in i destinationens typsnittstabell, och sidinställning, tab-färg, zoom och synlighet för diagrambladet följer med; detta tar bort den sista dokumenterade begränsningen för korsarbetsboks-kalkylblads-kopian
Version 2.98.0
Tillagt
- Korsarbetsboks-kalkylblads-kopiering i den klassiska XLS (BIFF8)-motorn bevarar nu rich-text-formatering inuti celler: varje formateringskörs typsnitt migreras via värde in i destinationens arbetsboks typsnittstabell och kön skrivs om för att peka på det, så att blandade typsnitts-strängar behåller sitt utseende i stället för att falla tillbaka på vanlig text; fonetisk (fjärran-östlig) tilläggsdata följer också med strängen
Rättat
- Typsnitt som refereras endast av rich-text-körningar (och inte av något cellformat) släpps inte längre från FONT-tabellen när en klassisk XLS-arbetsbok sparas, och körningarna följer nu samma typsnittsom-ordning som cellformat vid sparande, så att rich-text-strängar behåller rätt typsnitt efter en spara/ladda-om-cykel
Version 2.97.0
Tillagt
- Korsarbetsboks-kalkylblads-kopiering i den klassiska XLS (BIFF8)-motorn klonar nu också inbäddade bilder: bildbyte migrerar in i destinationens arbetsboks bildlager (identiska bilder delas snarare än dupliceras), och varje bildram behåller sitt cellankare, storlek, synlighet och transparenta färg; ett nytt CrossWorkbookCopyXls-exempelprojekt demonstrerar den klassiska motor-kopian från ände till ände
Ändrat
- Begränsningar för klassisk XLS korsarbetsboks-kopia är nu dokumenterade: diagramblad kopieras inte (AddCopy returnerar nil för dem), och en formel vars bladreferens saknar motsvarande med samma namn i destinationen behåller källans beräknade värde i stället för att bli en extern referens
Version 2.96.0
Tillagt
- Korsarbetsboks-kalkylblads-kopiering i den klassiska XLS (BIFF8)-motorn klonar nu också villkorsformat (cell-är- och uttrycksregler, datastaplar, färgskalor, ikonuppsättningar och deras differentiella stilar), datavalideringar (list-, numeriska-, datum-, textlängds- och anpassade regler med prompt- och fel-rutor), AutoFilter-definitionen med dess per-kolumn-kriterier (rullgardins-knapparna byggs om i kopian), och tabeller (id:n och namn återges så att de förblir unika i destinationsarbetsboken); regel-formler kompileras om mot destinationens bladnamn, vilket matchar beteendet för cellformler
Version 2.95.0
Tillagt
- Klassiska XLS (BIFF8)-kalkylblad kan nu kopieras från en arbetsbok till en annan: TXLSWorksheets.AddCopy lägger till ett nytt blad till destinationsarbetsboken och kopierar källbladets cellvärden, formler (om-kodade som text så att destinationen kompilerar om dem mot sina egna bladnamn, vilket håller samma-namn-3D-referenser levande), sammanslagna celler, kommentarer, hyperlänkar, radhöjder, kolumnbredder, översiktsnivåer, frysta rutor, bladskydd, sidinställning, manuella sidbrytningar, tab-färg och vyinställningar; cell-, rad- och kolumnformat migreras via värde in i destinationsarbetsboks formattabell, så att en stylad källa producerar en oberoende stylad kopia
- Migrering av korsarbetsboks-format i den klassiska XLS-motorn bär nu full-precision RGB- och temafärger vid sidan av varje formatpost, så att fyllningar, typsnitt och kanter behåller sina exakta färger i stället för att falla tillbaka på palett-approximationer; detta gäller också för intervallnivå-klistring mellan arbetsböcker
Version 2.94.0
Tillagt
- Korsarbetsboks-kalkylblads-kopian klonar nu villkorsformat (med deras differentiella stilar och de visuella nyttolasterna för dataBar / colorScale / iconSet), tabeller, datavalideringar och diagram (med varje serie); varje underobjekt djupkopierar sitt eget tillstånd in i destinationskalkylbladet
- Korsarbetsboks-formelreferenser skrivs om: en referens vars bladnamn finns i destinationen löses som den är, annars blir den en extern referens tillbaka till källarbetsboken (som registreras som en extern länk) eller #REF! när källan saknar fil-identitet; omskrivningen gäller cellformler, villkorsformat-regler, datavaliderings-formler och diagramserieintervall likadant
Version 2.93.0
Tillagt
- Ett kalkylblad kan nu kopieras från en arbetsbok till en annan: TXLSXSheets.AddCopy lägger till ett nytt blad till destinationsarbetsboken och kopierar källbladets celler, formler, sammanslagna intervall, kolumn-/rad-storlek, dolda/kollapsade/översikts-flaggor, frys rutor, vy-tillstånd, skydd, sidinställning, AutoFilter-intervall och tab-färg på det; de sex per-cell-stilindexen mappas om till destinationsarbetsbokens egna pooler för Teckensnitt/Fyllning/Kant/TalFormat/Justering/Skydd via värde-jämlikhets-uppslagning, så att en stylad källa producerar en oberoende-stylad kopia snarare än index som pekar mot fel pool
- De sex per-attribut-stil-poolerna (Teckensnitt, Fyllningar, Kanter, TalFormat, Justeringar, Skydd) exponerar var och en en 1-baserad LookupOrAdd som deduplicerar via värde; ett nytt CrossWorkbookCopy-exempelprojekt demonstrerar korsarbetsboks-kopian med stilbevarande
Version 2.92.0
Tillagt
- XLSX-arbetsböcker stöder nu pivottabeller: TXLSXWorksheet.AddPivotTable skannar ett platt källintervall, bygger auto en pivotcache och returnerar en typad pivottabell för rad- / kolumn- / sid- / data-axel-koppling, vilket speglar det långvariga BIFF8 (XLS)-motor-API:et så att samma kod riktar sig mot valfritt format; PivotSetDataFieldFormat tilldelar ett talformat till varje aggregerat värdefält
- Excel-skapade pivottabeller rundtur-bevaras utan förlust genom Öppna sedan Spara: XLSX-motorn bevarar varje pivotcache-definition, cache-poster och pivottabell-del ordagrant och spelar upp de ursprungliga byte vid sparande, så att spara-om en arbetsbok aldrig släpper eller ändrar dess pivoter ens när de använder funktioner som den typade modellen inte exponerar
Version 2.91.0
Tillagt
- Ett kalkylblads AutoFilter kan nu appliceras på datan så att den sparade arbetsboken öppnar med de icke-matchande raderna redan dolda, vilket speglar vad Excel gör när ett värde väljs från filter-rullgardinsmenyn
- Inbäddade bilder exponerar sin geometri i verkliga enheter (centimeter, tum, punkter) vid sidan av EMU-värdena, och kan storleksändras med en skalfaktor med valfri bildförhållande-låsning
- Sidinställnings-marginaler kan sättas i centimeter direkt, som en metrisk bekvämlighet utöver de tum-baserade marginalerna
- Skyddade XLSX-kalkylblad exponerar nu femton finmaskiga behörighetsväxlar (formatera celler, infoga/radera rader och kolumner, sortera, AutoFilter, markera låsta/olåsta celler, med mera) via en ny egenskap AllowOption, vilket matchar Excels Granska > Skydda blad kryssruta-lista; inställningarna per åtgärd rundtur-bevaras genom filen
- XLSX-kalkylblad kan nu dupliceras (TXLSXSheets.Duplicate): ett nytt blad läggs till och källans celler, sammanslagna intervall, kolumn-/rad-storlek, frys rutor, vy-tillstånd, skydd, sidinställning och tab-färg kopieras på det, vilket speglar Excels högerklick > Flytta eller kopiera > Skapa en kopia
- Tjugotvå nya exempelprojekt täcker funktioner som biblioteket stöder: arbetsbokskryptering, cellkommentarer, hyperlänkar, definierade namn, AutoFilter-utvärdering, inbäddade bilder, en faktura-mall, avancerad XLSX-villkorsformatering, sammanslagna celler, rad-/kolumn-översikt, frys rutor, fler-blad-layout, matrisformler, intervall-kopiera/flytta, sök/ersätt, datum-system, rich text, avancerad CSV, HTML-export-alternativ, anpassade talformat, dolda rader/kolumner och kalkylbladsskydd
Version 2.90.29
Ändrat
- Den strömmande direkt-läsaren räknar nu varje populerad cell även när ingen per-cell-hanterare är ansluten, så att ett vanligt ReadFile-anrop kan användas för att snabbt storleks-sätta ett kalkylblad; det returnerade antalet och egenskapen CellCount rapporterar antalet populerade celler som skannats
Version 2.90.28
Tillagt
- Formler kan nu utvärderas steg för steg, motsvarigheten till Excels kommando Utvärdera formel: en ny spårare reducerar ett uttryck ett del-steg i taget, innerst först, och rapporterar varje reduktion med sitt käll-del-uttryck, samma del-uttryck efter att dess operander har ersatts av sina värden, och det resulterande värdet, så att program kan visa hur ett resultat byggs upp; den respekterar operator-prioritet, håller intervall-referenser intakta för funktioner som SUM, och återanvänder kalkylbladets beräkningsmotor så att varje steg överensstämmer med en fullständig omberäkning
Version 2.90.27
Tillagt
- XLSX-arbetsböcker kan nu produceras cell för cell genom en ny strömmande direkt-skrivare som avger varje kalkylblad rakt in i paketet när rader anländer, utan att bygga ett fullt cell-träd i minnet, så att mycket stora filer kan genereras med ett nästan-konstant minnesavtryck; skrivaren hanterar inline-strängar, tal, booleska värden, datum och formler över flera blad och rundtur-bevaras med den strömmande direkt-läsaren
Version 2.90.26
Tillagt
- XLSX-arbetsböcker kan nu skannas cell för cell genom en ny strömmande direkt-läsare som höjer per-cell- och per-blad-händelser utan att bygga ett fullt cell-träd i minnet, vilket håller minnesavtrycket nästan konstant för mycket stora filer; varje rapporterad cell bär sitt värde, kind (tal, sträng, booleskt, datum eller fel), formeltext och stilindex, med valfri datum-detektering och tidigt-avbryt-stöd
Version 2.90.25
Tillagt
- Klassiska XLS-kalkylblad kan nu lägga till hyperlänkar från A1-stil cellreferenser samtidigt som URL-normalisering, arbetsboksmål-underadresser, visningstext och skärm-tips bevaras
Version 2.90.24
Tillagt
- Klassiska XLS-sidbrytningar kan nu läggas till från 1-baserade rad- eller kolumnpositioner och A1-stil cellreferenser genom sidbrytnings-samling och kalkylbladshjälpare-överlagringar
Version 2.90.23
Tillagt
- Klassiska XLS-kalkylblad och shape-samlingar kan nu skapa rektangel-, oval-, linje- och typade autoshape-ritobjekt från A1-stil intervallsträngar
Version 2.90.22
Tillagt
- Klassiska XLS-shape-samlingar kan nu skapa textrutor från A1-stil intervallsträngar genom en AddTextBox-överlagring
Version 2.90.21
Tillagt
- Klassiska XLS-textrutor kan nu positioneras om från A1-stil intervallsträngar genom en ny SetArea-överlagring
Version 2.90.20
Tillagt
- Klassiska XLS-kalkylblads-textrutor kan nu skapas från A1-stil intervallsträngar genom en AddTextBox-överlagring
Version 2.90.19
Tillagt
- Klassiska XLS-kalkylblad kan nu skapa ritar-textrutor direkt från rad- och kolumnankare genom en ny metod AddTextBox
Version 2.90.18
Tillagt
- Klassiska XLS-kalkylblad kan nu skapa cellkommentarer direkt från rad- och kolumnkoordinater genom nya AddComment-överlagringar