Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.07.29;
Скачать: CL | DM;

Вниз

Отчеты в Excel   Найти похожие ветки 

 
andrey_pst ©   (2002-07-16 14:17) [0]

Вопрос вот в чем:
Как сделать копию листа в эту-же книгу.

Такой код работает нормально:
//№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№
...
interface
...
private
{ Private declarations }
IExcelApp : Excel97._Application;
IExcelWB : Excel97._Workbook;
IExcelWS : Excel97._Worksheet;
DIExcelR : Excel97.Range;
DIExcelF : Excel97.Font;
public
{ Public declarations }
end;
...
implementation
...
const
xlLCID = LOCALE_USER_DEFAULT;
...
procedure TFMainForm.BtnSendClick(Sender: TObject);
var
...
begin
...
IExcelApp := CoExcelApplication.Create; // загрузили сервер
IExcelApp.Visible[xlLCID] := true; // отобразили сервер
...
// добавили книгу
IExcelWB := IExcelApp.Workbooks.Open("c:\sql\fd.xlt", EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, false, xlLCID);
IExcelWB.Activate(xlLCID); // активировали книгу
IExcelWS := IExcelWB.Worksheets.Item["Лист1"] as Excel97._Worksheet; // получили ссылку на лист
IExcelWS.Activate(xlLCID); // активировали лист
...
IExcelWB := nil; // освободили книгу
IExcelApp.Visible[xlLCID] := false; // скрыли сервер
IExcelApp.Quit; // закрыли сервер
IExcelApp := nil; // освободили сервер
...
end;
//№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№

А вот если нужно сделать копию первого листа в эту же книгу, например так:

...

IExcelWS := IExcelWB.Worksheets.Item["Лист1"] as Excel97._Worksheet; // получили ссылку на лист
IExcelWS.Activate(xlLCID); // активировали лист
// копирование листа
IExcelWS.Copy(EmptyParam, EmptyParam, xlLCID);
...

то получается не копия листа в этой-же книге, а копия листа в новой книге.
Попробовал подставлять значения вместо EmptyParam - получил гору матюков об ошибке.

Как быть ?


 
ПИТОН   (2002-07-16 14:41) [1]

VBA дает такой код:
Sheets("Лист1").Copy Before:=Sheets(1)



Страницы: 1 вся ветка

Текущий архив: 2002.07.29;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.019 c
1-95424
Руль
2002-07-15 19:11
2002.07.29
Автоматический запуск Excel


4-95602
Влад!
2002-05-16 22:24
2002.07.29
MessageBox & MB_RIGHT


3-95230
grig
2002-07-08 15:51
2002.07.29
Узнать будущее значение AutoInc поля


14-95496
VictorT
2002-07-01 11:34
2002.07.29
Задачка.


3-95254
jen_bond
2002-07-09 11:33
2002.07.29
Реализация связи многие-ко-многим