Форум программистов, компьютерный форум, киберфорум
MS Office Excel
Войти
Регистрация
Восстановить пароль
 
0 / 0 / 0
Регистрация: 26.01.2017
Сообщений: 10
1

Извлечение цифр из текста в нужные ячейки (размеров изделия)

26.01.2017, 21:58. Просмотров 482. Ответов 6
Метки нет (Все метки)

Доброе время суток!
Есть таблица, где в первом столбце названия изделий с размерами. Значения размеров разделяются разными разделителями - "*", "х", "-" и другие.
Необходимо эти размеры разместить в соответствующие столбцы d,D,h и материал.
0
Вложения
Тип файла: xlsx Книга1.xlsx (9.8 Кб, 4 просмотров)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.01.2017, 21:58
Ответы с готовыми решениями:

Некорректное извлечение части текста из ячейки - формулой
Добрый вечер, уважаемые программисты. Вопрос к знающим. Здравствуйте, уважаемые специалисты по...

Извлечение времени из текста и подстановка в ячейки напротив нужного значения
Добрый день. Есть вопрос с подковыркой. Не знаю, возможно ли это? Есть на листе 2 таблицы. В...

Извлечение цифр из части текста и преобразование их в числа
Здравствуйте, гуру экселя. Посоветуйте как решить сложный вопрос. Есть текстовая строка "53463...

Вытащить часть цифр из текста ячейки
Добрый дня суток всем :) Разместил пример,хочу узнать,можно ли сделать такое стандартными...

6
2579 / 1673 / 686
Регистрация: 04.09.2015
Сообщений: 3,349
26.01.2017, 22:35 2
Очень длинная формула, поэтому разделил на две.
Первая отбрасывает текстовую часть, а вторая делит по ячейкам.
1
Вложения
Тип файла: xlsx Книга1.xlsx (9.7 Кб, 10 просмотров)
0 / 0 / 0
Регистрация: 26.01.2017
Сообщений: 10
26.01.2017, 22:53  [ТС] 3
Красиво! Понравилось что разбито на части и использование функции ПСТР. Разбираюсь дальше, маэстро. =)

Добавлено через 6 минут
Чтобы решить проблему с разными разделителями, может их заменить функцией Ctrl+F - найти все "*" и заменить на "х", потом найти все "-" и заменить на "х", возможно будут разделители "/" и тоже их заменить на "х" ?
0
2579 / 1673 / 686
Регистрация: 04.09.2015
Сообщений: 3,349
26.01.2017, 23:44 4
Все разделители в размере надо заменить на пробел.
После размера надо заменить запятые или другие знаки на пусто ""
Формула в таблице подставит вместо одного пробела 99 пробелов и разделит значения по ячейкам.
0
2579 / 1673 / 686
Регистрация: 04.09.2015
Сообщений: 3,349
27.01.2017, 00:52 5
Вариант с функцией пользователя
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Function Razmer(iStr As String, iCol As Long) As String
iStr = Replace(iStr, ",", "")
Set objRegExp = CreateObject("VBScript.RegExp")
objRegExp.Pattern = "[^ A-WYZa-wyzА-ФЦ-Яа-фц-яёЁ0-9]"
While objRegExp.Test(iStr)
    iStr = objRegExp.Replace(iStr, " ")
Wend
Arr = Split(iStr)
For i = 0 To UBound(Arr)
    If IsNumeric(Arr(i)) Then Exit For
Next i
If i + iCol - 1 > UBound(Arr) Then
    Razmer = ""
Else
    Razmer = Arr(i + iCol - 1)
End If
End Function
1
Вложения
Тип файла: xls Книга1_02.xls (40.0 Кб, 2 просмотров)
0 / 0 / 0
Регистрация: 26.01.2017
Сообщений: 10
27.01.2017, 11:29  [ТС] 6
Спасибо. А подскажите как быть, если размеры - десятичные дроби. например грязесъемник 60,2х70,5х9,5 NBR, уплотнение поршня 100.7x80.2x10.4 NBR
0
Вложения
Тип файла: xlsx Книга1_02.xlsx (12.7 Кб, 2 просмотров)
2579 / 1673 / 686
Регистрация: 04.09.2015
Сообщений: 3,349
27.01.2017, 12:17 7
Еще исправляет в размере точку на запятую
1
Вложения
Тип файла: xls Книга1_03.xls (42.0 Кб, 5 просмотров)
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.01.2017, 12:17

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Собрать все нужные ячейки массива
Задача такова: есть двумерный массив, ячейки которого равны либо 0, либо 1. Нужно за минимальное...

DataGridView. Редактирование ячейки. Убрать не нужные символы
Здравствуйте. Есть DataGridView1, который заполняется из Excel. В ячейки столбца вносятся данные,...

Как в gridControl (devexpress) закрашивать нужные ячейки
подскажите пожалуйста, как в gridControl закрашивать нужные ячейки...вообще как к ним...

Извлечение ячейки
Как переписать такую функцию на Delphi ? pz * OffserIdxArr(pz *args, size_t i) { return...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.