diff --git a/openpyxl_templates/table_sheet/table_sheet.py b/openpyxl_templates/table_sheet/table_sheet.py
index <HASH>..<HASH> 100644
--- a/openpyxl_templates/table_sheet/table_sheet.py
+++ b/openpyxl_templates/table_sheet/table_sheet.py
@@ -163,6 +163,8 @@ class TableSheet(TemplatedWorksheet):
         self.columns.append(column)
         self._row_class = None
 
+        return column
+
     def write(self, objects=None, title=None, description=None, preserve=False):
         if not self.empty:
             if preserve:
diff --git a/openpyxl_templates/templated_workbook.py b/openpyxl_templates/templated_workbook.py
index <HASH>..<HASH> 100644
--- a/openpyxl_templates/templated_workbook.py
+++ b/openpyxl_templates/templated_workbook.py
@@ -73,6 +73,8 @@ class TemplatedWorkbook(metaclass=OrderedType):
         sheet.template_styles = self.template_styles
         self.templated_sheets.append(sheet)
 
+        return sheet
+
         #TODO: Parse sheetname to an attribute? Or removing add to self all together?
         # if add_to_self:
         #     setattr(self, sheet.sheetname, sheet)
Add dynamic objects now returns the added object