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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 06.11.2009, 14:00   #11
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,858
По умолчанию

Код:
Sub Пронумеровать()
    Dim cell As Range, ra As Range: n = 1
    Application.ScreenUpdating = False
    Set ra = Range([b7], Range("b" & Rows.Count).End(xlUp)).Offset(, -1)
    ra.ClearContents
    For Each cell In ra.Cells
        If cell.Address = cell.MergeArea(1).Address And Not cell.EntireRow.Hidden Then
            cell = n: n = n + 1
        End If
    Next cell
    Application.ScreenUpdating = True
End Sub

Sub Очистить()
    Range([b7], Range("b" & Rows.Count).End(xlUp)).Offset(, -1).ClearContents
End Sub


EducatedFool вне форума Ответить с цитированием
Старый 06.11.2009, 16:50   #12
m_v_v
Пользователь
 
Регистрация: 22.09.2009
Сообщений: 31
По умолчанию

EducatedFool, Спасибо огромное!!!
m_v_v вне форума Ответить с цитированием
Старый 17.06.2010, 07:36   #13
syrmax
Новичок
Джуниор
 
Регистрация: 17.06.2010
Сообщений: 2
По умолчанию

Цитата:
Сообщение от EducatedFool Посмотреть сообщение
Код:
Sub Пронумеровать()
    Dim cell As Range, ra As Range: n = 1
    Application.ScreenUpdating = False
    Set ra = Range([b7], Range("b" & Rows.Count).End(xlUp)).Offset(, -1)
    ra.ClearContents
    For Each cell In ra.Cells
        If cell.Address = cell.MergeArea(1).Address And Not cell.EntireRow.Hidden Then
            cell = n: n = n + 1
        End If
    Next cell
    Application.ScreenUpdating = True
End Sub

Sub Очистить()
    Range([b7], Range("b" & Rows.Count).End(xlUp)).Offset(, -1).ClearContents
End Sub



При использовании данного кода замечена такая ошибка.
Если в объединенной ячейки скрыта первая строка, то такая ячейка не нумеруется. Как я понял, она считается скрытой и нумерация через неё перепрыгивает.
syrmax вне форума Ответить с цитированием
Старый 17.06.2010, 08:55   #14
vikttur
Участник клуба
 
Регистрация: 16.05.2010
Сообщений: 1,249
По умолчанию

m_v_v, почти не по теме - не было бы объединенных ячеек, отсутствовала бы и проблема. Excel не любит объединение, формулы и макросы часто сбоят при наличии такого украшательства. По возможности отказывайтесь от этого.
vikttur вне форума Ответить с цитированием
Старый 13.09.2010, 19:08   #15
syrmax
Новичок
Джуниор
 
Регистрация: 17.06.2010
Сообщений: 2
По умолчанию

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


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сохранение книги Excel по названию ячейки и по пути ячейки IFRSoff Microsoft Office Excel 16 07.06.2012 16:58
Как в DBGrid пронумеровать строки Talemir БД в Delphi 26 14.08.2009 09:25
Заполнить пустые ячейки ниже значениями из непустой ячейки ing60 Microsoft Office Excel 7 01.04.2009 04:20
Как разделить число и текст в одной ячейки на две ячейки. neboskreb Microsoft Office Excel 2 15.04.2008 19:39