2016-02-07 4 views
-1

я не могу сделать эту линию работы:диапазон (Клетки (Jour, 13), Клетки (Jour, 18)) Interior.Color = 7

Range(Cells(Jour, 13), Cells(Jour, 18)).Interior.Color = 7 

Каждый раз, когда это сообщение об ошибке всплывающее

ошибка выполнения '1004': приложения или объект, определенный ошибка

Но эта линия работы:

Range(Cells(Jour, 13), Cells(Jour, 18)).Select 

Я видел множество примеров с Interior.Color = "Whatever" после диапазона.

Почему это не работает?

Спасибо

+0

Вы можете разместить полный код вместо частей, которые не работают – newguy

+0

Попробуйте использовать 'Worksheets ("Лист1"). Range (Cells (Jour, 13), Cells (Jour, 18)). Interior.Color = 7' – newguy

ответ

1

Вот это должно работать благодаря @Jeeped за указание на ошибку.

Sub color() 
Dim Jour As Long 
Dim wk As Worksheet 

Jour = 1 
Set wk = Sheet1 'Change it with your sheet number. 

With wk 
    .Range(.Cells(Jour, 13), .Cells(Jour, 18)).Interior.color = 7 
End With 

End Sub 
+1

На самом деле, нет явной связи между [Range.Cells] (https://msdn.microsoft.com/en-us/library/office/ff196273.aspx) и родительским листом; только неявный для [ActiveSheet] (https://msdn.microsoft.com/en-us/library/office/ff822753.aspx?f=255&MSPPError=-2147217396), который может быть или не быть ** Sheet1 **. Для объекта [Диапазон] (https://msdn.microsoft.com/en-us/library/office/ff838238.aspx), но не «Ячейки», определяющие область диапазона. См. [This] (http://stackoverflow.com/questions/27763089/count-the-number-of-rows-in-another-sheet/27763394#27763394) для примера. – Jeeped

+0

О, да, вы правы. У меня возникла ошибка, когда я добавил новый лист в книгу, несмотря на то, что там был лист с именем «Лист», благодаря чему я его изменю – newguy

+0

Это выглядит великолепно! Теперь OP просто должен выяснить, хочет ли он заполнить '.Color = 7' (черный) или' .ColorIndex = 7' (фиолетовый см. [Таблица ColorIndex] (https: //public.blu.livefilestore .com/y1pBBNZK8-zzD6XAF0RdBv0bzYf7zy6gQeJNLfNFErA0AOqVgdSDYitBxntpEGzTO53lON4-9iLXwLHCw8xlYGdKQ/ColorIndexColors.PNG)) – Jeeped

0

Если вы правильно настроили Jour, тогда это должно сработать.

Sub jour_Jour_Banks() 
    jour = 1 
    Range(Cells(jour, 13), Cells(jour, 18)).Interior.Color = 7 
End Sub 
Смежные вопросы