Показать сообщение отдельно
  #4  
Старый 15.04.2011, 13:24
Аватар для Aristarh Dark
Aristarh Dark Aristarh Dark вне форума
Модератор
 
Регистрация: 07.10.2005
Адрес: Москва
Сообщения: 2,906
Версия Delphi: Delphi XE
Репутация: выкл
По умолчанию

Дабы не отвечать односложно на кучу подобных вопросов расскажу один секрет: я, до того как прочитал эту тему, тоже не знал как запустить макрос в Excel, но я знаю один замечательный инструмент "Запись макроса".
Теперь по существу:
1. Запускаем Excel
2. Выбираем любую ячейку
3. В меню: Сервис - Макросы - Начать запись
4. В окошке "Запись макроса" жмем ОК
5. Жмем на кнопочку "Выровнять по центру" на панели инструментов. Текущая ячейка выравняется по центру.
6. Жмем на кнопку "Остановить запись" в маленьком окошечке.
7. Жмем Alt+F11
8. В дереве VBAProject выбираем Modules, окрываем Module1
9. Там по имени ищем макрос.
10. Видим примерно следующее:
Код:
Sub Макрос3()
'
' Макрос3 Макрос
' Макрос записан 15.04.2011 (Aristarh Dark)
'

'
    With Selection
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlBottom
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
    End With
End Sub
Нас интересует то что я выделил жирным.
11. Как это перевести в Delphi?
12. Смотрим вот эту тему. Там можно заметить вот это:
Код:
 //Украшательство
  Sheet.Range[RangeStr].Font.Name:=TableDataFontName;
  Sheet.Range[RangeStr].Font.Size:=TableDataFontSize;
13. Думаем
14. Еще раз думаем
15. Придумали:
Код:
 //Украшательство
  Sheet.Range[RangeStr].HorizontalAlignment:=xlCenter;
  Sheet.Range[RangeStr].VerticalAlignment:=xlBottom;

ЗЫЖ: Константы xlCenter и т.п. описаны в ExcelXXX.pas.
__________________
Некоторые программисты настолько ленивы, что сразу пишут рабочий код.

Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты.
Ответить с цитированием