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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 23.02.2011, 10:40   #1
gramp
Пользователь
 
Регистрация: 26.12.2010
Сообщений: 85
По умолчанию разделить значение ячейки на две переменные

подскажите, пожалуйста
1. в ячейке надпись - "Подшипник12345", как можно ее разбить на две переменные, при этом первой будет присвоено первые 9 символов, то есть "Подшипник", а второй переменной присвоены последние 5 символов, то есть "12345"?
2. в ячейке надпись "Подшипник|12345", то есть с разделителем и необходимо получить две переменные - до разделителя и после, как это можно сделать?
gramp вне форума Ответить с цитированием
Старый 23.02.2011, 10:51   #2
vikttur
Участник клуба
 
Регистрация: 16.05.2010
Сообщений: 1,249
По умолчанию

Меню Данные-Текст_по_столбцам-Фиксированной_ширины
или С_разделителями.
vikttur вне форума Ответить с цитированием
Старый 23.02.2011, 11:04   #3
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

A1=Подшипник12345
A2=Подшипник|12345

Код:
Sub tt()
x = Left([a1], 9)
y = Right([a1], 5)
x = "": y = ""
x = Split([a2], "|")(0)
y = Split([a2], "|")(1)
End Sub
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 23.02.2011, 11:07   #4
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Вить, а если ширина не фиксированная?
Вложения
Тип файла: rar Dividestr.rar (6.7 Кб, 14 просмотров)
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728
kuklp вне форума Ответить с цитированием
Старый 23.02.2011, 11:16   #5
vikttur
Участник клуба
 
Регистрация: 16.05.2010
Сообщений: 1,249
По умолчанию

Цитата:
Сообщение от kuklp
Вить, а если ширина не фиксированная?
Цитата:
Сообщение от kuklp
...при этом первой будет присвоено первые 9 символов...,а второй переменной присвоены последние 5 символов...
Я послушный, от пожеланий автора ни-ни
vikttur вне форума Ответить с цитированием
Старый 23.02.2011, 12:48   #6
gramp
Пользователь
 
Регистрация: 26.12.2010
Сообщений: 85
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
A1=Подшипник12345
A2=Подшипник|12345

Код:
Sub tt()
x = Left([a1], 9)
y = Right([a1], 5)
x = "": y = ""
x = Split([a2], "|")(0)
y = Split([a2], "|")(1)
End Sub
если не сложно, объясните, что означает строка x = "": y = ""
и зачем в строке x = Split([a2], "|")(0) ноль в скобках в конце строки
учусь кодить, хочется понять
gramp вне форума Ответить с цитированием
Старый 23.02.2011, 12:54   #7
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

x = "": y = ""
это я очистил переменные, для наглядности. Двоеточие просто чтоб в одной строке записать.
Ноль в скобках - это первый элемент полученного массива (счёт в данном случае идёт с нуля)
Split([a2], "|") вернёт весь массив.
Содержимое переменных и массивов смотрите в окне "Locals".
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 23.02.2011, 13:07   #8
gramp
Пользователь
 
Регистрация: 26.12.2010
Сообщений: 85
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
x = "": y = ""
это я очистил переменные, для наглядности. Двоеточие просто чтоб в одной строке записать.
Ноль в скобках - это первый элемент полученного массива (счёт в данном случае идёт с нуля)
Split([a2], "|") вернёт весь массив.
Содержимое переменных и массивов смотрите в окне "Locals".
спасибо
а зачем было их очищать?
gramp вне форума Ответить с цитированием
Старый 23.02.2011, 13:16   #9
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

Чтоб увидеть, что они поменялись
Если бы было
A2=Гайка|0987
то можно было бы и не очищать.
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 24.02.2011, 09:17   #10
gramp
Пользователь
 
Регистрация: 26.12.2010
Сообщений: 85
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
Чтоб увидеть, что они поменялись
Если бы было
A2=Гайка|0987
то можно было бы и не очищать.
все равно пока не понял, зачем очищать
попробую сам этот код применить, тогда, если чтото непонятно будет, спрошу
а за код спасибо )
gramp вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
разделить число например 1234, и переместить в четыре переменные pomoshnic Помощь студентам 5 22.12.2008 20:29
Как сумму из одной ячейки разделить на две именных? Сан Саныч Microsoft Office Excel 14 20.12.2008 09:44
Как разделить число и текст в одной ячейки на две ячейки. neboskreb Microsoft Office Excel 2 15.04.2008 19:39
как разделить текст на переменные GAGARIN-NEW Общие вопросы Delphi 2 07.10.2007 15:24
Как разделить текст в Tedit на 2 переменные. Ната Общие вопросы Delphi 2 23.04.2007 12:48