Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/25: Рейтинг темы: голосов - 25, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 23.05.2013
Сообщений: 3
1

Макрос удаления всех нулевых значений в таблице

23.05.2013, 16:04. Показов 4798. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Друзья, есть такая задача: нужно удалить все нулевые значения в заданном диапазоне [A2:BV791]
Я в написании макросов абсолютный ноль. Поэтому смогла написать только такую программку:

Sub del()
For j = 5 To 74
For i = 2 To 791
If Cells(i, j) = 0 Then
Cells(i, j).Offset.Select
Selection.Delete Shift:=xlUp
End If
Next i
Next j
End Sub

Она работает неправильно, поскольку при наличии двух нулей в столбце подряд она удаляет только один из них. Подскажите, как исправить. Нужно удалить все нули...

Спасибо!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.05.2013, 16:04
Ответы с готовыми решениями:

Макрос удаления всех значений из ячейки, кроме указанного
Здравствуйте,возникла необходимость отредактировать документ на работе,чтобы осталась лишь нужная...

Макрос удаления нулей в заданной таблице
Друзья, есть такая задача: нужно удалить все нулевые значения в заданном диапазоне Я в написании...

Макрос удаления пустых строк в таблице
Имеется таблица. Если в столбце Н строки не содержат никаких значений (пустые) то такие строки...

Нужен макрос для удаления значений в ячейках по условию
Ребята каким можно макросом удалять значения определённых ячеек .Задача макроса ,в ячейках в каждой...

1
3218 / 967 / 223
Регистрация: 29.05.2010
Сообщений: 2,086
23.05.2013, 17:55 2
Что означает удалить все нули - очистить значение ячейки или .... Можно же установить соответствующие параметры.
Вот вариант очистки всех нулевых значений на листе:
Visual Basic
1
    ActiveWindow.DisplayZeros = False
То есть не выводить нулевые значения на на экран

Добавлено через 9 минут
Если же удалять нулевые ячейки со смещением, то начинать надо снизу.
Visual Basic
1
2
3
4
5
6
7
8
9
Sub del()
    For j = 74 To 5 Step -1
        For i = 791 To 2 Step -1
            If Cells(i, j) = 0 Then
                Cells(i, j).Delete Shift:=xlUp
            End If
        Next i
    Next j
End Sub
0
23.05.2013, 17:55
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.05.2013, 17:55
Помогаю со студенческими работами здесь

Макрос для сравнения значений в таблице со справочником
Добрый день, друзья!) Необходима Ваша помощь... Нужно написать макрос: Наверное не...

Макрос для сравнения значений в таблице со справочником, находящимся на другом листе
Добрый день, необходима помощь , а именно... Необходим макрос запускающийся по кнопке, который...

Определить наибольшее из всех отрицательных значений, наибольшее из всех значений, количество нулевых значений
Доброго времени суток. Помоги пожалуйста,никак не получается. Использование функций в языке СИ,...

Подставление нулевых значений в сводной таблице
Добрый день. Работа с данными по часам: - если во все часы есть данные, то в сводной таблице...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru