![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Добрый день.
Есть код который делает выгрузку в excel. Есть макрос, который красит определенные ячейки. Нужно, связать их как нить вместе) чтоб после выгрузки сработал макрос. о цене договоримся. |
|
#2
|
||||
|
||||
|
Допустим в переменной Excel у тебя объект созданный функцией CreateOleObject('Excel.Application'), тогда запуск макроса будет выглядеть так:
Код:
Excel.Run(MacrosName, Param1, Param2,...,Param30); ParamX - параметры ЗЫЖ Давай договариваться о цене ![]() |
|
#3
|
|||
|
|||
|
Спасибо большое)) всего лишь 2 слова нужно было написать)))
тогда еще 1 вопрос)) как сделать чтоб текст в ячейках выравнивался по центру? |
|
#4
|
||||
|
||||
|
Дабы не отвечать односложно на кучу подобных вопросов расскажу один секрет: я, до того как прочитал эту тему, тоже не знал как запустить макрос в 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 Sub11. Как это перевести в Delphi? 12. Смотрим вот эту тему. Там можно заметить вот это: Код:
//Украшательство Sheet.Range[RangeStr].Font.Name:=TableDataFontName; Sheet.Range[RangeStr].Font.Size:=TableDataFontSize; 14. Еще раз думаем 15. Придумали: Код:
//Украшательство Sheet.Range[RangeStr].HorizontalAlignment:=xlCenter; Sheet.Range[RangeStr].VerticalAlignment:=xlBottom; ЗЫЖ: Константы xlCenter и т.п. описаны в ExcelXXX.pas. |
|
#5
|
|||
|
|||
|
спасибо! тему можно закрыть!)
|
|
#6
|
||||
|
||||
|
а где обещанная цена?
|
|
#7
|
||||
|
||||
|
Aristarh Dark, ну ты чего за что ему платить, если у него уже все есть?)
|
|
#8
|
|||
|
|||
|
ALexandr555, он заплатит, я его знаю. У меня помощи просил, но мне реально некогда сейчас, своих проблем море.
|