Comparison of modules for managing, creating and importing HTML tables
If you are looking for ways to simplify the creation or maintenance or uploading of HTML tables for display within blocks or nodes, these tables modules might be of help. These modules are specifically not to do with Drupal database tables.
Over the past few days, I have downloaded and tried all these modules, but spent more time with some than others. All of them work pretty well for what they are designed to do. I ended up going with Table Manager because it supports .csv imports and had the most complete styling options. The others all have good points, too.
I am writing this page partly because it was so bloody difficult to find all these modules. As usual, most of the developers use few words to describe their projects, so finding them is hit or miss. Some terms I tried were HTML tables, import Excel tables, import .csv tables, import Excel .csv files, node data tables, create HTML tables, and table modules.
Anyone knows of other similar types of modules, please post comment below.
| Feature | Quicktables | Table Manager | Tables Filter | CCK Matrix Field | |||||
|---|---|---|---|---|---|---|---|---|---|
| How it works | Generates blocks for tables built in specialized tables editor | Input filter to display imported tables or tables built in tables editor | Simplified input format (markup) for creating tables | CCK field for entering tabular data | |||||
| Drupal version | |||||||||
| Drupal 6.x | (.dev) |
(.dev) |
![]() |
![]() |
|||||
| Drupal 5.x | ![]() |
![]() |
![]() |
![]() |
|||||
| Styling options | |||||||||
| Table class/ID specified | ![]() auto-generated ID & class |
![]() auto-generated ID & class |
![]() user specified class or choose from pre-defined |
![]() no |
|||||
| Cell classes specified | ![]() auto-generates col, row classes |
![]() auto-generates even/odd row clases; user can define classes down to individual cell level via input filter in source data table (highest level of control) |
![]() auto-generates col, row classes |
![]() limited to even/odd row classes, no classes on cells |
|||||
| Header classes specified | ![]() no, but you can work around |
![]() auto-generated |
![]() user can specify |
![]() auto-generated |
|||||
| Allows HTML in cells | ![]() |
![]() some limitations due to handling of quotes |
![]() |
![]() |
|||||
| Easily wrappable* | ![]() |
![]() |
![]() |
![]() |
|||||
| Display options | |||||||||
| Display in blocks | ![]() |
![]() input filter doesn't work |
![]() input filter doesn't work |
?not sure? | |||||
| Display in nodes | ![]() |
![]() |
![]() |
![]() |
|||||
| Other | |||||||||
| Import from .csv file / other | ![]() |
![]() |
![]() |
![]() |
|||||
| Other features | - reorder rows | - sort by column - input filter accepts parameters - sticky headers |
- pre-defined CSS styles - only one that supports merging cells |
- multiple field types - sticky headers |
|||||
* Meaning you can wrap any auto-generated table code with your own HTML if additional styling or positioning is required - for instance, wrapping in a div.

(.dev)

New table module - CCK Tablefield
I wrote this comparison page, but don't have edit privileges to modify it.
If I did, I would want to add a column for a new module that has recently come online in beta: CCK TableField - http://drupal.org/project/tablefield.
This module is quite similar to CCK Matrix Field, except that it seems to provide more node-by-node flexibility to alter table dimensions (rows x columns) and it also provides built-in 'add table' mechanism on a per node basis to have multiple tables per page.
---
The currently assigned author results another user; that could explain why you cannot edit it.
-- Kiam
Kiam la luno renkontas la sunon
...
oh, yes, sorry. i do know why i can't edit it. but that's a whole other story (http://drupal.org/node/558398).
i meant the comment only by way to introduction so people would know where to turn should they see problems with the page.
Tablemanager D6 .dev version
Please note that the D6 .dev version of Tablemanager is buggy. Many of the major features do work, but there are some visible features do not work - for example, you can see and click a 'save' button on the 'edit table' screen, but it generates an error and doesn't actually save anything.
As a result of these bugs and unclear future development path, I no longer use the module myself.