← Volver a todas las herramientas

Excel a HTML

Convierte hojas de Excel en tablas HTML.

Suelta tu archivo Excel aquí o haz clic para elegir un archivo Solo archivos Excel (.xlsx)

Aún no se ha elegido ningún archivo.

Tu archivo está listo.

Descargar

Cómo funciona

  1. Choose an .xlsx file.
  2. Click Convert to HTML.
  3. Download the .html file and open it in any browser.

The first row of each sheet is shown as the table header. Old .xls files cannot be read in the browser.

Por qué usar Excel a HTML en Abloom Pdfly

Excel a HTML: preguntas frecuentes

¿Excel a HTML es gratis?

Sí: todas las herramientas de Abloom Pdfly, incluida Excel a HTML, son gratis. Sin cuenta, sin marca de agua en el resultado y sin límite diario.

¿Mis archivos se suben a un servidor?

No. El trabajo se hace en tu propio dispositivo, dentro de tu navegador. Nada de lo que conviertes, editas o lees se envía a un servidor.

¿Cambiará mi archivo original?

Nunca. Excel a HTML crea un archivo nuevo para que lo descargues, y tu archivo original queda exactamente igual.

¿Funciona en mi teléfono?

Sí. Cualquier navegador moderno sirve — Android, iOS, Windows, macOS o Linux — y no hay que instalar nada.

Más de Abloom Core

\n'; showDownload(new Blob(['\ufeff' + html], { type: 'text/html' }), 'spreadsheet.html', fmt(html.length)); setStatus('Done!', 'ok'); }) .catch(function(e){ setStatus('Failed: ' + (e.message||e), 'err'); }); }); function escXml(s){ return s.replace(/&/g,'&').replace(//g,'>').replace(/"/g,'"'); } function readXlsx(zip){ var shared = []; function getShared(){ var f = zip.file('xl/sharedStrings.xml'); if(!f) return Promise.resolve([]); return f.async('string').then(function(xml){ var re = /([\s\S]*?)<\/si>/g, m; while((m = re.exec(xml)) !== null){ var inner = m[1], t = ''; var tr = /]*>([\s\S]*?)<\/t>/g, tm; while((tm = tr.exec(inner)) !== null) t += tm[1]; shared.push(t.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>').replace(/"/g, '"').replace(/'/g, "'")); } return shared; }); } function tagText(x, tag){ var mm = x.match(new RegExp('<' + tag + '[^>]*>([\\s\\S]*?)')); return mm ? mm[1] : ''; } function cellVal(inner, t){ if(t === 's'){ var idx = parseInt(tagText(inner, 'v'), 10); return shared[idx] || ''; } if(t === 'inlineStr') return tagText(inner, 't'); return tagText(inner, 'v'); } return getShared().then(function(){ var sheetNames = Object.keys(zip.files).filter(function(n){ return /^xl\/worksheets\/sheet\d+\.xml$/.test(n); }).sort(); if(!sheetNames.length) throw new Error('No worksheets found in this file.'); var chain = Promise.resolve([]); sheetNames.forEach(function(name, si){ chain = chain.then(function(all){ return zip.file(name).async('string').then(function(xml){ var rows = [], re = /]*>([\s\S]*?)<\/row>/g, rm; while((rm = re.exec(xml)) !== null){ var cells = [], cr = /]*)>([\s\S]*?)<\/c>/g, cm; while((cm = cr.exec(rm[1])) !== null){ var tm = cm[1].match(/\st="([^"]*)"/); cells.push(cellVal(cm[2], tm ? tm[1] : null)); } if(cells.length) rows.push(cells); } all.push({ sheet: si + 1, rows: rows }); return all; }); }); }); return chain; }); }