用于重命名工作表的VBA代码

时间:2017-09-27 05:52:54

标签: vba excel-vba excel

我有一个生成一组输出的VBA代码。生成输出后,我们希望通过从两个单元格中取值来重命名工作表,即D5和D6。

D5值为Wednesday
D6值为September 13, 2017

工作表的名称格式:wed 09-13

请帮忙。

2 个答案:

答案 0 :(得分:2)

尝试以下代码:

Option Explicit

Sub RenameActiveSheet()

Dim ShtName As String

With ActiveSheet
    ShtName = Left(.Range("D5").Value2, 3) & " " & Format(.Range("D6").Value, "mm-dd")
    .Name = ShtName
End With

End Sub

答案 1 :(得分:0)

由于没有关于如何根据您的输出重命名工作表的关系,我将向您展示这样做的关键组件。

下面将根据每个 D6 中的日期值重命名每个工作表。

Option Explicit

Sub SO46440400()
    Dim oWS As Worksheet
    ' Assuming rename each sheet based on a cell value (D6) on that sheet:
    For Each oWS In ThisWorkbook.Worksheets
        oWS.Name = LCase(Format(DateValue(oWS.Range("D6").Value), "ddd mm-dd"))
    Next
End Sub