Помогите пожалуйста с формулой в VBA для Excel
О великий коллективный разум нашего Улья-Пикабу испрошаю твоей помощи и взываю к твоей мудрости. Помоги объединить следующие три функции в одну. Нужно чтобы в строке после заглавных букв русских и английских, а также после любой цифры вставал пробел. Нашёл три рабочих кода, но как их объединить в один не знаю - далёк я от этого. Вот функции:
Пробелы после цифр
Public Function separateNumbers(ByVal inText As String) As String
Static FReg As Object
If FReg Is Nothing Then
Set FReg = CreateObject("VBScript.RegExp")
FReg.Pattern = "([^ \d](?=\d)|\d(?=[^ \d]))"
FReg.Global = True
End If
separateNumbers = FReg.Replace(inText, "$1 ")
End Function
Пробелы после русских заглавных букв
Function InsSpaceRU(rng As Range) As String
Dim s As String, i As Integer, x, y
Set x = CreateObject("VBScript.RegExp"): x.Pattern = "[А-Я]": x.Global = True
s = rng.Value: Set y = x.Execute(s)
For i = 0 To y.Count - 1: s = Replace(s, y.Item(i), " " & y.Item(i)): Next
InsSpace = Application.Trim(s)
End Function
Пробелы после английских букв
Function InsSpaceENG(rng As Range) As String
Dim s As String, i As Integer, x, y
Set x = CreateObject("VBScript.RegExp"): x.Pattern = "[А-Z]": x.Global = True
s = rng.Value: Set y = x.Execute(s)
For i = 0 To y.Count - 1: s = Replace(s, y.Item(i), " " & y.Item(i)): Next
InsSpace = Application.Trim(s)
End Function
Большое спасибо!
MS, Libreoffice & Google docs
719 постов15K подписчика
Правила сообщества
1. Не нарушать правила Пикабу
2. Публиковать посты соответствующие тематике сообщества
3. Проявлять уважение к пользователям
4. Не допускается публикация постов с вопросами, ответы на которые легко найти с помощью любого поискового сайта.
По интересующим вопросам можно обратиться к автору поста схожей тематики, либо к пользователям в комментариях
Важно - сообщество призвано помочь, а не постебаться над постами авторов! Помните, не все обладают 100 процентными знаниями и навыками работы с Office. Хотя вы и можете написать, что вы знали об описываемом приёме раньше, пост неинтересный и т.п. и т.д., просьба воздержаться от подобных комментариев, вместо этого предложите способ лучше, либо дополните его своей полезной информацией и вам будут благодарны пользователи.
Утверждения вроде "пост - отстой", это оскорбление автора и будет наказываться баном.