Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Программирование, связанное с MS Office > Копирование формата ячейки


Автор: НеуФазендник 9.5.2006, 14:45
Привет, Рад вашему вниманию!
Есть проблема.
Пытаюсь сделать подпрограмму, которая, активируясь на рабочем листе "А" копирует формат некоторой ячейки листа "В" в некоторую ячейку листа "С", при этом явно не активируя не "В" не "С" листы. 
Пытался по всякому реализовать, даже через буфер обмена. Всё время вылезают ошибки времени выполнения.
Подскажите, как решить эту элементарную задачу. 

Автор: Staruha 9.5.2006, 20:18
Если в ячейке будут значения,то и формат вместе с ними потянется
Код

Лист1.Range("A1").Value = Лист2.Range("A1").Value
 

Автор: RockClimber 10.5.2006, 18:53
Staruha, а "Лист1.Range("A1").Value" - это как? Может, имелось ввиду
Код

Sheets("A").Range("A1").Value=Sheets("B").Range("A1").Value
 

Автор: НеуФазендник 11.5.2006, 19:19
Спасибо. Проблема уже решена.
Значений в ячейке нет. Необходимо форматирование (цвет и прочее)
Value в данном случае как раз делает обратное, не захватывая форматов. Кроме того причина была в том, что 
в нотации Range("A1")... все работает,
а в нотации Range(cells(1,1),cells(1,1)) вылезает ошибка.
А нужна именно эта нотация, так как номер строки и столбца определяются некоторыми переменными.
Выход оказался в использовании операции address. 

Автор: Staruha 11.5.2006, 21:06
Код

Range("A" & x)... 
 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)