Я пытался решить эту проблему в течение некоторого времени, но безрезультатно.
У меня есть файл, который отслеживает различные типы счетов.Счета-фактуры имеют как цифры, так и буквы ex.ABC_1234_12345678.Я хочу, чтобы Excel отформатировал коды счетов, добавив нижние баллы после того, как пользователь ввел код счета (без подчеркиваний).В настоящее время у меня есть код, который может сделать это для одной ячейки, но мне было интересно, как я могу изменить его формат, например, выбранное количество ячеекA1-A8.Я добавлю свой код в комментарии.
Спасибо за помощь, буду очень благодарен.:)
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rngWatch As Range
Dim strOld As String
Dim strNew As String
'What cell is the invoice number in?
Set rngWatch = Range("A1")
'Did user change it?
If Intersect(rngWatch, Target) Is Nothing Then Exit Sub
strOld = rngWatch.Value
'Are there already hypens?
If Len(strOld) = Len(Replace(strOld, "_", "")) Then strNew = Left(strOld, 3) & "_" & Mid(strOld, 4, 3) & "_" & Mid(strOld, 8)
'Turn this off for the momenet
Application.EnableEvents = False
rngWatch.Value = strNew
Application.EnableEvents = True
End If
End Sub