Фон ячейки

Программирование на Visual Basic for Applications
Lirin
Начинающий
Начинающий
Аватара пользователя
 
Сообщения: 12
Зарегистрирован: 03.12.2004 (Пт) 17:34
Откуда: Москва

Фон ячейки

Сообщение Lirin » 08.02.2005 (Вт) 11:50

Такая проблемка... Надо в зависимости от цвета фона ячейки (i,3) присвоить значение ячейке (i,2). Использую Cells(i, 3).Interior.ColorIndex.Value - не помогает... Помогите, плз...
Правила игры нужно знать, но лучше - устанавливать их самой...

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 08.02.2005 (Вт) 12:06

Cells(i,2)=Cells(i,3).Interior.ColorIndex
Lasciate ogni speranza, voi ch'entrate.

Lirin
Начинающий
Начинающий
Аватара пользователя
 
Сообщения: 12
Зарегистрирован: 03.12.2004 (Пт) 17:34
Откуда: Москва

Сообщение Lirin » 08.02.2005 (Вт) 12:21

спасибо...
правда в моем случае это выглядит как:
color_flag = Cells(i, 3).Interior.ColorIndex
Select Case color_flag
Case 36
Cells(i, 2) = "HB"
....
End Select
но идея была верной...
еще раз спасибо... :)
Правила игры нужно знать, но лучше - устанавливать их самой...

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 08.02.2005 (Вт) 12:36

Cells(i,2)=Choose(color_flag,"color1","color2",...)
Cells(i,2)=Switch(color_flag,1,"color1",2,"color2",...)
Lasciate ogni speranza, voi ch'entrate.

Igor_123
Осторожный Баянист
Осторожный Баянист
Аватара пользователя
 
Сообщения: 1325
Зарегистрирован: 21.07.2004 (Ср) 13:00
Откуда: Днепропетровск

Сообщение Igor_123 » 08.02.2005 (Вт) 12:43

alibek писал(а):...Choose...Switch...


:D :D :D

Lirin
Начинающий
Начинающий
Аватара пользователя
 
Сообщения: 12
Зарегистрирован: 03.12.2004 (Пт) 17:34
Откуда: Москва

Сообщение Lirin » 08.02.2005 (Вт) 12:57

alibek писал(а):Cells(i,2)=Choose(color_flag,"color1","color2",...)
Cells(i,2)=Switch(color_flag,1,"color1",2,"color2",...)

мммм... а в чем смысл? ;)
Правила игры нужно знать, но лучше - устанавливать их самой...

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 08.02.2005 (Вт) 13:12

Lirin писал(а):мммм... а в чем смысл? ;)

Сравни два варианта:
Код: Выделить всё
color_flag = Cells(i, 3).Interior.ColorIndex
Select Case color_flag
  Case 36
    Cells(i, 2) = "HB"
  ...
End Select

Код: Выделить всё
Cells(i, 2) = Choose(Cells(i, 3).Interior.ColorIndex, _
                     "color1",
                     "color2",
                     ...
                     "HB",
                     "color37")
'или
Cells(i, 2) = Switch(Cells(i, 3).Interior.ColorIndex, _
                     1, "color1", _
                     ...
                     36, "HB", _
                     37, "color37")


Помоему, второй вариант компактнее и легче читается.
Lasciate ogni speranza, voi ch'entrate.

Lirin
Начинающий
Начинающий
Аватара пользователя
 
Сообщения: 12
Зарегистрирован: 03.12.2004 (Пт) 17:34
Откуда: Москва

Сообщение Lirin » 08.02.2005 (Вт) 18:42

alibek писал(а):Помоему, второй вариант компактнее и легче читается.


мое мнение: первый - интуитивно более понятный и простой, второй - м.б. более профессиональный и навороченный... :)))))
не претендую на профессионализм, чистое ИМХО... ;)
Правила игры нужно знать, но лучше - устанавливать их самой...


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3

    TopList