On this page
Comparison of modules for HTML tables
Drupal 7 will no longer be supported after January 5, 2025. Learn more and find resources for Drupal 7 sites
If you are looking for ways to simplify the creation or maintenance or uploading of HTML tables for display within blocks or nodes, these table modules might help. These modules are not about managing Drupal database tables.
I have downloaded and tried most these modules, but spent more time with some than others. Each works in a somewhat different way - you may have try more than one to find the one that best fits your needs and workflow.
I am writing this page partly because it was so bloody difficult to find all these modules. Many developers use too few words when describing their projects, so finding them via search function is hit or miss. Some terms I tried were HTML tables, import Excel tables, import .csv tables, import Excel .csv files, node data tables, node HTML tables, create HTML tables, and table modules.
If anyone knows of other similar types of modules, please post comment below.
Note: Module capabilities are continually evolving. Please check module for latest information.
| Feature | Quicktables | Table Manager | Tables Filter | CCK Matrix Field | CCK TableField | ||||
|---|---|---|---|---|---|---|---|---|---|
| Basic idea | 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 HTML tables | CCK field for entering tabular data | CCK field for entering tabular data | ||||
| Drupal versions | |||||||||
| Drupal 6.x | ![]() (.dev) |
![]() (.dev) |
![]() |
![]() |
![]() |
||||
| Drupal 5.x | ![]() |
![]() |
![]() |
![]() |
![]() |
||||
| Usage (as of 23 Feb 10) | |||||||||
| D6.x versions | <50 | 340 | 131 | 700 | 475 | ||||
| Styling options | |||||||||
| Table class/ID specified | ![]() auto-generated ID & class |
![]() auto-generated ID & class |
![]() user specified class or choose from pre-defined |
![]() no |
![]() wrapped in |
||||
| Cell classes specified | ![]() auto-generates col, row classes |
![]() auto-generates even/odd row classes; user can define classes down to individual cell level via input filter in source data table (provides very high level of control) |
![]() auto-generates col, row classes |
![]() limited to even/odd row classes, no classes on cells |
![]() highly granular auto-generated classes |
||||
| Header classes specified | ![]() no, but you can work around |
![]() auto-generated |
![]() user can specify |
![]() auto-generated |
![]() no, but you can work around |
||||
| Allows HTML in cells | ![]() |
![]() some limitations due to handling of quotes |
![]() |
![]() |
![]() |
||||
| Easily wrappable* | ![]() |
![]() |
![]() |
![]() |
![]() |
||||
| Display options | |||||||||
| Display in blocks | ![]() |
![]() input filter allows embed within block |
![]() input filter allows embed within body content |
![]() |
![]() |
||||
| Display in nodes | ![]() not intended for use in nodes, can be inserted using php |
![]() input filter allows table to be embedded within body content, also can be its own node |
![]() input filter allows embed within body content |
![]() CCK field, not embeddable in body content |
![]() CCK field, not embeddable in body content |
||||
| Other | |||||||||
| Import from .csv file / other | ![]() |
![]() |
![]() |
![]() |
![]() |
||||
| Other features | - reorder rows | - sort by column - input filter accepts class parameters in cells - sticky headers |
- pre-defined CSS styles - only one that supports merging cells |
- multiple field types - sticky headers |
- sticky headers - any input format allowed |
||||
* Meaning you can wrap any auto-generated table code within your own HTML inside body or block if additional styling or positioning is required - for instance, wrapping the table inside a div.
Helper Modules for Managing HTML Tables
These module(s) help format or manage HTML tables that are already built.
- Table Alternate Rows - Input filter that inserts even and odd classes into user submitted tables within nodes (5.x, 6.x)
Help improve this page
You can:
- Log in, click Edit, and edit this page
- Log in, click Discuss, update the Page status value, and suggest an improvement
- Log in and create a Documentation issue with your suggestion


