Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 |

 

  Вопрос: Проверка ячеек Добавлено: 19.06.06 09:50  

Автор вопроса:  Starik | Web-сайт: нет
Добрый день!
Пример кода проверки диапазона ячеек:
  For i = 72 To 81
For j = 14 To 24
cell = Chr(i) & j
Range(cell).Select
If 1 > Range(cell) Then
Range(cell).Select
    With Selection.Interior
       
       .ColorIndex = 2
      .Pattern = xlSolid
  End With
Else
With Selection.Interior
       
       .ColorIndex = 4
      .Pattern = xlSolid
  End With
End If
Next j
Next i

Но сейчас необходимо проверить для For i = 83 To 97, при этом выдается ошибка 1004.
Код работает только до i = 90, как проверить остальной диапазон этим кодом?

Ответить

  Ответы Всего ответов: 3  

Номер ответа: 1
Автор ответа:
 Незнайка



Вопросов: 7
Ответов: 188
 Профиль | | #1 Добавлено: 19.06.06 10:10
Код не совсем оптимален.
Range(cell).Select
Select - чрезвычайно медленный метод не пользуйся им без реальной необходимости.
cell = Chr(i) & j
Так получать адрес ячейки кривовато. Вот рабочий код:
Sub mInterior()
    For i = 72 To 81
        For j = 14 To 24
            If 1 > Cells(i, j) Then
                Range(Cells(i, j), Cells(i, j)).Interior.ColorIndex = 2
            Else
                Range(Cells(i, j), Cells(i, j)).Interior.ColorIndex = 4
            End If
        Next j
    Next i
End Sub



Ответить

Номер ответа: 2
Автор ответа:
 Незнайка



Вопросов: 7
Ответов: 188
 Профиль | | #2 Добавлено: 19.06.06 10:13
А вообще такое простое условие можно и без кода, просто: Формат - Условное форматирование...

Ответить

Номер ответа: 3
Автор ответа:
 Starik



Вопросов: 24
Ответов: 53
 Web-сайт: нет
 Профиль | | #3
Добавлено: 19.06.06 11:03
Незнайка, спасибо. Я так заработался, что совсем забыл про Excel, конечно намного проще через условное форматирование. Спасибо, что вернул меня на землю.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам