Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Access
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.12.2012, 10:27   #1
o600000
Пользователь
 
Регистрация: 07.08.2012
Сообщений: 25
По умолчанию Выбрать текст до определенного знака

Существует ли в ACCESS функция, позволяющая выбрать текст до определенного знака – по аналогии с функцией типа LEFT (Текст; 10)? Например, вместо «10 знаков вправо от начала текста» выбрать «все знаки от начала текста и вправо до знака ‘?’».
o600000 вне форума Ответить с цитированием
Старый 17.12.2012, 10:58   #2
shanemac51
Участник клуба
 
Аватар для shanemac51
 
Регистрация: 12.08.2010
Сообщений: 1,077
По умолчанию

Код:
s1=mid(text,1,12)
s1=mid(text,128,12)

j1=instr(text,"?")
if j1>1 then
s1=mid(text,1,j1-1)
else
s1=""
endif
Имя-Галина== почта shanemac51@yandex.ru скайп shanemac51 c 8-15мск будни
Сфера интересов--word-excel-access-распознавание
shanemac51 вне форума Ответить с цитированием
Старый 17.12.2012, 11:39   #3
o600000
Пользователь
 
Регистрация: 07.08.2012
Сообщений: 25
Печаль

Цитата:
Сообщение от shanemac51 Посмотреть сообщение
Код:
s1=mid(text,1,12)
s1=mid(text,128,12)

j1=instr(text,"?")
if j1>1 then
s1=mid(text,1,j1-1)
else
s1=""
endif
Спасибо за ответ, но я не специалист в программировании.
Максимум известное мне – это построитель запросов.
В рабочем запросе это выглядит так:
---
INSERT INTO я_рбч_Бессонница ( Дата, Время, Знаков, Причина )
SELECT
Left([00 СНОВИДЕНИЯ]![Дата сна],6) AS [ID СВ], [00 СНОВИДЕНИЯ].[Время сна],
Sum(Len([00 СНОВИДЕНИЯ]!Видение)) AS [Объем СВ по LEN],
Left([00 СНОВИДЕНИЯ]!Комментарий,40) AS [Коммент 40]
FROM [00 СНОВИДЕНИЯ]
GROUP BY Left([00 СНОВИДЕНИЯ]![Дата сна],6), [00 СНОВИДЕНИЯ].[Время сна], Left([00 СНОВИДЕНИЯ]!Комментарий,40)
HAVING (((Left([00 СНОВИДЕНИЯ]![Дата сна],6)) Not Like "*С*" And (Left([00 СНОВИДЕНИЯ]![Дата сна],6))>"121120") AND ((Sum(Len([00 СНОВИДЕНИЯ]![Видение]))) Is Not Null))
ORDER BY Left([00 СНОВИДЕНИЯ]![Дата сна],6) DESC;

---
Мне надо вместо текста из 40 знаков «Комментария»
Left([00 СНОВИДЕНИЯ]!Комментарий,40) AS [Коммент 40]
выбрать первое предложение из поля «Комментарий» (т.е. оканчивающееся точкой – знаком «.»).
Каким образом вписать Ваш код в инструкцию моего запроса?
o600000 вне форума Ответить с цитированием
Старый 17.12.2012, 12:16   #4
gluk_fm
Форумчанин
 
Аватар для gluk_fm
 
Регистрация: 09.06.2011
Сообщений: 515
По умолчанию

Доброе утро.
Вам и дали отвтет, функция:
Код:
mid(текст;с какого знака;количество знаков)
или в вашем случае как-то так (пока по памяти)
mid(текст;с какого знака;instr(с какого знгака начинать искать;текст;параметр поиска (только вот со знаком "?" конечно может возникнуть проблема);тип поиска)
Краткое описание:
1. mid - аналогична функции "левсимв"
2. instr - для поиска входа значения в сроке. Пример: instr(1;"хлеб. 40 коп.";".";0) = 5 или instr(6;"хлеб. 40 коп.";".";0) = 8
Это по памяти не судите если где-то ошибка, на данный м омент не могу открыть аццесс
По данным функциям Вы можете почитать в гугле.

Хорошего дня.

Последний раз редактировалось gluk_fm; 17.12.2012 в 12:25.
gluk_fm вне форума Ответить с цитированием
Старый 08.09.2013, 14:44   #5
Sotochka
Новичок
Джуниор
 
Регистрация: 08.09.2013
Сообщений: 1
По умолчанию

Здравствуйте, помогите,, пожалуйста вытащить часть текста, пожалуйста...

Задача такая: есть текст в мемо поле, он такого вида: 23-26-32 или может быть таким: 37,4-23-41,2 и в таком роде... мне необходимо вырезать каждое число до тире и вставить каждое в отдельное мемо поле, то есть в конце концов у меня должно остаться три мемо поля с числами: 23 в другом 26 в следующем 32 или 37,4 во втором мемо 23 а в третьем 41,2... не могу этого сделать никак... наверное потому что я не программист... Заранее спасибо))
Sotochka вне форума Ответить с цитированием
Старый 09.09.2013, 09:23   #6
Волшебник
Пользователь
 
Аватар для Волшебник
 
Регистрация: 17.08.2011
Сообщений: 39
По умолчанию

Sotochka,
Используйте split
-----------------------------
307 МОНЕТ ВОЛШЕБНИКА
Волшебник вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выбрать записи содержащие %текст% Человек_Борща Microsoft Office Access 6 21.10.2012 23:51
httppost и отображение знака & как знака? maloy_ya Работа с сетью в Delphi 4 12.03.2012 20:47
Последовательность одного знака systemv Помощь студентам 5 27.12.2010 22:42
Поиск смены знака Franky21 Общие вопросы C/C++ 5 09.03.2010 00:35
2-а знака после запятой vitamin.rulez Помощь студентам 7 22.05.2009 16:02