Generador de Tablas HTML

Crea una tabla HTML de forma visual, pega desde Excel/Sheets, añade o quita filas y columnas, combina celdas, elige un estilo, y copia HTML limpio.

🌐 English

Click a cell to select it, shift-click another cell to select a rectangle, then Merge selected cells. Copy cells from Excel or Google Sheets and paste anywhere in the grid to replace it with your pasted data.

Preview

HTML

🔒 Privado por diseño: todo funciona localmente en tu navegador; nada se sube nunca a ningún servidor.

Cómo crear una tabla HTML

  1. Pulsa + Add row / + Add column para dimensionar la cuadrícula, o pega directamente un rango de celdas copiado de Excel o Google Sheets para rellenarla en un solo paso.
  2. Haz clic en una celda y escribe, o haz clic en una celda, shift+clic en otra para seleccionar un rectángulo, y pulsa Merge selected cells para combinarlas.
  3. Activa First row is a header y/o First column is a header, elige un estilo, y opcionalmente activa el contenedor responsivo con desplazamiento.
  4. Pulsa Copy HTML para obtener el código en bruto, Copy rendered table para pegar una tabla ya con estilo directamente en un documento, o Download .html para guardarla como archivo.

Por qué crear una tabla HTML de forma visual

Escribir a mano las etiquetas <table>, <tr>, <th> y <td> (sobre todo en cuanto alguna celda empieza a abarcar varias filas o columnas) es lento y fácil de estropear sutilmente: basta con olvidar una etiqueta de cierre o que un colspan no coincida con la fila de arriba para que toda la tabla se vea descuadrada. Un editor de cuadrícula visual te deja ver exactamente lo que estás construyendo mientras lo construyes, añadir o quitar filas y columnas sobre la marcha, y combinar celdas seleccionándolas en lugar de calcular los spans a mano.

Pegar directamente desde una hoja de cálculo es la otra mitad del ahorro de tiempo, la mayoría de las tablas reales empiezan siendo un rango de celdas que alguien ya tiene en Excel o Google Sheets, y volver a escribir esos datos en un formulario web es pura fricción. Pégalos, ajusta cabeceras y combinaciones si hace falta, elige un estilo, y copia el HTML terminado.

Cómo se almacenan las combinaciones, y la única restricción que se sigue

Internamente la tabla es un simple array bidimensional con el texto de cada celda más una lista aparte de rectángulos combinados. Cada combinación registra solo su ancla superior izquierda y cuántas filas y columnas abarca, y todas las demás celdas dentro de ese rectángulo se tratan como cubiertas: su texto se sigue guardando, pero no se emite ningún <td> para ellas. Eso es lo que hace la salida válida por construcción, porque “qué celdas están ocultas” siempre se deriva de la lista de combinaciones en lugar de seguirse como una segunda marca que podría desincronizarse.

Conservar el texto cubierto significa además que deshacer una combinación es genuinamente reversible. Rompe una combinación y cada celda de dentro vuelve con lo que tuviera antes, algo que no es cierto en la mayoría de hojas de cálculo.

La restricción que se desprende de este diseño es que las combinaciones no pueden solaparse ni anidarse. Seleccionar un rectángulo que toca un bloque ya combinado se rechaza con un mensaje en vez de disolver a medias el antiguo, porque admitir una combinación de combinaciones necesitaría una estructura de datos genuinamente distinta para servir a un caso que esta herramienta no necesita. Para agrandar un bloque combinado, deshazlo y combina el rectángulo mayor. Borrar una fila o columna que una combinación abarca se maneja con la misma honestidad: la combinación se disuelve primero en celdas normales, luego ocurre el borrado, y las combinaciones situadas después de la línea borrada se desplazan para seguir siendo correctas.

Celdas de cabecera, filas con bandas y los dos botones de copiar

