Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / вычленить цифры из строки / 25 сообщений из 26, страница 1 из 2
10.02.2010, 14:30
    #36460601
casual user
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вычленить цифры из строки
Всем привет!
Есть ли какая-нибудь из многочисленных экселевских функций (или сочетанием) из значения инв123321 получить 123321 в другой ячейке (хотелось бы без применения VBA)?
...
Рейтинг: 0 / 0
10.02.2010, 14:36
    #36460637
vizit73
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вычленить цифры из строки
=ПСТР(A1;4;6)
в ячейке А1 инв123321 отбирает с 4 символа 6 символов
...
Рейтинг: 0 / 0
10.02.2010, 14:48
    #36460693
casual user
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вычленить цифры из строки
vizit73=ПСТР(A1;4;6)
в ячейке А1 инв123321 отбирает с 4 символа 6 символов
спасибо, но это только для случая три буквы - 6 цифр. Видимо, нужно было уточнить, что количество букв и цифр произвольное. Известно только то, что сначала ряд букв, затем цифры. Эксель 2003 на всякий случай.
...
Рейтинг: 0 / 0
10.02.2010, 15:36
    #36460889
Ser Artur
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вычленить цифры из строки
Не хорошо как то. Представь
1 вариант
Код: plaintext
АВС123456789 - ПСТР(A1; 4 ; 6 ) получим  123456 
2 вариант
Код: plaintext
АВСD123456789 - ПСТР(A1; 4 ; 6 ) получим D12345
Ты должен выяснить буквы перд числами "стандартные", то есть их три или четыре и т.д..
Если нет, то надо искать другой вариант.
3 вариант
сделай 2 столбца
Код: plaintext
1.
2.
--------Код---------|
АBС    |  123456789    |
ABCD  |  123456789    |
4 вариант когда после букв идут числа потом буквы
Код: plaintext
1.
2.
--------Код----------|
АBС    |  1234    | EF   |
ABCD  |  12345   | EFG |


такой вот каламбур
...
Рейтинг: 0 / 0
10.02.2010, 15:37
    #36460891
Ser Artur
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вычленить цифры из строки
Файл покажи посмотрим что можно сделать
...
Рейтинг: 0 / 0
10.02.2010, 16:57
    #36461203
alex_gearbox
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вычленить цифры из строки
Если это действительно инвентаризационные номера, то они должны подчиняться каким-то правилам составления.

Определите «правила» и работайте с каждым из них.
...
Рейтинг: 0 / 0
10.02.2010, 17:26
    #36461307
Dophin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вычленить цифры из строки
=ПСТР(A1;МИН(ЕСЛИ(ЕЧИСЛО(--ПСТР(A1;СТРОКА(1:99);1));СТРОКА(1:99)));СЧЁТ(--ПСТР(A1;СТРОКА(1:99);1)))

формула массива
...
Рейтинг: 0 / 0
10.02.2010, 17:38
    #36461344
vizit73
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вычленить цифры из строки
casual user,

Ну тогда всё таки через VBA.
Открываем чистую книгу, с одним листом, Alt-F11, попадаем в нелюбимый VBA, добавляем модуль (Insert->Module) вставляем код:

Код: plaintext
1.
2.
3.
4.
5.
6.
Function Расчленение(Строка)
    Расчленение = ""
    ДлинаСтроки = Len(Строка)
        For i% =  1  To ДлинаСтроки
         If Asc(Mid$(Строка, i%,  1 )) >  47  And Asc(Mid$(Строка, i%,  1 )) <  58  Then Расчленение = Расчленение + Mid$(Строка, i%,  1 )
        Next i%
End Function

или чего нибудь своё ваяем. Закрываем среду VBA. Сохраняем как "Надстройка Microsoft Office Excel" с зловещим именем "Расчленение".

Открываем своё творение, где надо использовать данную функцию, заходим в (Сервис -> Надстройки) и через обзор находим файлик Расчленение.xla, который успешно подключаем и также успешно используем функцию =Расчленение(A1) там где хотим. Усё.
...
Рейтинг: 0 / 0
10.02.2010, 17:42
    #36461357
vizit73
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вычленить цифры из строки
Dophin=ПСТР(A1;МИН(ЕСЛИ(ЕЧИСЛО(--ПСТР(A1;СТРОКА(1:99);1));СТРОКА(1:99)));СЧЁТ(--ПСТР(A1;СТРОКА(1:99);1)))

формула массива

Проверил ради интереса, у меня ошибка #ЗНАЧ!
...
Рейтинг: 0 / 0
10.02.2010, 17:44
    #36461367
DV68
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вычленить цифры из строки
casual uservizit73=ПСТР(A1;4;6)
в ячейке А1 инв123321 отбирает с 4 символа 6 символов
спасибо, но это только для случая три буквы - 6 цифр. Видимо, нужно было уточнить, что количество букв и цифр произвольное. Известно только то, что сначала ряд букв, затем цифры. Эксель 2003 на всякий случай.
Если формулы массива не пугают, то можно так (текст в А1):
=ПСТР(A1;ПОИСКПОЗ(1;--(ЕЧИСЛО(--ПСТР(A1;СТРОКА($1:$20);1)));0);33)
Ввод формулы - одновременное нажатие Ctrl+Alt+Enter
...
Рейтинг: 0 / 0
10.02.2010, 17:45
    #36461372
