powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Подскажите, плиз (+) (выдернуть из каждой ячейки ПЕРВОЕ слово)
9 сообщений из 9, страница 1 из 1
Подскажите, плиз (+) (выдернуть из каждой ячейки ПЕРВОЕ слово)
    #32321892
minzdrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Приветствую!
Помогите, пожалуйста, решить проблему.
Есть поле с наборами текстовых значений. В каждой ячейке по несколько слов (только из букв), которые разделены произвольными символами (не буквами). Проблема в том, чтобы выдернуть из каждой ячейки ПЕРВОЕ слово, т.е. непрерывную последовательность буквенных символов. Длина первого слова в каждой ячейке разная. Буквы могут быть как кириллические (в 90% случаев), так и латиница.

Заранее благодарен.

С уважением, Мах.
...
Рейтинг: 0 / 0
Подскажите, плиз (+) (выдернуть из каждой ячейки ПЕРВОЕ слово)
    #32321901
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну и ищи первый пробел (а нет пробела - тогда берешь целиком)

? left("asss sss ssss",InStr(1,"asss sss ssss", " ",vbTextCompare))
...
Рейтинг: 0 / 0
Подскажите, плиз (+) (выдернуть из каждой ячейки ПЕРВОЕ слово)
    #32321902
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
for i=1 to len(s)
select case mid(s,i,1)
case"a"to"z","A"to"Z","а"to"я","А"to"Я"
case else
нашли, возвращаем left(s,i-1)
end select
next
если пришли сюда, возвращаем s

Если коды русских букв идут не подряд, то надо подправить соответственно.
...
Рейтинг: 0 / 0
Подскажите, плиз (+) (выдернуть из каждой ячейки ПЕРВОЕ слово)
    #32321906
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Виктор, там не сказано, что разделитель именно пробел.
...
Рейтинг: 0 / 0
Подскажите, плиз (+) (выдернуть из каждой ячейки ПЕРВОЕ слово)
    #32321909
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Виктор, там не сказано, что разделитель именно пробел.

Да? А что это тогда за язык?
==
Ну вместо пробела можно искать нужный произвольный символ (не буква)
...
Рейтинг: 0 / 0
Подскажите, плиз (+) (выдернуть из каждой ячейки ПЕРВОЕ слово)
    #32321913
CtrlAlt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Function LeftT(S As Variant) As String
Dim Sp

Sp = InStr(S,  " " )

If IsNull(Sp) Then LeftT = "": Exit Function
If Sp =  0  Then LeftT = S: Exit Function
    
LeftT = Left(S, Sp -  1 )

End Function

...
Рейтинг: 0 / 0
Подскажите, плиз (+) (выдернуть из каждой ячейки ПЕРВОЕ слово)
    #32321919
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
CtrlAlt, там не сказано, что разделитель именно пробел.
...
Рейтинг: 0 / 0
Подскажите, плиз (+) (выдернуть из каждой ячейки ПЕРВОЕ слово)
    #32321937
CtrlAlt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подстава.
Тогда я б лучше сделал строку со всеми символами, которые считаются буквами (типа "ABCDE... эюя"). А затем пробег по строке примерно как у ВС. И смотреть InStr символов в этой строке. Если такого нет - разделитель и на выход.
...
Рейтинг: 0 / 0
Подскажите, плиз (+) (выдернуть из каждой ячейки ПЕРВОЕ слово)
    #32321940
minzdrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Огромное спасибо за участие!

С уважением, Мах.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Подскажите, плиз (+) (выдернуть из каждой ячейки ПЕРВОЕ слово)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]