Las dos casillas de cabecera son independientes, y las dos hacen exactamente una cosa: cambian las celdas de la primera fila, o las de la primera columna, de <td> a <th>. Activa las dos y la esquina superior izquierda también es un <th>. Fíjate en lo que no se produce, porque de vez en cuando importa: no hay elemento <thead> ni <tbody> y no hay atributo scope en las celdas de cabecera, así que si vas a llevar esto a un contexto con revisión estricta de accesibilidad querrás añadirlos tú. Para un bloque combinado, la condición de cabecera la decide la posición de su propia celda ancla y no el solapamiento del rectángulo entero.

Hay cinco presets disponibles: liso, mínimo, filas con bandas, con bordes y modo oscuro. Las filas con bandas cuentan solo las filas de cuerpo, así que el sombreado empieza en la segunda fila real de datos y no se descuadra por la cabecera que está encima. La casilla de diseño adaptable envuelve la tabla terminada en un <div style="overflow-x:auto">, que es lo que impide que una tabla de doce columnas reviente la maquetación de una entrada de blog en un móvil.

Sacar el resultado funciona de tres maneras, y la diferencia entre las dos primeras pilla a la gente. Copiar HTML pone el marcado en tu portapapeles como texto, para pegarlo en una plantilla o un editor. Copiar tabla renderizada lo pone en el portapapeles como text/html, así que pegarlo en Google Docs, Word o un redactor de correo produce una tabla realmente formateada en lugar de un muro de etiquetas. Descargar .html guarda el marcado como archivo.

Editor de cuadrícula, JSON o Markdown

Tres herramientas de aquí se solapan y la correcta depende de lo que ya tengas. Si tus datos son un array JSON, Convertir JSON a Tabla HTML se salta la cuadrícula por completo y te deja elegir qué claves se convierten en columnas; comparte exactamente estos presets de estilo, así que cambiar de una a otra no altera nada del aspecto. Si el destino es un README, un wiki o un mensaje de chat, el Generador de Tablas Markdown usa el mismo enfoque de edición en cuadrícula y emite sintaxis de barras verticales. Y si la tabla es en realidad el entregable completo, descarga el .html aquí y pásalo por Convertir HTML a PDF.

Tus datos de tabla nunca salen de tu dispositivo

Los datos de hoja de cálculo pegados en una herramienta como esta suelen ser mucho más que una demostración, tablas de precios, tablas comparativas, informes internos, datos de clientes. Esta herramienta crea la tabla enteramente en la memoria de tu propio navegador; no hay paso de subida, no hay procesamiento en un servidor, y no queda ninguna copia de tus datos en ningún sitio salvo tu propio dispositivo.

Usos habituales

Cómo funciona, en imágenes

Captura de pantalla de la herramienta Generador de Tablas HTML con una cuadrícula editable con añadir fila, añadir columna y combinación de celdas (clic en una celda, mayús+clic en otra para seleccionar un rectángulo y combinar) sobre el HTML que genera, y las celdas se pueden pegar directamente desde Excel o Google Sheets
Generador de Tablas HTML en pleno proceso: una cuadrícula editable con añadir fila, añadir columna y combinación de celdas (clic en una celda, mayús+clic en otra para seleccionar un rectángulo y combinar) sobre el HTML que genera, y las celdas se pueden pegar directamente desde Excel o Google Sheets.
Diagrama: dónde ocurre el trabajo en una página de SysFenix que no tiene ninguna entrada de archivo: la herramienta llega como JavaScript normal dentro de la página, calcula la respuesta en tu propio dispositivo y la muestra ahí mismo, de modo que la subida, la cola y el registro en servidor que necesita una herramienta online típica no ocurren nunca
Dónde ocurre el trabajo en una página de SysFenix que no tiene ninguna entrada de archivo: la herramienta llega como JavaScript normal dentro de la página, calcula la respuesta en tu propio dispositivo y la muestra ahí mismo, de modo que la subida, la cola y el registro en servidor que necesita una herramienta online típica no ocurren nunca.

Preguntas frecuentes

¿Se suben mis datos de tabla a un servidor?

No. El editor de cuadrícula, el manejo del pegado y el HTML que genera funcionan enteramente dentro de tu navegador usando JavaScript normal, no hay ningún paso de subida ni procesamiento en un servidor. Los datos de una tabla suelen venir directamente de una hoja de cálculo llena de registros reales, así que nada de eso sale nunca de tu dispositivo.

¿Cómo funciona pegar desde Excel o Google Sheets?

Copia un rango de celdas en Excel o Google Sheets, haz clic en cualquier parte de la cuadrícula aquí, y pega (Ctrl/Cmd+V). Los datos que esas aplicaciones ponen en el portapapeles están separados por tabulaciones, con cada fila en una línea, y pueden envolver un campo entre comillas dobles cuando contiene una tabulación, una comilla o un salto de línea incrustado, esta herramienta analiza exactamente ese formato (no una simple división por tabulaciones), así que una celda pegada con su propio salto de línea o una tabulación adicional llega correctamente como una sola celda en lugar de partirse. Pegar reemplaza toda la cuadrícula con los datos pegados.

¿Cómo funciona combinar celdas, y puedo combinar celdas que ya forman parte de otra combinación?

Haz clic en una celda, luego shift+clic en otra celda para seleccionar un bloque rectangular, y luego pulsa "Merge selected cells". La celda combinada conserva el texto que había en su esquina superior izquierda y recibe atributos reales colspan/rowspan en el HTML generado, las celdas que absorbe nunca se renderizan como celdas propias, así que el resultado siempre es un marcado de tabla válido. Combinar un rectángulo que se solapa con una combinación ya existente se rechaza con un mensaje claro en lugar de anidar combinaciones; primero deshaz la combinación existente (lo que restaura cada celda dentro de ella, conservando el texto que tuviera), y luego combina el rectángulo más amplio que quieras.

¿Qué pasa con una fila o columna que forma parte de una combinación si la elimino?

Eliminar una fila o columna que atraviesa una combinación deshace primero toda esa combinación, devolviendo sus celdas a un estado individual normal, y luego elimina la fila o columna como de costumbre, así nunca te quedas con una combinación que apunta a celdas que ya no encajan.

¿Los estilos son los mismos que los del conversor de JSON a Tabla HTML?

Sí, a propósito, Plain, Minimal, Striped rows, Bordered y Dark mode son exactamente los mismos cinco estilos, compartiendo exactamente las mismas definiciones, así que una tabla creada aquí y otra creada desde JSON allí se ven idénticas si eliges el mismo estilo. Cada estilo se escribe como atributos `style` en línea en vez de una hoja de estilos enlazada, así que el HTML copiado se ve bien de inmediato en un CMS, un correo o una wiki, sitios que a menudo eliminan los bloques `<style>` independientes.

Veo textos de la interfaz en inglés, botones como "Merge selected cells" o "Copy HTML", los nombres de los estilos, y mensajes de error como "No data found in the pasted text.", ¿es un error?

No, es una limitación conocida y honesta, no un fallo de traducción. Toda la lógica, el modelo de cuadrícula, el análisis del pegado desde hoja de cálculo, la combinación de celdas y la generación del HTML con su escapado, es completamente independiente del idioma y funciona igual de bien con datos en español (incluidos acentos y la ñ). Pero el componente interactivo en sí (los botones, las casillas, los nombres de los cinco estilos y los mensajes de error) es un único componente compartido en inglés que se usa sin cambios en ambos idiomas de esta página. El resultado visual del estilo elegido sí se aplica correctamente, y el texto que tú mismo escribas en las celdas se copia exactamente tal cual lo escribiste.

¿Es seguro pegar texto que contenga HTML o algo parecido a un script en una celda?

Sí. El texto de cada celda se escapa como HTML antes de incluirse en la tabla generada, así que un valor como `<script>alert(1)</script>` pegado en una celda aparece como texto visible inofensivo en el resultado, en lugar de tratarse como marcado real.

¿Qué hace la casilla "Wrap in a responsive (scrollable) container"?

Envuelve la `<table>` generada en un `<div style="overflow-x:auto">...</div>`, así que una tabla ancha se desplaza horizontalmente dentro de su propio recuadro en una pantalla pequeña, en lugar de desbordarse o romper el diseño de la página que la rodea, un patrón habitual para incrustar una tabla con muchas columnas en una entrada de blog o un artículo.

Herramientas relacionadas