用于重命名图纸的VBA代码

用于重命名图纸的VBA代码,vba,excel,Vba,Excel,我有一个VBA代码生成一组输出。生成输出后,我们希望通过从两个单元格(即D5和D6)中获取值来重命名图纸 D5值为星期三 D6值为2017年9月13日 工作表的名称格式:wed 09-13 请提供帮助。请尝试以下代码: Option Explicit Sub RenameActiveSheet() Dim ShtName As String With ActiveSheet ShtName = Left(.Range("D5").Value2, 3) & " " &

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

D5值为
星期三

D6值为2017年9月13日

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

请提供帮助。

请尝试以下代码:

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

由于没有关于如何根据输出重命名工作表的关系,因此我将向您展示执行此操作的关键组件

下面将根据每张工作表的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

您没有尝试过
LCase(格式(范围(“D6”)。值,“ddd mm dd”)
?我不知道如何使用它。。。我是VBA新手,在选择单个单元格时,我得到了Activesheet.name=Range(“B5”)。。。但我希望B6列的值也是我指定的格式。。。任何帮助都将是免费的appreciated@NikhilThomas在调试模式下运行代码(按F8键)时,请将我的答案和下面的代码设置错误视为“参数数目错误或属性分配无效”@NikhilThomas在哪一行出现此错误?@NikhilThomas尝试关闭Excel并重新启动,从头开始,然后将此代码粘贴到“干净”中工作簿,数据在“D5”和“D6”中,这是我这边的一个错误。。。。我贴错了栏目。。。它工作得很好。非常感谢,我们只有一个子功能。。如果我最终需要在结束前进行此更改,如何修改它