Форум программистов, компьютерный форум, киберфорум
MS Office Excel
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.55/29: Рейтинг темы: голосов - 29, средняя оценка - 4.55
0 / 0 / 0
Регистрация: 30.01.2016
Сообщений: 7
1

Выбрать из текста только цифры в квадратных скобках

30.01.2016, 17:18. Показов 5742. Ответов 20
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Привет! Помогите, пожалуйста, довести дело до ума-профан в программе. Е
сть текст, из которого нужно выбрать только цифры в квадратных скобках. Пример, Пирог яблочный [6789054]. Использовала формулу
Код
=ПРАВСИМВ(С6;8)
. При этом получается 6789054]. Не понимаю как избавится от скобки в конце.
Спасибо заранее за помощь!
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.01.2016, 17:18
Ответы с готовыми решениями:

Только цифры в {фигурных скобках}
Знаю что для цифр вот так: preg_replace('//', '', $string); не могу дописать чтобы он их в...

Выражение в квадратных скобках
Здравствуйте. Заранее прошу прощения за странный вопрос, дело в том, что сам пишу на C++, но...

Что за конструкция в квадратных скобках?
public void ListOrders() { foreach(OrderMarket market in...

Удалить подстроку в квадратных скобках
Есть трабла, не понимаю почему возникает ошибка при компиляции, может кто нибудь встречался с...

20
6002 / 3197 / 716
Регистрация: 23.11.2010
Сообщений: 10,684
30.01.2016, 17:52 2
grekh, если чуть поправить Вашу
Код
=ПСТР(ПРАВСИМВ(A1;8);1;7)
точно всегда 7 цифр?
0
2900 / 1716 / 703
Регистрация: 04.09.2015
Сообщений: 3,433
30.01.2016, 18:46 3
Лучший ответ Сообщение было отмечено Fairuza как решение

Решение

Или так
Код
=ЛЕВБ(ПРАВБ(A1;8);7)
0
772 / 615 / 294
Регистрация: 05.01.2014
Сообщений: 1,338
30.01.2016, 19:03 4
Цитата Сообщение от Fairuza Посмотреть сообщение
точно всегда 7 цифр?
Код
=ПСТР(A1;2;7)
0
2900 / 1716 / 703
Регистрация: 04.09.2015
Сообщений: 3,433
30.01.2016, 20:38 5
AleksSid, ваша формула вернет ирог яб
0
0 / 0 / 0
Регистрация: 30.01.2016
Сообщений: 7
31.01.2016, 00:05  [ТС] 6
Пока ждала ответ, намудрила очень сложно, но скобка исчезла
Код
=ПСТР(A4;ПОИСК("[";A4)+1;ПОИСК("]";A4)-ПОИСК("[";A4)-1)
Сейчас попробую по вашим формулам. Спасибо!

Добавлено через 7 минут
Золотой Стандарт в/ст ГОСТ Пломбир 15% [3514771] это исходный текст для преобразования.
Проще не получается по вашим формулам

Добавлено через 3 минуты
Код
=ЛЕВБ(ПРАВБ(A1;8);7)
Спасибо большое!
По этой получилось!!!А то оооочень длинная и не понятная формула получилась до этого
0
132 / 108 / 22
Регистрация: 23.06.2015
Сообщений: 339
31.01.2016, 00:50 7
grekh,добрый вечер,попробуйте вытягивать произвольное количество цифр из квадратных скобок функцией yyy
в ячейке C1 в файл- примере

Visual Basic
1
2
3
4
5
Function yyy(t$)
 With CreateObject("VBScript.RegExp"): .Pattern = "\[(\d+)\]"
      If .test(t) Then yyy = .Execute(t)(0).Submatches(0)
 End With
End Function
Вложения
Тип файла: xls example_31_01_2016_cbr.xls (34.5 Кб, 7 просмотров)
0
772 / 615 / 294
Регистрация: 05.01.2014
Сообщений: 1,338
31.01.2016, 06:10 8
Вопрос не увидел! Почему то решил, что нужно избавиться только от скобок.
0
0 / 0 / 0
Регистрация: 30.01.2016
Сообщений: 7
31.01.2016, 17:41  [ТС] 9
Профессионалы, подскажите, пожалуйста еще по этой теме. В следующем задании в столбике встречаются кроме семизначных и пятизначные коды, например, Золотой Стандарт в/ст Сгущёнка [50315]. При использовании формулы =ПСТР(ПРАВСИМВ(А1;8);1;7) остается теперь скобка слева от пятизначного кода [50315 а с семизначными все красиво.
Svsh2015 то, что вы мне написали моему мозгу совершенно недоступно. Это использование VBA? Где этому можно научиться?
0
772 / 615 / 294
Регистрация: 05.01.2014
Сообщений: 1,338
31.01.2016, 18:10 10
grekh, используйте свою формулу из поста #6.
0
6002 / 3197 / 716
Регистрация: 23.11.2010
Сообщений: 10,684
31.01.2016, 18:13 11
Вариант
Код
=ПСТР(A1;НАЙТИ("[";A1)+1;ДЛСТР(A1)-НАЙТИ("[";A1)-1)
0
2636 / 1335 / 256
Регистрация: 25.10.2010
Сообщений: 2,196
31.01.2016, 18:18 12
Ещё вариант
Код
=ПОДСТАВИТЬ(ЗАМЕНИТЬ(A1;1;ПОИСК("[";A1););"]";)
0
0 / 0 / 0
Регистрация: 30.01.2016
Сообщений: 7
31.01.2016, 18:54  [ТС] 13
Спасибо!Получилось!Следующий вопрос по сложнее-в темах не нашла такого.Подскажите, пожалуйста, здесь или может ссылку, где глянуть. Есть длинная таблица.3 столбика.Нужно сложить данные в третьем столбике, если дата и адрес в первых двух совпадают
01.03.2011 Горская, 12 4
01.03.2011 Горская, 12 16
01.03.2011 пл. Калинина, 1 28
01.03.2011 Петухова, 6/1 6
01.03.2011 Горская, 12 2
01.03.2011 Горская, 12 11
01.03.2011 Петухова, 6/1 12
01.03.2011 Петухова, 6/1 5
02.03.2011 пл. Маркса, 4 8
0
132 / 108 / 22
Регистрация: 23.06.2015
Сообщений: 339
31.01.2016, 19:34 14
grekh,добрый вечер,yyy -это обычная пользовательская функция(UDF),такие функции проще обычных формул,
лучше всего смотреть примеры на форуме,находятся такие функции в стандартном модуле( например в файл -примере ,там ,где
макрос help).Функцию yyy можно вырезать ,копировать,вводить вручную.Набираете в ячейке,например=yyy,выскакивает меню,выбираете функцию,заносите в скобки адрес ячейки,например A1,вручную или мышью,закрываете правую скобку,если ее нет,затем Enter.
Почитайте про регулярные выражения,например "Регулярные выражения"Джеффри Фридл,2015.
Вариант функции zzz в E1 без регуляркиПро UDF,например,Джон Уокенбах,2014,с.278" Excel2013 Профессиональное программирование на VBA")

Код
Function zzz(t$)
 zzz = Split(Split(t, "[")(1), "]")(0)
End Function
Вложения
Тип файла: xls example_31_01_2016_cbr (1)_сайт1.xls (35.0 Кб, 2 просмотров)
0
132 / 108 / 22
Регистрация: 23.06.2015
Сообщений: 339
31.01.2016, 20:01 15
добавлю,ответ на #13,функция uuu в C1

Visual Basic
1
2
3
4
5
6
7
Function uuu#(r As Range)
  Dim x, z, i&: z = r.Value
For i = 1 To UBound(z)
  x = Split(z(i, 1))
  uuu = uuu + CDbl(x(UBound(x)))
Next
End Function
Вложения
Тип файла: xls example_1_02_2016_cbr.xls (36.0 Кб, 5 просмотров)
0
2636 / 1335 / 256
Регистрация: 25.10.2010
Сообщений: 2,196
31.01.2016, 20:06 16
Цитата Сообщение от grekh Посмотреть сообщение
3 столбика
СУММЕСЛИМН() или сводная таблица. Подробнее при наличии файла с примером

Не по теме:

Только вот какое отношение имеет этот вопрос к данной теме?

0
132 / 108 / 22
Регистрация: 23.06.2015
Сообщений: 339
31.01.2016, 20:33 17
grekh,действительно,необходим файл пример,подредактировал функцию в D1 ,например,когда t, Горская

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
Function uuu1#(r As Range, t$)
  Dim x, x1, t1, x2, z, i&: z = r.Value
For i = 1 To UBound(z)
  x1 = Split(z(i, 1), ",")
  t1 = x1(0)
  x2 = Split(t1)
If t = x2(UBound(x2)) Then
  x = Split(z(i, 1))
  uuu1 = uuu1 + CDbl(x(UBound(x)))
End If
Next
End Function
Вложения
Тип файла: xls example_1_02_2016_cbr2.xls (39.0 Кб, 2 просмотров)
0
132 / 108 / 22
Регистрация: 23.06.2015
Сообщений: 339
31.01.2016, 21:06 18
grekh,добавил еще параметр d для даты в ячейке H1 для Горская,аналогично для Петухова,Калинина, Маркса и соответствующей даты.

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Function uuu2#(r As Range, t$, d)
  Dim x, x1, t1, x2, x3, z, i&: z = r.Value
For i = 1 To UBound(z)
  x3 = Split(z(i, 1))
  d = x3(0)
  x1 = Split(z(i, 1), ",")
  t1 = x1(0)
  x2 = Split(t1)
If t = x2(UBound(x2)) And d = x3(0) Then
  x = Split(z(i, 1))
  uuu2 = uuu2 + CDbl(x(UBound(x)))
End If
Next
End Function
Вложения
Тип файла: xls example_1_02_2016_cbr3.xls (39.0 Кб, 3 просмотров)
0
0 / 0 / 0
Регистрация: 30.01.2016
Сообщений: 7
31.01.2016, 21:19  [ТС] 19
Согласна, не по теме.Создала новую тему
вот ссылка
Сложение ячеек в столбце при совпадении ячеек в двух соседних столбцах
Ребята, я не смогу так быстро разобраться в макросах.Мне нужно быстро и доступно в формулах.Вложила образец
Вложения
Тип файла: xlsx для форума.xlsx (8.9 Кб, 5 просмотров)
0
0 / 0 / 0
Регистрация: 30.01.2016
Сообщений: 7
31.01.2016, 21:28  [ТС] 20
Svsh2015 попробовала =uuu как вы указали во вложенном файле-не получилось, к сожалению. Не умею я так. Что-то делаю не так
0
31.01.2016, 21:28
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
31.01.2016, 21:28
Помогаю со студенческими работами здесь

Вытащить слово в квадратных скобках
Здравствуйте. Только начал изучать регулярные выражения. Столкнулся с такой ситуацией, в такой...

Скрывать текст в квадратных скобках
Всем доброго времени суток Собственно вопрос в том как скрывать текст между знаками и ] вместе...

Список в квадратных скобках в тексте
Здравствуйте, прошу подсказать, как сделать список в квадратных в скобках в тексте: Бла-бла-бла ...

Строка, замена значений в квадратных скобках
Существуют некоторые глобальные переменные: X = 10, Y = 25, Z = 43 Необходимо обрабатывать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru