Задача следующего плана. Есть столбик таблицы в котором содержатся ячейки приблизительно следующего содержания:
"Лейтес Н.С. Возрастная одаренность школьников. учеб. пособие"
Нужно из этого столбика сделать 2, в первом написать "Лейтес Н.С.", во втором "Возрастная одаренность школьников. учеб. пособие" при этом длина столбцов разная, что естественно и длина фамилий соответственно тоже разная.
Я сам по себе можно сказать начинающий программист и если бы у меня был текстовый файл с подобными строками я бы смог его разделить, но с экселем из программы работать пока не научился потому пойти этим путем не могу, есть ли в екселе подобная возможность?
Если Вы хотите написать программу только для того, чтобы разделить данные, то в таком случае, вполне можно обойтись обычными формулами :
A1 - Лейтес Н.С. Возрастная одаренность школьников. учеб. Пособие
B1 =ПСТР(A1;1;ПОИСК(". ";A1))
B1 =ПСТР(A1;1;НАЙТИ(". ";A1))
C1 =ПСТР(A1;ПОИСК(". ";A1)+2;32000)
С1 =ПОДСТАВИТЬ(A1;B1&" ";"")
После того, как формулы станут не нужны, их можно заменить на результат, которые они возвращают. Осуществить это можно, например, так :
- выделите диапазон, содержащий формулы
- в меню Правка выберите команду Копировать (CTRL+C)
- затем, всё в том же меню Правка выберите команду Специальная вставка
- в появившемся стандартном диалоговом окне установите переключатель напротив Значения и кликните кнопку OK.
Если же использование макросов обязательно, то и в этом случае можно воспользоваться формулами, только программно, но можно и помучить строковые функции VB, например InStr, Mid
Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)