Почему vba заменяет SN-Sh на нули в снимке слова как 00ap00ot? - PullRequest
1 голос
/ 26 июня 2019

Когда я пытаюсь добавить новые листы с сегодняшним «снимком mm-dd» буквы sn-sh заменяются на 00 как «00ap00ot»

Sub SheetNameAsCurrentDate()
Dim SheetName As String
    'I am trying to add a new sheet with date & name
     SheetName = Format(Date, "mm-dd snapshot")
     Sheets. Add, Worksheets(Worksheets.Count)
    ActiveSheet.Name = SheetName
End Sub

Ответы [ 2 ]

2 голосов
/ 26 июня 2019

Ваше имя листа должно быть:

SheetName = Format(Date, "mm-dd") & " snapshot"

Вы форматируете Date, к которому привязано время ... использование "s" и т. Д. Связано с секундами и т. Д.

См .: https://docs.microsoft.com/en-us/office/vba/language/reference/user-interface-help/format-function-visual-basic-for-applications

1 голос
/ 26 июня 2019

Вы видите нули, потому что s, n & h - это специальные буквы в формате .Если вы хотите определить формат дополнительно, это способ сделать это:

Sub SheetNameAsCurrentDate()

    Dim sheetName As String
    sheetName = Format(Date, "mm-dd ""snapshot""")
    Debug.Print sheetName

End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...