powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / данные из Delphi в открытый Excel
13 сообщений из 13, страница 1 из 1
данные из Delphi в открытый Excel
    #39958650
m.medvedb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вроде инфы полно..но проблема в том, что она описывает работу с не открытым файлом, а с зарытым(или я просто чего-то недопонимаю).


Задача.
1 В уже открытый Excel файл на определенный лист надо время от времени вставлять-отправлять данные из Delphi. С закрытым файлом через OLE проблем нет, но как это сделать если документ открыт?.
...
Рейтинг: 0 / 0
данные из Delphi в открытый Excel
    #39958651
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Точно так же, только использовать GetOleObject() вместо Create.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
данные из Delphi в открытый Excel
    #39958659
m.medvedb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov

Точно так же, только использовать GetOleObject() вместо Create.
Спасибо!!! Елки так просто оказалось, надо было убрать create... Я вчера весь день убил пытаясь понять...
...
Рейтинг: 0 / 0
данные из Delphi в открытый Excel
    #39961166
m.medvedb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov, Возник еще вопрос. А если открыты несколько файлов, то как обратится к нужному, а не к первому?
...
Рейтинг: 0 / 0
данные из Delphi в открытый Excel
    #39961190
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Перебрать все, посмотреть который из них "нужный".
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
данные из Delphi в открытый Excel
    #39961263
m.medvedb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov

Перебрать все, посмотреть который из них "нужный".

Перебрать и сравнить название и по ID выбрать нужный. Я правильно понял?
...
Рейтинг: 0 / 0
данные из Delphi в открытый Excel
    #39961311
ART-CODE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я бы сделал макрос в файле Excel, который сам проверяет обновления в источнике данных, получает их и показывает.
А программа на Delphi (или чем угодно) подготавливает обновления в этом источнике.
Тогда вообще нет проблемы поиска в какой открытий файл отправлять.
Каждый открытый файл сам "знает" какой источник предназначен для него, и ждет там изменения.
Источником данных может быть как таблица на с SQL сервере, так и простой CSV файл на диске.
Кому что удобнее.
...
Рейтинг: 0 / 0
данные из Delphi в открытый Excel
    #39961346
m.medvedb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov,

Вас не затруднить примерчик.

FindMyWorkBook(name)

WorkSheet := WorkBook.WorkSheets.Item['отчет'];
...
Рейтинг: 0 / 0
данные из Delphi в открытый Excel
    #39961348
m.medvedb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
m.medvedb,
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
function WorkBookIndex(WorkBookName: Ansistring): integer;
var
  i, n: integer;
begin
  //проверка на наличие книги с этим именем
  n := 0;
  if VarIsEmpty(Excel) = false then
    for i := 1 to Excel.WorkBooks.Count do
      if Excel.WorkBooks[i].FullName = WorkBookName then
      begin
        n := i;
        break;
      end;
  WorkBookIndex := n;
end;

procedure TForm1.Button11Click(Sender: TObject);
var
    EXWorkSheets : Sheets;
      EXSheet : Variant;
    SheetName : OleVariant;
    i: integer;
begin
TLog.Lines.add(IntToStr( WorkBookIndex('D:\3.xlsx')));
end;



Почему данная функция возвращает всегда 0
...
Рейтинг: 0 / 0
данные из Delphi в открытый Excel
    #39961355
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
m.medvedbПочему данная функция возвращает всегда 0

Пошаговая отладка подскажет.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
данные из Delphi в открытый Excel
    #39961364
alekcvp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
m.medvedb,

Как минимум я бы делал
Код: pascal
1.
if AnsiSameText(Excel.WorkBooks[i].FullName, WorkBookName) then ...

И почему именно AnsiString?..
...
Рейтинг: 0 / 0
данные из Delphi в открытый Excel
    #39961377
m.medvedb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
alekcvp
m.medvedb,

Как минимум я бы делал
Код: pascal
1.
if AnsiSameText(Excel.WorkBooks[i].FullName, WorkBookName) then ...

И почему именно AnsiString?..


Это готовая функция не моя.
взял тут https://delphisources.ru/pages/faq/base/excel_books_sheets.html
...
Рейтинг: 0 / 0
данные из Delphi в открытый Excel
    #39961380
alekcvp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
m.medvedb
Это готовая функция не моя.
взял тут https://delphisources.ru/pages/faq/base/excel_books_sheets.html

https://www.gunsmoker.ru/2010/05/90.html
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / данные из Delphi в открытый Excel
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]