Excel中的dynamic工作表名称为DATE

我在互联网上find了一个代码,并试用了它。 代码工作。 但我担心的是,我希望将表格重命名为date。 或者至less允许代码从单元格中读取mm / dd / yyyy的格式。

这里是代码示例:

Private Sub Worksheet_SelectionChange(ByVal Target As Range) Set Target = Range("A1") If Target = "" Then Exit Sub Application.ActiveSheet.Name = VBA.Left(Target, 31) End Sub 

如果A1的价值是06/01/2016,我希望我的表格名称为Jun01,2016,或者至less有名称为Date。

请注意..我也尝试了其他网站的其他build议,但仍然无法正常工作

如果date存储为文本,我们可能需要调整。 让我知道。

 Private Sub Worksheet_SelectionChange(ByVal Target As Range) If IsDate(Range("A1")) Then ActiveSheet.Name = Format(Range("A1"), "MM-DD-YYYY hh-mm-ss") End If End Sub 

我不确定为什么这必须是一个Worksheet_SelectionChange事件macros或为什么你要重写目标参数,但也许这将工作。

 Private Sub Worksheet_SelectionChange(ByVal Target as Range) If Target.Address <> "$A$1" or Not IsDate(Range("A1")) Then Exit Sub Me.Name = Format(Target.Value2, "mmmdd,yyyy") End Sub 

A1中select具有date(可能=today() )的A1(以及A1),并且工作表的名称将被调整(例如, Jul07,2016 )。