Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2002.09.09;
Скачать: [xml.tar.bz2];

Вниз

Подкиньте пожалуйста пример SaveAs для Excel из Delphi   Найти похожие ветки 

 
voronkov   (2002-07-08 12:21) [0]

Задача такая - надо открыть в фоновом режиме Excel, напихать туда чего-то и сохранить в заранее известном файле. Все это делается, кроме записи. При вызове метода Save все время выскакивает диалог записи файла, мне он совершенно не нужен. Подскажите пожалуйста работающий пример функции SaveAs объекта Excel.


 
troits   (2002-07-08 12:44) [1]

Работающего примера нет, но попробуй вызвать метод
SaveAs(Filename: OleVariant; ...
у WorkBook - а. (Например Application.ActiveWorkBook.SaveAs...)
Мне кажется, что проблем быть не должно.


 
voronkov   (2002-07-08 13:14) [2]

Я вызываю этот метод, но в нем куча параметров. Некоторые я проставил, но что-то не подходит, хотя все компилируется. Я не могу найти на все эти параметры описания, поэтому выскакивает ошибка, что-то типа "invalid index" или что-то подобное. Вот вся эта ботва из файла excel97.pas :

procedure SaveAs(const Filename: WideString; FileFormat: OleVariant; Password: OleVariant;
WriteResPassword: OleVariant; ReadOnlyRecommended: OleVariant;
CreateBackup: OleVariant; AddToMru: OleVariant; TextCodepage: OleVariant;
TextVisualLayout: OleVariant; lcid: Integer); safecall;


Что такое, например TextCodepage? Я потому и прошу работающий пример, потому что кто-то уже наверняка на эти грабли наступал. Но неужели все открывают Excel, а потом заставляют юзверя руками все это сохранять, нелогично как-то, особенно если это отчет формируется в пакете и куда-то отсылается, как в моем случае.


 
USAtyj   (2002-07-08 13:29) [3]

У меня код такой работает:

...
if FileExists(FileName) then // если такой файл уже есть - удаляем, иначе сохранить не получится.
DeleteFile(PChar(FileName));
Excel.ActiveWorkBook.SaveAs(FileName);
Excel.ActiveWorkBook.Close(SaveChanges := True);
Excel:=UnAssigned;
...

А то, что ты написал - это, кажется, в Word так сохранять надо.


 
TTCustomDelphiMaster   (2002-07-08 13:33) [4]

А я так сохраняю файл
Workbook.SaveCopyAs(dir+destname30);


 
voronkov   (2002-07-08 16:38) [5]

Да, господа. Типа все хорошо, но только на словах. Попробовал как сказал USAtyj, но все та же песня, компилятор говорит, что не хватает параметров, все параметры я перечислил выше, никакие они не word-овские.
Если делать как у TTCustomDelphiMaster, то там тоже не хватает одного параметра, а именно lcid. Я ставлю 0, все компилируется, но выдетает Access violation. Я создаю файл из шаблона, может это на что-то влияет. Блин, как у вас все это работает, может тут тайна какая-то, может можно как-то компилятор убедить компилировать без параметров?


 
voronkov   (2002-07-08 16:48) [6]

Господа, я тут одурел от жары. Я пытался записывать после того как уже освободил все объекты.
Запись работает только со всеми параметрами, все записывается, но некоторые параметы нужны. Всем большое спасибо.



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

Форум: "WinAPI";
Текущий архив: 2002.09.09;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.006 c
1-27013
carmen
2002-08-30 02:48
2002.09.09
Подскажите какойто компонент похожий на Excel


6-27136
Victor_Cr
2002-07-02 16:28
2002.09.09
Авторизация прокси-сервером


1-27090
Radimir
2002-08-28 17:11
2002.09.09
словарная база


3-26866
Dimedrol
2002-08-19 13:33
2002.09.09
SYSDBA password


1-26994
Yasha
2002-08-29 12:57
2002.09.09
Слайд-шоу





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский