Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

123
Visualizações
Lectura y escritura simples en SheetJs angulares que no conservan el estilo y las macros del archivo xlsm

Tengo un archivo xlsm en la carpeta de activos, que necesito leer y devolver como archivo de descarga. Puedo leer el archivo.

El siguiente código, que básicamente descarga el blob como un archivo, conserva las macros y el estilo.

 this.http.get(..., {responseType: 'blob' as 'json'}).subscribe((response:any)=>{ let dataType = response.type; let binaryData = []; binaryData.push(response); let downloadLink = document.createElement('a'); downloadLink.href = window.URL.createObjectURL(new Blob(binaryData, {type: dataType})); if (this.fileName) downloadLink.setAttribute('download', this.fileName); document.body.appendChild(downloadLink); downloadLink.click(); });

Sin embargo, necesito modificar algunos datos y estoy usando SheetJs (xlsx) para modificarlos, pero no conserva las macros ni el estilo.

El siguiente código usa xlsx para simplemente leerlo y escribirlo en un archivo y aún pierde macros y estilo, solo conserva los datos.

 this.http.get(..., {responseType: 'blob' as 'json'}).subscribe((response:any)=>{ const reader: FileReader = new FileReader(); reader.onload = (e: any) => { const bstr: string = e.target.result; const wb: XLSX.WorkBook = XLSX.read(bstr, { type: 'binary', bookVBA :true, cellStyles:true, cellHTML:true }); XLSX.writeFile(wb, this.fileName,{ type: 'binary', bookVBA:true, bookType: 'xlsm', cellStyles:true, bookSST:true, }); }; reader.readAsBinaryString(response); });

incluso después de establecer bookVBA y cellStyles en verdadero no se resuelve.

Estoy usando la última versión de SheetJs

about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda