Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
  #7  
Старый 13.06.2012, 03:04
MiraLaklamon MiraLaklamon вне форума
Новичок
 
Регистрация: 07.06.2012
Сообщения: 59
Версия Delphi: 6, 7
Репутация: 10
По умолчанию

Цитата:
Сообщение от Kailon
Напиши макрос в Excel, а из Delphi просто вызывай его:
Код:
  Excel.Application.Run('NameMacros');
Там есть особенность связанная с безопасностью - по умолчанию в Excel запрещено выполнение макросов...
Нет, если конечно нужно лично под себя, то можно просто у себя на компьютере в Excel'е разрешить выполнение макросов и всё.
Если же нужно чтобы работало везде, то помнится когда-то для какой-то задачи я в реестре включала разрешение выполнять макросы, потом запускала Excel, выполняла макрос и после этого восстанавливала в реестре прежнее значение. Но в конце концов решила просто переписать макрос на Delphi и не морочить себе голову.

Цитата:
Сообщение от cadil
Помогите, пожалуйста, записать в Delphi следующий макрос VB (поиск записи bbbb в таблице Эксель):
Код:
Sub find_1()
   Range("A1").Select
    Cells.Find(What:="bbbb", After:=ActiveCell, LookIn:=xlFormulas, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate
End Sub
Это всё элементарно переводится на Delphi:
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
  ExcelApplication1.Connect;
  ExcelApplication1.Visible[LOCALE_USER_DEFAULT]:=True;
  ExcelApplication1.Workbooks.Open('Excel1.xls', False, False, EmptyParam, EmptyParam, EmptyParam,
                                   EmptyParam, EmptyParam, EmptyParam, EmptyParam,
                                   EmptyParam, EmptyParam, EmptyParam, LOCALE_USER_DEFAULT);

  ExcelApplication1.Range['A1', EmptyParam].Select;
  ExcelApplication1.Cells.Find('bbbb', ExcelApplication1.ActiveCell, xlFormulas, xlPart, xlByRows,
                               xlNext, False, False).Activate;
end;
ExcelApplication1 - это стандартная компонента Delphi - должна быть на вкладке "Servers".
Ответить с цитированием
Этот пользователь сказал Спасибо MiraLaklamon за это полезное сообщение:
cadil (22.06.2012)
 


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 15:54.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025