Excelmacros – select数据和格式为表格的所有单元格

是否有可能写一个macros,可以格式化任何活动select的表格? 例如,我有一个基本上只是做一个Ctrl + Shift +结束范围select的macros。 之后,我希望macros能够将选定的范围格式化为一个表格,但是当我在VBA中logging这个动作时,它将使用范围地址,这些地址不一定是从一个表到另一个表。

Sub A_SelectAllMakeTable() Range("A1").Select Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select ActiveSheet.ListObjects.Add(xlSrcRange, Range("$A$1:$AO$2959"), , xlYes).Name _ = "Table1" Range("A1:AO2959").Select ActiveSheet.ListObjects("Table1").TableStyle = "TableStyleMedium15" End Sub 

提前致谢。

尝试这一个目前的select:

 Sub A_SelectAllMakeTable2() Dim tbl As ListObject Set tbl = ActiveSheet.ListObjects.Add(xlSrcRange, Selection, , xlYes) tbl.TableStyle = "TableStyleMedium15" End Sub 

或者相当于你的macros(Ctrl + Shift +结束范围select):

 Sub A_SelectAllMakeTable() Dim tbl As ListObject Dim rng As Range Set rng = Range(Range("A1"), Range("A1").SpecialCells(xlLastCell)) Set tbl = ActiveSheet.ListObjects.Add(xlSrcRange, rng, , xlYes) tbl.TableStyle = "TableStyleMedium15" End Sub