【发布时间】:2023-01-24 01:11:00
【问题描述】:
我希望在不选择第一行并创建表格的情况下创建表格。然后根据工作表名称命名表格。
Sub ConvertDataToTables()
' For i = 3 To 5
' Sheets(i).Activate
' Rows(1).EntireRow.Delete
' Next i
For i = 3 To 5
On Error Resume Next
Sheets(i).Select
ActiveSheet.ShowAllData
Cells.AutoFilter
Range("A2").CurrentRegion.Select
If ActiveSheet.ListObjects.Count < 1 Then
ActiveSheet.ListObjects.Add.Name = ActiveSheet.Name
End If
Next i
表名由带空格的下划线组成,我不希望这样。所以 Sum Day = Sum_Day 来自我的代码。我还想让选择不选择顶行,而是选择下面的所有内容。
【问题讨论】:
-
表名不能包含空格。你有什么选择而不是下划线?您是否有工作表名称列表而不是它们不可靠的索引?
-
@VBasic2008 重命名表名和表名不带空格
-
您的意思是如果工作表名称是
data sheet,则将两者都重命名为DataSheet? -
@VBasic2008 是的
-
如果只是填空:
ActiveSheet.ListObjects.Add.Name = Replace(ActiveSheet.Name, " ", "")。顺便说一句,你应该学习如何避免使用Select和Activate