можно сделать на гугл таблицах и подключить телеграмм или электронную почту
Форум на данный момент в стадии обновления. Если у Вас возникли проблемы со входом в свою учетную запись - просьба писать на email: info@excel-vba.ru
В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.
Просмотр сообщенийЦитата: Дмитрий Щербаков(The_Prist) от 08.06.2018, 16:53:34Что за зверь. Ща гляну
Если у Вас 2010 и выше, то можно использовать PowerQuery..
.Pattern = "(FV)?[-#0-9?/]{6,}"
Function BNBFinder(NaznacheniePlatezha As String, ListBazyPoiska As String, StolbecFIO As Integer, StolbecDBZ As Integer) As String
'
'
'
'NaznacheniePlatezha - ячейка Назначение платежа из банковской выписки текст которой будет анализироваться
'ListBazyPoiska - Название листа, в котором находятся все разнородные данные из базы и откуда будет производиться поиск
'StolbecFIO - номер столбца, содержащий ФИО должника, которого требуется определить
'StolbecDBZ - номер столбца, содержащий ДБЗ должника, которого требуется определить
'
'
'
Dim SheetNumber As Integer
Dim t As String
Dim nurbol As String
Dim x As Integer
Dim r
Dim s
s = ""
SheetNumber = Worksheets(ListBazyPoiska).Index
t = NaznacheniePlatezha
t = Replace(NaznacheniePlatezha, Chr(10), "") 'удаляем переносы строк
With CreateObject("VBscript.RegExp")
.Global = True
.Pattern = "(FV)?[-#0-9?/]{6,}"
If .test(t) Then
For x = 0 To .Execute(t).Count - 1
Set r = Sheets(SheetNumber).UsedRange.Find(.Execute(t)(x), lookat:=xlWhole) 'xlPart) 'xlWhole)
If Not r Is Nothing Then
s = s + "ФИО: " & Sheets(SheetNumber).Cells(r.Row, StolbecFIO) & Chr(10) & "ДБЗ: " & Sheets(SheetNumber).Cells(r.Row, StolbecDBZ) & Chr(10)
End If
Next x
If Len(s) > 0 Then
nurbol = Left(s, Len(s) - 1)
Else: nurbol = ""
End If
End If
End With
BNBFinder = nurbol
End Function
Цитата: sboy от 04.05.2018, 09:26:51понятно, будем пробовать
это определяется параметром поиска, можно изменить на поиск части
Цитата: sboy от 04.05.2018, 09:26:51вместо четверки и напишите какой столбец нужен. Или он не известен заранее?Да, неизвестен. Точнее, известен, но нужно передать его в параметрах функции так как разные пользователи с разными файлами. Но здесь я попробую сам. Если не получится - тогда к вам обращусь. Пока не хочу сильно тревожить - итак хорошо помогли, чтобы отвлекать на такие мелочи.
Цитата: sboy от 04.05.2018, 09:26:51перебирает и соединяет всеА вот это интересно. Есть возможность, как-то их в массив, что ли, собирать, а выдавать по индексу, который передается вместе с параметрами функции?
Цитата: sboy от 04.05.2018, 09:26:51тут не подскажу, т.к. работаю только на 2010, нет возможности проверить. В 2010 тоже не находит (из-за пробела)Ладно, будем экспериментировать. Может "lookat:=xlPart" поможет.
lookat:=xlPart