Excelize v2.5.0
- Esta versión lanzada el: 3 enero 2022
- Lanzado en GitHub: https://github.com/xuri/excelize/releases/tag/v2.5.0
Notas de lanzamiento
Los cambios más notables en esta versión son:
Rompiendo cambios
- Se requiere cerrar la hoja de cálculo y el iterador de la fila, el usuario debe cerrar la secuencia después de usar el iterador de la fila y cerrar la hoja de cálculo después de abrir una hoja de cálculo existente
- Cambie
ReadZipReader
como una implementación delFile
, extraiga la hoja de cálculo con las opciones dadas y admita la extracción en la memoria o toque el sistema de archivos - Elimine la variable exportada innecesaria
XMLHeader
, podemos usar el paqueteencoding/xml
xml.Header
en su lugar - Eliminar la variable de error exportada no utilizada
ErrToExcelTime
Características notables
- Nueva API: compatibilidad con
SetRowStyle
para establecer el estilo de las filas, problema relacionado #990 - Nueva API: compatibilidad con
GetCellType
para obtener el tipo de datos de la celda, problema relacionado #417 y #520 - Nueva API: compatibilidad con
SetAppProps
yGetAppProps
para configurar y obtener las propiedades de la aplicación de documentos, problema relacionado #1095 - Compatibilidad con
GetCellValue
,GetRows
,GetCols
,Rows
yCols
para especificar la celda de lectura con valor sin procesar, problema relacionado #621 - Nuevo soporte 95 funciones de fórmula: 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, problema relacionado #1002
- El motor de cálculo de fórmulas admite cálculo anidado para la fórmula
IF
, problema relacionado #987 - Soporte del motor de cálculo de fórmulas obtener fórmula compartida, problema relacionado #844
- Comparación de texto de soporte de motor de cálculo de fórmulas, problema relacionado #998
- Soporte especificar la fórmula en el rango de validación de datos, problema relacionado #1012
- Admite el límite de tamaño de descompresión especificado en las opciones de archivo abierto, evita el ataque de vulnerabilidad de bombas zip
SetCellFormula
ahora admite establecer la fórmula compartidaUpdateLinkedValue
omitirá la hoja de macros, problema relacionado #1014- Se corrigió la imagen duplicada creada por
AddPicture
en algunos casos, causada por un cálculo incorrecto del ID de relaciones internas, problema relacionado #1017 AddShape
admite establecer el ancho de línea de agregar la forma, problema relacionado #262- Se han agregado nuevas opciones
UnzipXMLSizeLimit
, soporte para especifica el límite de memoria al descomprimir la hoja de trabajo y la tabla de cadenas compartidas en bytes - Se devolverá un error si se le da un formato de número personalizado no válido al crear un nuevo estilo, problema relacionado #1028
- Ahora admite establecer estilo de fila en la escritora de flujo
- Stream Writer creará un formato de número de tiempo para las celdas de tipo de tiempo, problema relacionado #1107
- Ahora admite especificar compacto y contorno para la tabla dinámica, problema relacionado #1029
- Admite obtener filas / columnas actuales y filas / columnas totales en el lector de flujo, problema relacionado #1054
- Ahora admite la ubicación de la zona horaria cuando se establece el valor de la celda, problema relacionado #1069
- Exporta 7 errores para que los usuarios puedan actuar de manera diferente en diferentes tipos de errores
Mejorar la compatibilidad
- Mejorar la compatibilidad con el elemento de fila con el atributo
r="0"
- Conservar el carácter de control XML
- Mejorar la compatibilidad de la configuración de estilo con Apple Numbers, problema relacionado #1059
- Admite idioma de varios bytes en el pie de página del encabezado establecido, problema relacionado #1061
- Conservar el carácter de tabulación horizontal cuando se establece el valor de la celda, problema relacionado #1108
Corrección de errores
- Corregir la eliminación de la validación de datos fallida, solucionar problema #979
- Arreglar la lista desplegable de validación de datos del conjunto falló en algunos casos, solucionar problema #986
- Se corrigió que el motor de cálculo de fórmulas
LOOKUP
no maneja la forma de matriz correctamente, solucionar problema #994 - El motor de cálculo de fórmula fijo
LOOKUP
solo puede encontrar coincidencias exactas, solucionar problema #997 - Corregir los porcentajes de fórmulas calculados incorrectamente, solucionar problema #993
- Soluciona el pánico causado por la lectura incorrecta de la celda en algunos casos
- Corregir el formato condicional inferior N que no funciona
- Solucionar el problema de precisión del análisis de tiempo, solucionar problema #1026 y #1030
- Arreglar el formato de número científico incorporado falló, solucionar problema #1027
- Corregir un pequeño error de análisis de flotante en algunos casos, problema relacionado #1031
- Corregir la eliminación de la hoja de trabajo falló en algún caso
- Solucionar el error de análisis de formato de número de tiempo incorporado, problema relacionado #1060
- Se corrigió que
NewStyle
devolviera una ID de estilo incorrecta en algún caso - Corregir el error de rango de celda combinada después de la inserción / eliminación de fila / columna en algunos casos de esquina
Optimización del rendimiento
- Aceleración del costo del tiempo de combinación de celdas, según la reducción del costo del tiempo de la versión publicada anteriormente en más del 90%
- Mejore el rendimiento de lectura de transmisión, descomprima la tabla de cadenas compartida en el archivo temporal del sistema cuando el XML interno sea grande, según la versión publicada anteriormente, el uso de la memoria disminuyó aproximadamente un 60% como máximo, problema relacionado #1096
- Acelerar la lectura de la lista de hojas de trabajo
- Fusionar estilos de columna para reducir el tamaño de la hoja de cálculo, problema relacionado #1057
Otros
- Se ha actualizado el módulo de dependencias
- Pruebas unitarias y godoc actualizado
- Sitio web de documentación con varios idiomas: árabe, alemán, español, inglés, francés, ruso, chino, japonés y coreano, actualizado