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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.11.2010, 20:07   #1
Inventor_S
 
Регистрация: 20.11.2010
Сообщений: 7
По умолчанию Поиск второй подряд пустой ячейки...

Необходимо в определенном столбце, чтобы активная ячейка при переходе на следующую строчку ниже, при нахождении второй пустой ячейки подряд, переходила на определенный интервал этого же столбца. К примеру, есть столбец I, в интервале столбца от 1 до 13 строк нужно макросу дать понять что со второй подряд пустой активной ячейкой она переносится на I15, в интервале от 15 до 26 строки активная ячейка переносится на I27 и т.д. Как такое сделать ?
Вложения
Тип файла: rar столбец.rar (8.3 Кб, 17 просмотров)
Inventor_S вне форума Ответить с цитированием
Старый 20.11.2010, 22:56   #2
VictorM
Старожил
 
Аватар для VictorM
 
Регистрация: 15.05.2008
Сообщений: 2,058
По умолчанию

Цитата:
при нахождении второй пустой ячейки подряд, переходила на определенный интервал этого же столбца
И все? Найти можно, перейти можно. А когда все это заканчивается, по какому критерию?
Или так весь столбец проверять?
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499
VictorM вне форума Ответить с цитированием
Старый 20.11.2010, 23:28   #3
R Dmitry
Форумчанин
 
Регистрация: 07.03.2010
Сообщений: 796
По умолчанию

Код:
Dim a As Byte
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim r&, c As Byte
If Target.Column <> 9 Then a = 0: Exit Sub
If Target.Row < 14 Then
r = 14
ElseIf Target.Row < 27 Then
r = 27
ElseIf Target.Row < 40 Then
r = 40
Else: r = 1
End If
If Target.Value = 0 Then
c = 1
a = a + c
If a > 1 Then Cells(r, 9).Activate: a = 0
Else
a = 0
End If
End Sub
примерно так, прописано три условия, остальные по аналогии
в модуль листа
R Dmitry
Логика?!.... она где то рядом... E_mail: dg_rusak@mail.ru Если спасибо мало: Яндекс . Деньги - 41001731366021 WM R269866874234
R Dmitry вне форума Ответить с цитированием
Старый 20.11.2010, 23:46   #4
Inventor_S
 
Регистрация: 20.11.2010
Сообщений: 7
По умолчанию

Цитата:
Сообщение от R Dmitry Посмотреть сообщение
примерно так, прописано три условия, остальные по аналогии
в модуль листа
R Dmitry
почти то что надо, но нужно чтобы активная ячейка перемещалась по вышеописанному интервалу.
Объясню для чего я все это хочу ... строчки в столбце будут заполнятся числами вручную ... и бывает так что в интервале столбца 1-го и 2-го числа (I2:I13), в интервале 2-го и 3-го, 3-го и 4-го числа и т.д. не все строчки заполняются числами, остаются пустые ячейки. И чтобы быстро переходить с одного интервала (I2:I13) на второй (I15:I26), со второй на третий и так по порядку хочу найти макрос который работал по какому-то критерию - в данном случае у меня идея с активной ячейкой, которая заполняет пустую строчку в столбце числом (т.е. человек заполняет), переходит на другую ячейку вниз, находит снова пустую ячейку, и если не заполнив ее числом и перейдя снова вниз на еще одну строчку и найдя там пустую ячейку, переходит на другой интервал. Как такое реализовать ?

Последний раз редактировалось Inventor_S; 21.11.2010 в 00:27.
Inventor_S вне форума Ответить с цитированием
Старый 21.11.2010, 00:00   #5
R Dmitry
Форумчанин
 
Регистрация: 07.03.2010
Сообщений: 796
По умолчанию

а интервал всегда одинаковый?
Логика?!.... она где то рядом... E_mail: dg_rusak@mail.ru Если спасибо мало: Яндекс . Деньги - 41001731366021 WM R269866874234
R Dmitry вне форума Ответить с цитированием
Старый 21.11.2010, 00:05   #6
Inventor_S
 
Регистрация: 20.11.2010
Сообщений: 7
По умолчанию

да, одинаковый, такой как в примере...
Inventor_S вне форума Ответить с цитированием
Старый 21.11.2010, 00:11   #7
R Dmitry
Форумчанин
 
Регистрация: 07.03.2010
Сообщений: 796
По умолчанию

сделаю завтра, сегодня занят
Dim a As Byte

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim r&, lr&, c As Byte
If Target.Column <> 9 Then a = 0: Exit Sub
lr = Target.Row
If lr < 14 Then
r = 14
ElseIf lr < 27 Then: r = 27
ElseIf lr < 40 Then
r = 40
Else: r = 2
End If
If Cells(lr - 1, 9).Value = 0 Then
c = 1
a = a + c
If a > 1 Then Cells(r, 9).Activate: a = 0
Else
a = 0
End If
End Sub
завтра подумаю над диапазонами
Логика?!.... она где то рядом... E_mail: dg_rusak@mail.ru Если спасибо мало: Яндекс . Деньги - 41001731366021 WM R269866874234

Последний раз редактировалось R Dmitry; 21.11.2010 в 00:22.
R Dmitry вне форума Ответить с цитированием
Старый 21.11.2010, 00:13   #8
Inventor_S
 
Регистрация: 20.11.2010
Сообщений: 7
По умолчанию

ok, спасибо за помощь, земляк буду ждать результата ...
Inventor_S вне форума Ответить с цитированием
Старый 21.11.2010, 01:21   #9
EugeneS
Форумчанин
 
Регистрация: 06.08.2009
Сообщений: 472
По умолчанию

можно сделать, например, так, см. вложение
Вложения
Тип файла: zip Копия Xl0000010.zip (10.6 Кб, 16 просмотров)
EugeneS вне форума Ответить с цитированием
Старый 21.11.2010, 01:41   #10
Inventor_S
 
Регистрация: 20.11.2010
Сообщений: 7
По умолчанию

Цитата:
Сообщение от EugeneS Посмотреть сообщение
можно сделать, например, так, см. вложение
да, это то что нужно! спасибо за помощь ! все работает и так как по моей задумке...
Inventor_S вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск первой пустой ячейки в столбце Verano naranjo Microsoft Office Excel 3 12.11.2010 13:47
Проверка пустой ячейки в DGV coper Общие вопросы .NET 2 11.08.2010 05:49
перенос строки с пустой ячейки HospodySave Microsoft Office Excel 10 24.06.2010 07:16
удаление строки, начинающейся с пустой ячейки grichanuk Microsoft Office Excel 3 01.12.2009 05:31
Сборная России по хоккею стала чемпионом мира второй год подряд rpy3uH Свободное общение 13 25.05.2009 02:23