Dophin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вычленить цифры из строки
vizit73,

фраза "формула массива" Вам что нибудь говорит?
...
Рейтинг: 0 / 0
10.02.2010, 17:47
    #36461379
DV68
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вычленить цифры из строки
Упс, пока пис а л, уже ответ появился
...
Рейтинг: 0 / 0
10.02.2010, 17:48
    #36461386
vizit73
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вычленить цифры из строки
Dophinvizit73,

фраза "формула массива" Вам что нибудь говорит?

ни шиша не говорит.
...
Рейтинг: 0 / 0
10.02.2010, 17:52
    #36461403
Dophin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вычленить цифры из строки
vizit73,

введите формулу и нажмите Ctrl+Shift+Enter

формула работает с любой ячейкой где числа идут подряд, то есть
фив123 - 123
123выаы - 123
выаё123ываы - 123

но
ыва12в3 - 12в
...
Рейтинг: 0 / 0
10.02.2010, 17:54
    #36461407
vizit73
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вычленить цифры из строки
Dophin,
Другое дело, а то там выше была комбинация Ctrl+Alt+Enter
...
Рейтинг: 0 / 0
10.02.2010, 17:58
    #36461417
DV68
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вычленить цифры из строки
vizit73Dophin,
Другое дело, а то там выше была комбинация Ctrl+Alt+Enter
Признаю, мой косяк. Просто глаза уже слипаются, спать пойду, у нас ночь уже.
...
Рейтинг: 0 / 0
10.02.2010, 17:58
    #36461419
casual user
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вычленить цифры из строки
Dophin=ПСТР(A1;МИН(ЕСЛИ(ЕЧИСЛО(--ПСТР(A1;СТРОКА(1:99);1));СТРОКА(1:99)));СЧЁТ(--ПСТР(A1;СТРОКА(1:99);1)))

формула массива
Спасибо, на первый взгляд работает.
...
Рейтинг: 0 / 0
10.02.2010, 17:59
    #36461425
vizit73
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вычленить цифры из строки
vizit73,
Прикольно, формулы массива никогда ещё не разбирал. Правда вариант
Код: plaintext
=ПСТР(A1;ПОИСКПОЗ( 1 ;--(ЕЧИСЛО(--ПСТР(A1;СТРОКА($ 1 :$ 20 ); 1 ))); 0 ); 33 )
при символе после цифр, она его цепляет также как и внутри цифр.
...
Рейтинг: 0 / 0
10.02.2010, 18:07
    #36461455
DV68
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вычленить цифры из строки
vizit73,
Зато не отбрасывает последние цифры, при буквах между цифрами. Под условие задачи подходит. Будут другие условия - будет другое решение:)
...
Рейтинг: 0 / 0
10.02.2010, 18:10
    #36461467
casual user
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вычленить цифры из строки
casual userDophin=ПСТР(A1;МИН(ЕСЛИ(ЕЧИСЛО(--ПСТР(A1;СТРОКА(1:99);1));СТРОКА(1:99)));СЧЁТ(--ПСТР(A1;СТРОКА(1:99);1)))

формула массива
Спасибо, на первый взгляд работает.
На второй взгляд работает только для нескольких первых значение. См. файл.
В свое оправдание могу сказать, что этот бардак - результат творческого подхода бухгалтерии.
...
Рейтинг: 0 / 0
10.02.2010, 18:16
    #36461484
vizit73
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вычленить цифры из строки
casual user,
Бухгалтерия это наше мучение и бабло.
VBA-шка работает во всю, надо только подкоректировать условие для знаков ? и -
...
Рейтинг: 0 / 0
10.02.2010, 18:20
    #36461494
casual user
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вычленить цифры из строки
vizit73casual user,
Бухгалтерия это наше мучение и бабло.
VBA-шка работает во всю, надо только подкоректировать условие для знаков ? и -
Если "бабло" - это грубый аналог "собрание женщин", то я согласен. Если нет - то нет :-)
...
Рейтинг: 0 / 0
10.02.2010, 18:25
    #36461508
DV68
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вычленить цифры из строки
casual user,

там в трех местах в формуле надо было закрепить строки:
СТРОКА($1:$99)
...
Рейтинг: 0 / 0
10.02.2010, 19:01
    #36461587
Dophin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вычленить цифры из строки
Function getnumeric(t As Range)
Dim i As Integer, j As Integer, l
i = Len(t)
For j = 1 To i
If IsNumeric(Mid(t, j, 1)) Then
l = l + Mid(t, j, 1)
End If
Next j
getnumeric = Val(l)
End Function


вставьте в модуль макросов. теперь при вводе в ячейку =getnumeric(a1) получите все цифры из ячейки А1, независимо от того где и как они стояли
...
Рейтинг: 0 / 0
10.02.2010, 19:10
    #36461602
vizit73
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вычленить цифры из строки
Dophin,
У него там некоторые цифры бухгалтера заменили знаками ? и в некоторых комбинациях цифр иногда вклинивается знак -, который может быть прописан в инвентаризационной книге. Вполне возможно что надо не только цифры вычленить.
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / вычленить цифры из строки / 25 сообщений из 26, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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