Excelize v2.5.0
- Publié ce sur: 3 janvier 2022
- Sorti sur GitHub: https://github.com/xuri/excelize/releases/tag/v2.5.0
Notes de version
Les changements les plus notables de cette version sont:
Compatibilité
- Fermez la feuille de calcul et l'itérateur de ligne requis, l'utilisateur doit fermer le flux après avoir utilisé l'itérateur de ligne et fermer la feuille de calcul après avoir ouvert une feuille de calcul existante
- Modifiez
ReadZipReader
en tant qu'implémentation duFile
, extrayez la feuille de calcul avec les options données et prenez en charge l'extraction en mémoire ou en touchant le système de fichiers - Supprimez la variable exportée inutile
XMLHeader
, nous pouvons utiliser le packagexml.Header
du packageencoding/xml
à la place - Supprimer la variable d'erreur exportée inutilisée
ErrToExcelTime
Caractéristiques notables
- Nouvelle API: prise en charge de
SetRowStyle
pour le style défini pour les lignes, problème associé #990 - Nouvelle API: prise en charge de
GetCellType
pour obtenir le type de données de la cellule, problème associé #417 et #520 - Nouvelle API: prise en charge de
SetAppProps
etGetAppProps
pour définir et obtenir les propriétés de l'application de document, problème associé #1095 - Prise en charge de
GetCellValue
,GetRows
,GetCols
,Rows
etCols
pour spécifier la cellule de lecture avec une valeur brute, problème associé #621 - Nouveau support 95 fonctions de formule: ACCRINT, ACCRINTM, ADDRESS, AMORDEGRC, AMORLINC, AVEDEV, AVERAGEIF, CHIDIST, CONFIDENCE, CONFIDENCE.NORM, COUNTIF, COUNTIFS, COUPDAYBS, COUPDAYS, COUPDAYSNC, COUPNCD, COUPNUM, COUPPCD, DATEVALUE, DAY, DAYS, DELTA, DEVSQ, DISC, DURATION, ERF, ERF.PRECISE, ERFC, ERFC.PRECISE, GEOMEAN, GESTEP, IFNA, IFS, INDEX, INTRATE, ISFORMULA, ISLOGICAL, ISREF, ISOWEEKNUM, MATCH, MAXA, MAXIFS, MDURATION, MINIFS, MINUTE, MONTH, ODDFPRICE, PERCENTILE.EXC, PERCENTRANK.EXC, PERCENTRANK.INC, PERCENTRANK, PRICE, PRICEDISC, PRICEMAT, PV, QUARTILE.EXC, RANK, RANK.EQ, RATE, RECEIVED, RRI, SHEETS, SLN, STANDARDIZE, STDEV.P, STDEVP, SWITCH, SYD, TBILLEQ, TBILLPRICE, TBILLYIELD, TEXTJOIN, TIME, TRANSPOSE, TRIMMEAN, VALUE, VAR, VAR.S, VARA, VARPA, VDB, WEEKDAY, WEIBULL, WEIBULL.DIST, XIRR, XLOOKUP, XNPV, XOR, YEAR, YEARFRAC, YIELD, YIELDDISC, YIELDMAT, Z.TEST, ZTEST, problème associé #1002
- Le moteur de calcul de formule prend en charge le calcul imbriqué pour la formule
IF
, problème associé #987 - La prise en charge du moteur de calcul de formule obtient une formule partagée, problème associé #844
- Comparaison de texte de support de moteur de calcul de formule, problème associé #998
- Le support spécifie la formule dans la plage de validation des données, problème associé #1012
- Prend en charge la limite de taille de décompression spécifiée sur les options de fichier ouvert, évite les attaques de vulnérabilité des bombes zip
SetCellFormula
prend désormais en charge la définition de la formule partagéeUpdateLinkedValue
ignorera la feuille de macro, problème associé #1014- Correction d'une image en double créée par
AddPicture
dans certains cas, en raison d'un calcul incorrect de l'ID des relations internes, problème associé #1017 AddShape
prend en charge la largeur de ligne définie pour ajouter la forme, problème associé #262- De nouvelles options
UnzipXMLSizeLimit
ont été ajoutées, prise en charge pour spécifier la limite de mémoire lors de la décompression de la feuille de calcul et de la table de chaînes partagée en octets - Une erreur sera renvoyée si un format de nombre personnalisé non valide est donné lors de la création d'un nouveau style, problème associé #1028
- Prend désormais en charge le style de ligne défini dans le rédacteur de flux
- L'écrivain de flux créera un format de numéro d'heure pour les cellules de type d'heure, problème associé #1107
- Prend désormais en charge la spécification de compact et de contour pour le tableau croisé dynamique, problème associé #1029
- Support get current rows/columns and total rows/columns in the stream reader, problème associé #1054
- Prend désormais en charge l'emplacement du fuseau horaire lors de la définition de la valeur de la cellule, problème associé #1069
- Exportez 7 erreurs afin que les utilisateurs puissent agir différemment sur différents types d'erreurs
Improve the Compatibilité
- Améliorer la compatibilité avec l'élément de ligne avec l'attribut
r="0"
- Conserver le caractère de contrôle XML
- Améliorez la compatibilité des paramètres de style avec Apple Numbers, problème associé #1059
- Prise en charge de la langue multi-octets sur le pied de page de l'en-tête défini, problème associé #1061
- Conserver le caractère de tabulation horizontale lors de la définition de la valeur de la cellule, problème associé #1108
Corrections de bogues
- Correction de l'échec de la suppression de la validation des données, problème associé #979
- Échec de la liste déroulante de validation des données de l'ensemble de correctifs dans certains cas, problème associé #986
- Correction du moteur de calcul de formule
LOOKUP
ne gère pas correctement la forme du tableau, problème associé #994 - Le moteur de calcul de formule de correction
LOOKUP
ne peut trouver qu'une correspondance exacte, problème associé #997 - Correction des pourcentages de formule mal calculés, problème associé #993
- Correction de la panique causée par une lecture incorrecte de la cellule dans certains cas
- Correction du format conditionnel bottom N ne fonctionnant pas
- Correction du problème de précision de l'analyse temporelle, problème associé #1026 et #1030
- Échec du correctif du format de nombre scientifique intégré, problème associé #1027
- Correction d'une petite erreur d'analyse flottante dans certains cas, problème associé #1031
- La suppression de la feuille de calcul a échoué dans certains cas
- Correction d'une erreur d'analyse du format de numéro de temps intégré, problème associé #1060
- Le correctif
NewStyle
a renvoyé un ID de style incorrect dans certains cas - Correction d'une erreur de plage de cellules fusionnées après l'insertion/la suppression de ligne/colonne dans certains cas d'angle
Performance
- Accélération du coût du temps de cellule de fusion, sur la base de la diminution du coût du temps de la version précédemment publiée de plus de 90%
- Améliorez les performances de lecture en continu, décompressez la table de chaînes partagées dans le fichier temporaire du système lorsque le code XML interne volumineux, basé sur la version précédemment publiée, l'utilisation de la mémoire a diminué d'environ 60% au plus, problème associé #1096
- Accélération de la lecture de la liste des feuilles de calcul
- Fusionner les styles de colonnes pour réduire la taille de la feuille de calcul, problème associé #1057
Miscellaneous
- Le module des dépendances a été mis à jour
- Tests unitaires et godoc mis à jour
- Site Web de documentation multilingue: arabe, allemand, espagnol, anglais, français, russe, chinois, japonais et coréen, qui a été mis à jour
Merci
Merci pour tous les contributeurs d'Excelize. Vous trouverez ci-dessous une liste des contributeurs qui ont des contributions de code dans cette version:
- @bailantaotao (bailantaotao)
- @threeq (Conrad Dally)
- @raochq (raochangquan)
- @stanim (Stani)
- @tvso (Tammy)
- @Jerring
- @seanliang (Sean Liang)
- @oneweek20169902 (li)
- @mwiesenbauer (Michael Wiesenbauer)
- @Dokiys (Dokiy)
- jaby
- @vst93 (vst)