2016-06-23 3 views
0

Мне нужна помощь в создании макроса, который может удалять строки данных, когда сумма сумм в столбце B равна нулю для каждого идентификационного номера в столбце A. Я в прошлом использовались сводные таблицы и промежуточные итоги, но с тысячами строк, это все еще время сосать.Создайте макрос для удаления строк, если sum = 0 для каждого ID #

Например:

1 1001 6 
2 1001 -1 
3 1002 15 
4 1002 -13 
5 1001 -5 

Я хочу, чтобы удалить строки с ID # 1001, потому что они обнулить, но оставить строки с ID # 1002 полностью в одиночку.

Спасибо! Я ценю всю помощь, которую я могу получить.

+0

Добро пожаловать в Переполнение стека. SO не является кодом для моего сайта. Если у вас есть код, который не работает, отправьте его в исходное сообщение и сообщите нам, что он делает, что является ошибкой, и мы поможем вам преодолеть конкретную проблему с кодом. –

+0

Это может быть хорошей отправной точкой: http://stackoverflow.com/questions/915317/does-vba-have-dictionary-structure –

ответ

0

Я думаю, что самый простой способ сделать это - добавить дополнительный столбец «помощник». Ради примера, в предположим, ваши данные были, скажем, диапазон A1:B1000, можно поставить следующую формулу в ячейке C1:

C1: =SUMIF($A$1:$A$1000,A1,$B$1:$B$1000) 

и перетащить его вниз для всех 1000 строк. Затем просто отфильтруйте для 0 в столбце C и удалите эти строки. В конце, конечно, вы также можете удалить столбец C и альт.

Надеюсь, что это поможет!

Смежные вопросы