Word VBA Макросы: Вставка номера из имени файла

Автор Rengame113, 22 мая 2018, 16:36

Rengame113

Как сделать следующее с помощью макроса?

Файл имеет название 1_0524_БРП.
Как вставить цифру 1 из названия файла (файл открыт) в №  от 01.01.2000г. чтобы получилось № 1 от 01.01.2000г.

Нюанс. Надо чтобы цифра выбиралась до первого знака _. Например:
01_0524_БРП - должно быть 01
021_0524_БРП - должно быть 021.

Администратор

Этот макрос не работает с именем файла, а работает с данными, которые находятся в переменной "FileName". Вам надо адаптировать этот макрос в свой макрос.

Чтобы предложенный мной макрос правильно сработал, после символа "№" должно быть два пробела, как в вашем примере.

Макрос
Sub макрос()

    Dim FileName As String, number As String, res
   
    ' Запись в переменные данных, с которыми надо работать.
    FileName = "01_0524_БРП"
    res = "№  от 01.01.2000г."
   
    ' Извлечение из имени файла числа, которое находится до символа "_".
    number = Left(FileName, InStr(FileName, "_") - 1)
   
    ' Подстановка числа в переменную "res".
    ' Нумерация в массиве после использования "Split" начинается с нуля.
        ' 1 - это второй элемент в массиве.
    res = Split(res, " ")
    res(1) = number
    res = Join(res, " ")

End Sub
[свернуть]