Текст комментария:
Это делаем в начале работы с экселем
Цвета = Excel.ActiveWorkbook.Colors.Выгрузить(); // Получим все индексы цвета экселя
Цвета[51] = "14725528"; // Переопределим 51-й индекс цвета своим
МассивДляExcel = Новый COMSafeArray(Цвета,"VT_I4"); // Конвертируем в массив используемый в COM, в ковычках указан тип значений
Excel.ActiveWorkbook.Colors = МассивДляExcel; // Скормим экселю его же масив с переопределёнными элементами
А когда нам надо использовать переопределённый нами выше индекс, пишем:
АктивнаяКнига.Cells(10, 5).Interior.Color = Цвета[51]; // Красим
А терь ответ на возможный вопрос "А почему не переопределённый индекс присваиваешь, а цвет?" Отвечаю, опытным путём установлено, что если ты переопределяешь индекс и с таким цветом другой индекс уже есть, он не переопределяется... а когда мы задаём ячейкам именно цвет, а не индекс, он сам автоматически находит и подставляет нужный индекс.
А теперь, как получить цифру цвета "14725528" ? Я не нашёл как сконвертировать из 1С в эксель цвет, поэтому пришлось написать прожку: //infostart.ru/public/58687/