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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 24.07.2010, 14:31   #1
Рамирас
 
Регистрация: 24.07.2010
Сообщений: 7
По умолчанию Помогите создать макрос, который бы удалил все ячейки, кроме каждой 8-ой

Есть таблица в Excel - требуется создать макрос, чтобы после его выполнения осталась только каждая 8 строка, а остальные удалялись и если возможно сделать универсальную формулу, где выводимая строка задается как n, чтобы можно было изменять выводимую ячейку - к примеру каждая 3-ая или каждая 5-ая.
Заранее огромное спасибо!!!!!

Последний раз редактировалось Рамирас; 24.07.2010 в 14:37.
Рамирас вне форума Ответить с цитированием
Старый 24.07.2010, 14:51   #2
аналитика
Форумчанин
 
Регистрация: 14.05.2009
Сообщений: 311
По умолчанию

тебе сами строки удалять или содержимое их очищать?
вообще, мутно объяснил - пример давай того, что ты хочешь, особенно с "универсальной формулой"
аналитика вне форума Ответить с цитированием
Старый 24.07.2010, 15:00   #3
Рамирас
 
Регистрация: 24.07.2010
Сообщений: 7
По умолчанию

Вот примерно так должно быть.
Рамирас вне форума Ответить с цитированием
Старый 24.07.2010, 15:04   #4
Рамирас
 
Регистрация: 24.07.2010
Сообщений: 7
По умолчанию

Файлик прикрепил
Вложения
Тип файла: zip задача001.zip (1.5 Кб, 12 просмотров)
Рамирас вне форума Ответить с цитированием
Старый 24.07.2010, 15:09   #5
Рамирас
 
Регистрация: 24.07.2010
Сообщений: 7
По умолчанию

Да, строки нужно удалять. Попробую выразиться яснее - есть таблица в ней к примеру 1000 строк нужно чтобы, каждая 8 строка из этой таблицы осталась, а остальное было удаленно. В принципе универсальная формула не нужна, если можно будет из этой, изменив какие то значения сделать, чтобы осталась не каждая восьмая, а каждая третья, пятая и так далее.
Рамирас вне форума Ответить с цитированием
Старый 24.07.2010, 15:23   #6
Рамирас
 
Регистрация: 24.07.2010
Сообщений: 7
По умолчанию

То есть по коду макроса будет вот так - мне нужно через переменные это назначить.

Rows("1:7").Select
Selection.Delete Shift:=xlUp
Rows("2:8").Select
Selection.Delete Shift:=xlUp
Rows("3:9").Select
Selection.Delete Shift:=xlUp
Rows("4:10").Select
Selection.Delete Shift:=xlUp
Rows("5:11").Select
Selection.Delete Shift:=xlUp
Рамирас вне форума Ответить с цитированием
Старый 24.07.2010, 17:55   #7
аналитика
Форумчанин
 
Регистрация: 14.05.2009
Сообщений: 311
По умолчанию

Код:
Sub Каждая_n_ая_остается()
   n = Val(InputBox("Число...", , 8))
   If n = 0 Or n = 1 Then Exit Sub
   
   Do
      i = i + 1
      If Cells(i, 1) = "" Then Exit Do' это условие выхода из цикла продумай сам
      Rows(i & ":" & i + n - 2).Delete
   Loop
End Sub
аналитика вне форума Ответить с цитированием
Старый 24.07.2010, 19:37   #8
Рамирас
 
Регистрация: 24.07.2010
Сообщений: 7
Хорошо

Спасибо огромное!!!!!!!!!!!!!!!!!!!!!!!!!!: )
Рамирас вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Фиксация всех параметров ячейки, кроме возможности заливки tns-ka Microsoft Office Excel 0 27.03.2010 12:06
Закрыть все файлы Excel,кроме текущего BesTiYa Microsoft Office Excel 5 10.12.2009 12:53
помогите создать макрос (SOS!) Ygrek Microsoft Office Excel 0 05.07.2009 17:42
Удалил случайно все логические диски,что теперь делать? prikolist Безопасность, Шифрование 3 21.05.2009 09:16
Помогите создать макрос Светлана632 Microsoft Office Excel 9 10.02.2009 06:18