powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Про макрос
7 сообщений из 7, страница 1 из 1
Про макрос
    #35890174
Demer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день, форумчане!

Есть такая тема - я написал макрос, который заполняет столбец (А) номерами по порядку, причем если во втором столбце (В) строка пустая, то в заполняемом тоже пропускается место, а дальше продолжает нумеровать. Вот как это выглядит:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
№  |  A   |    B
-----------------------
1   |   1   |   asd
2   |   2   |   fdgh
3   |        |   
4   |   3   |   ptyi
5   |   4   |   fglk
6   |        |   
7   |        |   
8   |        |   
9   |   5   |   ityu
10 |   6   |   poyiu


А вот сам код

авторFunction NextNPP(cellData As Range)
r = cellData.Row - 1
c = Selection.Column

If Len(cellData.Value) > 0 Then
For i = 0 To r
If Len(Cells(r - i, c).Value) > 0 Then
NextNPP = Cells(r - i, c).Value + 1
Exit For
End If
Next
Else
NextNPP = ""
End If
End Function

Этот код я написал в модуле и файл сохранил с расширением xla, типа надстройка, а дальше подключил его в экселе и работаю как со стандартными функциями.
Но вот в чем проблема... Когда я меняю колонку В, то колонка А автоматически естественно не меняется, остается как было.
Что нужно дописать, чтобы колонка А менялась в зависимости от изменений колонки В?
...
Рейтинг: 0 / 0
Про макрос
    #35890385
Korcar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
обработка изменения данных листа не помогает?
...
Рейтинг: 0 / 0
Про макрос
    #35890426
Demer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нет

больше того - при фильтрации слетатет... вместо цифр пишет #ЗНАЧ!
...
Рейтинг: 0 / 0
Про макрос
    #35890572
sergeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вариант решения без макроса :)
- в ячейку A1 поместить цифру 1
- в ячейку A2 формулу =ЕСЛИ(СМЕЩ(A2;0;1)<>"";СМЕЩ(A2;-1;0)+1;СМЕЩ(A2;-1;0))
- в ячейке A2 написать формулу условного форматирования =A2=СМЕЩ(A2;-1;0) и Формат\Шрифт\Цвет "белый"
-скопировать ячейку A2 на все ячейки колонки A начиная с ячейки A3

Слабое место, что при выделении ячеек, повторяющиеся значения ("белые") все-же видны
...
Рейтинг: 0 / 0
Про макрос
    #35890646
Фотография Папа Игорь
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Demer...Что нужно дописать, чтобы колонка А менялась в зависимости от изменений колонки В?

Ничего не нужно. Посмотрите в файле. Может пригодится.
...
Рейтинг: 0 / 0
Про макрос
    #35890648
Demer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не понял...
sergeyvg- в ячейку A2 формулу =ЕСЛИ(СМЕЩ(A2;0;1)<>"";СМЕЩ(A2;-1;0)+1;СМЕЩ(A2;-1;0))
- в ячейке A2 написать формулу условного форматирования =A2=СМЕЩ(A2;-1;0) и Формат\Шрифт\Цвет "белый"
Два раза про А2 - это очепятка?

С формулами у меня беда ))
...
Рейтинг: 0 / 0
Про макрос
    #35890653
Demer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Папа ИгорьDemer...Что нужно дописать, чтобы колонка А менялась в зависимости от изменений колонки В?

Ничего не нужно. Посмотрите в файле. Может пригодится.


СПАСИБО ОГРОМНОЕ )))))
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Про макрос
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]