макрос на разделение данных в Excel

Весь MS Office, программирование на Visual Basic for Applications и MS VB

Модератор: Naeel Maqsudov

Ответить
linxy_2008
Сообщения: 2
Зарегистрирован: 14 апр 2009, 20:42

Здравствуйте!
Помогите мне решить одну задачу в Excel.
У меня есть огромная таблица из 2000 строк.
В ней есть столбец с названием "Срок действия" и данные записаны в нем так: 02.06.2008-02.06.2011
Мне бы не хотелось вручную разделять эти данные (2000 строк в таблице),а написать такой макрос:
Чтобы при добавлении в эту таблицу новых таких данных он разделял эти данные на две колонки.
Например, колонка "срок действия" осталась бы и в ней осталась бы одна дата: 02.06.2008, а другая дата перенеслась в соседний столбец, при этом удалилось тире и пробел.

Есть ли решение этой проблемы? Я пыталась написать макрос, но у меня он распространяется только на одну ячейку, а не на столбец целиком, где присутствуют сдвоенные данные.
Аватара пользователя
Naeel Maqsudov
Сообщения: 2570
Зарегистрирован: 20 фев 2004, 19:17
Откуда: Moscow, Russia
Контактная информация:

Вам не нужны макросы.
Вставьте 1 пустой столбец после этого столбца (меню вставка/столбцы)
Выделите все такие даты и просто разделите их на 2 столбца (менб Данные/Текст по столбцам). Там запускается мастер. На 1 шаге выберите "С разделителями", на второй - "Другой" и введите "-".
Это всё.
linxy_2008
Сообщения: 2
Зарегистрирован: 14 апр 2009, 20:42

Спасибо большое!
Все получилось. Только при разделении этих данных некоторые данные не перенеслись. Например: из колонки с содержимым 02.02.2008-02.2011 вторая часть удалилась, но не перенеслась в соседнюю.
Т.е. разделение произошло, но не во всех строках
Аватара пользователя
Naeel Maqsudov
Сообщения: 2570
Зарегистрирован: 20 фев 2004, 19:17
Откуда: Moscow, Russia
Контактная информация:

Ну значит данные так были подготовлены.
Повнимательнее посмотрите, если около дефиса есть пробелы, а в качестве разделителя помимо "другой" был также выбран пробел, то может такое получиться.
&quot писал(а):удалилась, но не перенеслась в соседнюю
Хм... Не думаю, что такое вообще возможно. Excel так не поступает. Можно взглянуть на исходные данные?
airyashov
Сообщения: 441
Зарегистрирован: 02 ноя 2007, 10:31

или написать формулы
=ЛЕВСИМВ(СЖПРОБЕЛЫ(A1);10)
=ПРАВСИМВ(СЖПРОБЕЛЫ(A1);10)
Ответить