2 / 2 / 0
Регистрация: 24.07.2013
Сообщений: 54
|
||||||
1 | ||||||
И опять работа только с видимыми ячейками25.09.2013, 16:31. Показов 17124. Ответов 14
Метки нет (Все метки)
Доброго времени суток всем)
Хочу после применения автофильтра занести в массив только видимые ячейки
в этом случае в массив заносятся данные только до 57 строки, что нужно сделать чтобы заносились все??
0
|
25.09.2013, 16:31 | |
Ответы с готовыми решениями:
14
Как сделать видимыми только 3 новости? Работа c .doc(word). Сделать границы созданной таблицы видимыми Работа с ячейками Работа с ячейками |
1589 / 662 / 225
Регистрация: 09.06.2011
Сообщений: 1,334
|
||||||
25.09.2013, 17:17 | 2 | |||||
Используйте цикл
1
|
2 / 2 / 0
Регистрация: 24.07.2013
Сообщений: 54
|
|
25.09.2013, 17:48 [ТС] | 3 |
спасибо)
хотелось правда без цикла (просто размера массива заранее даже не знаю), но наверно так не получиться
0
|
6922 / 2832 / 543
Регистрация: 19.10.2012
Сообщений: 8,645
|
|
25.09.2013, 17:58 | 4 |
Да, одним движением массив из SpecialCells(xlCellTypeVisible) не получается, тоже сталкивался.
А жаль... Недоработали...
0
|
4377 / 661 / 36
Регистрация: 17.01.2010
Сообщений: 2,134
|
||||||
25.09.2013, 21:23 | 5 | |||||
Я так выхожу с этого (результаты будут в mARR):
Заменил. См. ниже. Добавлено через 2 часа 49 минут Под конец дня все бегом... Не заметил, что Вас там интересует только 1-й ст. Тогда уточняю (и прописываю last, что б застраховаться): Кликните здесь для просмотра всего текста
1
|
2 / 2 / 0
Регистрация: 24.07.2013
Сообщений: 54
|
|
26.09.2013, 09:26 [ТС] | 6 |
оо,Игорь,спасибо вам)
у меня тоже была мысль с копированием,правда на скрытый лист какой-нибудь) Добавлено через 8 минут я кстати поставила таймер, на ваш вариант и вариант с циклом, с циклом чуть-чуть быстрее получается)
0
|
4377 / 661 / 36
Регистрация: 17.01.2010
Сообщений: 2,134
|
|
26.09.2013, 09:34 | 7 |
Можна и на скрытый, но считаю - лишние действия. Здесь лист создался, принял, отдал в массив и закрылся без сохранения. И забыл. Там пропишите в процедуру application.screenupdating=false/true, не помешает. Тогда будет быстрее. Но и цикл - неплохо.
Но если совсем честно, то стараюсь в процедурах не использовать autofilter. Нудный он, медленный, не на мой темперамент. Добавлено через 7 минут Вот не проснулся еще, наверно... Забыл еще добавить - использую на лист в основном в тех случаях, если результаты нужно еще и посортировать (а оригиналы оставить как есть).
0
|
2 / 2 / 0
Регистрация: 24.07.2013
Сообщений: 54
|
|
26.09.2013, 10:20 [ТС] | 8 |
Да, мне тоже автофильтр не особо нравиться, просто это было первое и самое простое, что пришло в голову)
Я бы вообще эту часть из основной своей программы убрала, она мне не нравиться, без нее гораздо лучше всё было Но нет же, надо говорят это и всё тут, и никуда не денешься)И сижу вот уже кучу времени, переделываю готовую,рабочую программу! (так как дававшая мне задание, неожиданно!! вспомнила о существовании еще парочки условий)
0
|
4377 / 661 / 36
Регистрация: 17.01.2010
Сообщений: 2,134
|
|
26.09.2013, 10:29 | 9 |
Ну да, все от условий. Я бы просто тупо в начало процедуры вставил application.inputbox (type:=8), указал мышью ячейки с нужными, заменил autofilter словарем (или advancedfilter) - и все бы улетело. Но если нужна сортировка, все-таки использовал Workbooks.Add(xlWBATWorksheet).Sheets(1)... Мне autofilter хороший только в ручном режиме.
0
|
2 / 2 / 0
Регистрация: 24.07.2013
Сообщений: 54
|
|
26.09.2013, 10:49 [ТС] | 10 |
Я прям задумалась после вашего сообщения, чую что накрутила у себя в программе много всякого ненужного и лишних сложностей. Но, это мой еще совсем маленький опыт в этом виновен, а переделывать уже не хочется)
0
|
4377 / 661 / 36
Регистрация: 17.01.2010
Сообщений: 2,134
|
|
26.09.2013, 10:58 | 11 |
А что там думать. Все зависит от того, сколько из сколько нужно выбрать и передать машине. Если у Вас ~ 10000 записей из 100 оригинальных раскиданных, а нужно выбрать 50 - то, думаю, все таки нужет autofilter в ручном, а дальше листинг. А если нужно только ~ 5 - 10, тогда другое дело. Может и SQL запросом... Все упирается в то, как показать машине что Вам нужно. А дальше - чепуха.
0
|
6922 / 2832 / 543
Регистрация: 19.10.2012
Сообщений: 8,645
|
|
26.09.2013, 12:36 | 12 |
Кстати вот как раз сегодня было обсуждение "у соседей за стенкой" - думаю могу сюда цитату запостить, раз уж речь об уникальных:
2
|
4377 / 661 / 36
Регистрация: 17.01.2010
Сообщений: 2,134
|
|
26.09.2013, 12:58 | 13 |
Все правильно. Я еще только имел ввиду, что, если всего много, и уникальных тоже, и из этих уникальных нужно "в отчет" тоже много выбрать, то, наверное, делал бы где-то так: запустил вручную autofilter, указал нужные, запустил листинг (пуск под правую кнопку в shortcut menu), вытянул уникальные в массив (но там все равно бутут повторы) из массива опять уникальные - и загнал в критерии. А дальше - уже просто техника. Но жизнь бы показала. Или как делать, или откуда ноги...
0
|
6922 / 2832 / 543
Регистрация: 19.10.2012
Сообщений: 8,645
|
||||||
26.09.2013, 13:01 | 14 | |||||
Вот кстати там и код написал:
0
|
0 / 0 / 0
Регистрация: 30.07.2015
Сообщений: 2
|
||||||
30.07.2015, 17:05 | 15 | |||||
Попробуйте проверку значения
0
|
30.07.2015, 17:05 | |
30.07.2015, 17:05 | |
Помогаю со студенческими работами здесь
15
Работа с ячейками Замена батареи с 6 ячейками на батарею с 12 ячейками для HP Pavilon g6 Работа с ячейками StringGrid StringGrid работа с ячейками Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |