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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.11.2010, 07:04   #1
artssp
Пользователь
 
Регистрация: 16.11.2010
Сообщений: 21
По умолчанию поиск и перенос на другой лист.

Здравствуйте. Подскажите пожалуйста как решить данную задачку. Есть таблица в excel, в которой есть строки например:
А
1.Иванов
2.Иванов
3.Иванов
4.Петров
5.Петров
6.Сидоров
7.Сидоров
ну и соответственно есть продолжение этим строкам.
Надо чтобы макрос выбирал допустим все строки где "Иванов" и переносил (или копировал) их в новый лист, далее все строки где "Петров" и в следующий новый лист, и т.д. Заранее благодарен!!!
artssp вне форума Ответить с цитированием
Старый 16.11.2010, 07:36   #2
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Есть несколько путей решения. Через массивы, через фильтр и т.п. Один способ быстрее, другой проще... Какой метод использовать, зависит от того, сколько столбцов и сколько строк в Вашей таблице.
Прикрепите файл с примером в несколько строк и укажите, какое максимально возможное количество строк и столбцов подразумевается в Вашей таблице.
Листы создавать? что делать, если такой лист уже есть? Переписывать информацию, или добавлять?
Чем шире угол зрения, тем он тупее.

Последний раз редактировалось SAS888; 16.11.2010 в 07:40.
SAS888 вне форума Ответить с цитированием
Старый 16.11.2010, 08:12   #3
artssp
Пользователь
 
Регистрация: 16.11.2010
Сообщений: 21
По умолчанию

Спасибо за ответ. Думаю что надо идти по способу который быстрее так как, строк может быть от 100 и до 5000 тыс., а столбцов в ней 13 это постоянно. Листы можно переписывать. И если можно сделать чтобы листы назывались в соответствии с фамилией.
artssp вне форума Ответить с цитированием
Старый 16.11.2010, 08:20   #4
artssp
Пользователь
 
Регистрация: 16.11.2010
Сообщений: 21
По умолчанию

Спасибо за ответ. Думаю что надо идти по способу который быстрее так как, строк может быть от 100 и до 5000 тыс., а столбцов в ней 13 это постоянно. Листы можно переписывать. И если можно сделать чтобы листы назывались в соответствии с фамилией.
Вложения
Тип файла: rar Книга2.rar (44.3 Кб, 36 просмотров)
artssp вне форума Ответить с цитированием
Старый 16.11.2010, 08:23   #5
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Цитата:
Думаю что надо идти по способу который быстрее...
Еще один очень важный момент, который существенно влияет на скорость выбранного метода: В Вашей большой таблице много повторяющихся фамилий? или почти все разные, и есть лишь несколько совпадений? И еще: Если, например, таблица имеет 5000 строк и все фамилии разные (ну, или почти все). Создавать 5000 соответствующих листов? Или как?
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 16.11.2010, 08:42   #6
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Посмотрите во вложении один из возможных вариантов. Этот вариант будет предпочтительнее в случае, когда в таблице много повторяющихся фамилий.
Вложения
Тип файла: rar Книга2_2.rar (48.2 Кб, 56 просмотров)
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 16.11.2010, 10:09   #7
artssp
Пользователь
 
Регистрация: 16.11.2010
Сообщений: 21
По умолчанию

Цитата:
Сообщение от SAS888 Посмотреть сообщение
Посмотрите во вложении один из возможных вариантов. Этот вариант будет предпочтительнее в случае, когда в таблице много повторяющихся фамилий.
Вариант хорош, но только в каждом листе содержится фамилия Морозова, можно сделать так чтобы она не отображалась кроме Морозовой. И вы писали про важный момент, этих фамилий может быть не более 50. Спасибо Вам!
artssp вне форума Ответить с цитированием
Старый 16.11.2010, 10:23   #8
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Цитата:
...только в каждом листе содержится фамилия Морозова...
Ну, это потому, что в 1-й строке подразумевались заголовки столбцов.
Если этого не нужно, то можно и убрать (см. вложение).
Вложения
Тип файла: rar Книга2_3.rar (48.4 Кб, 45 просмотров)
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 17.11.2010, 13:53   #9
artssp
Пользователь
 
Регистрация: 16.11.2010
Сообщений: 21
По умолчанию

Здравствуйте, спасибо вам уважаемый SAS888, все отлично сделано.
Но у меня есть продолжение этой темы. Вообще как бы вот этот список который вы сделали по фамилиям, у меня импортируется в другой excel документ с макросом, в котором формируется справка на основании данных первого документа. Возможно ли сделать так чтобы все это делалось в первом документе (т.е. с вашим макросом), чтобы в листах создавались уже готовые справки. В прикрепленных файлах есть файлы:
Книга1 исходный, и 111 куда импортируется Книга1. Спасибо!!!
Вложения
Тип файла: rar 222.rar (22.7 Кб, 27 просмотров)
artssp вне форума Ответить с цитированием
Старый 18.11.2010, 10:13   #10
artssp
Пользователь
 
Регистрация: 16.11.2010
Сообщений: 21
По умолчанию

SAS888 подскажи пожалуйста как это сделать.
artssp вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
перенос строки на другой лист по условию TimoXEi Microsoft Office Excel 12 24.01.2013 16:21
перенос данных на другой лист Jonny B Microsoft Office Excel 15 26.04.2011 09:16
Перенос на другой лист по значению столбца ElenaNTro Microsoft Office Excel 5 17.03.2011 14:50
Выбор и перенос данных в другой лист sergey77 Microsoft Office Excel 6 17.08.2010 17:10
Выбор и перенос данных в другой лист, книгу. Avald Microsoft Office Excel 1 16.06.2008 10:44