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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 13.08.2009, 23:47   #11
Screame
Форумчанин
 
Аватар для Screame
 
Регистрация: 27.05.2009
Сообщений: 170
По умолчанию

потомучто она пустая, зачем мне пустые строки если в отчете все должно отображаться нормально без лишних пустых строк?
Screame вне форума Ответить с цитированием
Старый 13.08.2009, 23:52   #12
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

По-видимому, во второй строке было не пусто, я попробовал стереть в ячейках все, и вторая не выводится, как и нужно, на второй лист
motorway вне форума Ответить с цитированием
Старый 13.08.2009, 23:53   #13
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

А четвертая - где Вы видите, что она пустая? Если нажать "Скрыть" - то на четвертой становится 0 0 0 0 00.01.1900 0 0 0,00
motorway вне форума Ответить с цитированием
Старый 13.08.2009, 23:57   #14
Screame
Форумчанин
 
Аватар для Screame
 
Регистрация: 27.05.2009
Сообщений: 170
По умолчанию

так получается изза того что, данные в этой таблице промежуточные, они вставляются из другой таблице в которой ведутся расчеты, потом я копирую эту таблицу и вставляю только значения изза этого так и получается!
Screame вне форума Ответить с цитированием
Старый 14.08.2009, 00:03   #15
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

Не очень понятно, но насколько я понял, по условию не должны копироваться только пустые строки, а копируются - только уникальные. В четвертой же строке данные есть, и она уникальна, так что она копируется. Попробуйте этот код:

Код:
Private Sub Main()
Range("B1:J1066").AdvancedFilter Action:=xlFilterInPlace, Unique:=True
 lastrow = ActiveSheet.UsedRange.Row + ActiveSheet.UsedRange.Rows.Count - 1
    For i = 2 To lastrow
    If (Cells(i, 2) = "" And Cells(i, 3) = "") Then
    Rows(i).Select
    Selection.EntireRow.Hidden = True
    GoTo LAB
    End If
    Next i
LAB:
ActiveSheet.UsedRange.Cells.SpecialCells(xlVisible).Copy
Sheets("Лист2").Select
ActiveSheet.Paste
    
End Sub
motorway вне форума Ответить с цитированием
Старый 14.08.2009, 00:08   #16
Screame
Форумчанин
 
Аватар для Screame
 
Регистрация: 27.05.2009
Сообщений: 170
По умолчанию

спасибо за помощь, все работает а 4-ю строку буду удалять вручную, все проще удалить одну чем 1000
Screame вне форума Ответить с цитированием
Старый 14.08.2009, 00:10   #17
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

подождите, объясните, что это за 4 строка? что в ней находится, и почему ее надо удалять? она разве пустая??
motorway вне форума Ответить с цитированием
Старый 14.08.2009, 00:18   #18
Screame
Форумчанин
 
Аватар для Screame
 
Регистрация: 27.05.2009
Сообщений: 170
По умолчанию

я уже говорил что данные в таблице, вставляются из другой аналогичной таблице но вставляются только значения из нее, тоесть: была таблица были в ней формулы, там где формулы имели значения, там у нас отображаются значения, где их небыло там показаны нули (0), в даном примере 4 строка неимеет никакого значения, но в будущем в ней могут быть значения, так как в таблице из которой я все это копирую в строке 4 есть формула, но после копирования я вставляю только значения. Надеюсь теперь понятно объяснил.
Screame вне форума Ответить с цитированием
Старый 14.08.2009, 00:25   #19
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

Как бы то ни было, я вижу в выложенном Вами файле в строке 4 (до или после применения фильтра) значения 0 0 0 0 00.01.1900 0 0 0,00. Для макроса - это уникальная строка с данными.
Цитата:
в даном примере 4 строка неимеет никакого значения
В каком столбце? По крайней мере во всех с C по J она имеет значения (пусть и равные 0 или 00.01.1900).
В любом случае можно сделать и удаление строки автоматически, которая Вам не нужна, главное - правильно задать это условие удаления. Ведь у Вас не было условия, что если там 0 в каких-то колонках, надо удалять. Пока что макрос делает просто фильтр всех уникальных строк, и не включает те, для которых в колонке B и C пусто.
Я просто не очень понимаю, почему должна удаляться 4 строка, раз там есть данные везде, кроме колонки B. Этого же не было в условии

Можете выложить скриншот, где показана эта 4 строка?

Последний раз редактировалось motorway; 14.08.2009 в 00:27.
motorway вне форума Ответить с цитированием
Старый 14.08.2009, 00:31   #20
Screame
Форумчанин
 
Аватар для Screame
 
Регистрация: 27.05.2009
Сообщений: 170
По умолчанию

но ведь после 3-й строки все строки имеют значения 0 и они скрываются а 4-я нет, почему так получается в чем ее уникальность?
Screame вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Excel ослеп или я "в лыжи обутый"? (при фильтрации не видна часть таблицы) palabrador Microsoft Office Excel 21 19.05.2016 13:33
ОШИБКА ПРИ ЗАГРУЗКЕ Костян Пират Операционные системы общие вопросы 5 21.02.2009 12:14
Создание проги для фильтрации списка слов за разными критериями Makoto-kun Помощь студентам 1 10.01.2009 04:37
ошибка фильтрации Dozent Общие вопросы Delphi 5 25.06.2008 22:52
Ошибка при фильтрации! Markus БД в Delphi 0 05.05.2007 17:28