Something else I don't understand about Ranges vs. Selection:

<pre>I want to write the FUNCTION below as :
but that is not allowed. You/I can only InsertColumns with a Selection object.

The following is allowed.
rngTbl.Columns.Add BeforeColumn:=Selection.Columns(1)

So you gets a choice, you can InsertColumns with a Selection, or you can Add BeforeColumn with a range.

<pre>Public Function InsertLeftColumn(rngTbl As Range)
' Procedure: InsertLeftColumn
' Description: Insert one column at the left of the table
' By: Chris Greaves Inc.
' Inputs: RANGE of table.
' Returns: None.
' Assumes: None.
' Side Effects: Page layout may change.
' Tested: By the calls below.
'Sub TESTInsertLeftColumn()
'ActiveDocument.Tables.Add Range:=Selection.Range, NumRows:=8, NumColumns:=8
'Call InsertLeftColumn(Selection.Tables(1).Range)
'End Sub
End Function