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

Вниз

Опять Excel...   Найти похожие ветки 

 
3APA3A   (2003-07-08 19:20) [0]

Заезженный вопрос: как создать в Excel новую книгу с одним листом и потом сохранить ее с именем "Name.xls"...
Только не говорите про макросы....
Я записал это, а как перевести на "нормальный" язык - не знаю...

Macros:

Sub Macro1()
Workbooks.Add
Sheets("Sheet2").Select
ActiveWindow.SelectedSheets.Delete
Sheets("Sheet3").Select
ActiveWindow.SelectedSheets.Delete
ActiveWorkbook.SaveAs Filename:= _
"c:\name.xls", FileFormat:=xlNormal, _
Password:="", WriteResPassword:="",
ReadOnlyRecommended:=False,_
CreateBackup:=False
End Sub


 
3APA3A   (2003-07-08 19:57) [1]

На самом деле, где можно почитать про это, а то постоянно то
Invalid variant operation, то Method ... not supported, и т.д.


 
Катерина   (2003-07-08 22:28) [2]

var xls, sht : variant;
begin
xls := CreateOleObject("Excel.Application");
xls.WorkBooks.Add;
sht:= xls.ActiveSheet;

//xls.Visible := true;

<...>

sht.saveas("Name.xls",,"","",FALSE,FALSE);
end;


 
3APA3A   (2003-07-08 23:09) [3]

Вылетает на строке sht.saveas("Name.xls",,"","",FALSE,FALSE);


 
Романов Р.В.   (2003-07-08 23:20) [4]

var
xls, wbk: OleVariant;
i: Integer;
begin
xls := CreateOleObject("Excel.Application");
xls.Visible := true;
xls.DisplayAlerts := False;
wbk := xls.WorkBooks.Add;
for i := wbk.Sheets.Count downto 2 do
wbk.Sheets[i].Delete;
xls.DisplayAlerts := True;

wbk.saveas("Name.xls",,"","",FALSE,FALSE);

end;


Почитать можно в
1. Справке по Visual Basic for Applications
2. Файлax Excel97.pas, Excel2000.pas
3. В инете


 
3APA3A   (2003-07-08 23:33) [5]

1) Справка Visual Basic for Applications - это та самая, которая во встроенном в Excel Visual Basic?


 
Романов Р.В.   (2003-07-08 23:38) [6]

угу


 
3APA3A   (2003-07-09 00:03) [7]

угу, угу... так говорю же - не всегда получается это на паскаль перевести... то там элемент массива [], то поле .field , то параметр ()... а некоторых свойств вообще нет... или я их найти просто не могу... то есть нужно что-то по VBA адаптированное под Delphi...


 
AbrosimovA   (2003-07-09 07:51) [8]

uses Variants, OleServer, Excel97, Excel2000,......;

type
TMainForm = class(TForm)
ExcelApplication: TExcelApplication;
ExcelWorkSheet: TExcelWorksheet;
ExcelWorkBook: TExcelWorkbook;

private
{ Private declarations }
Excel,WorkBook,WorkSheet1:OleVariant;
procedure MakeExcel;
......

uses ComObj, ActiveX;

procedure TMainForm.MakeExcel;
begin
Excel:=CreateOleObject("Excel.Application");
Excel.Application.EnableEvents := false;
Workbook :=Excel.WorkBooks.Add;
WorkSheet1:=WorkBook.WorkSheets[1];
WorkSheet1.Name:="Лист №1";
WorkBook.SaveAs("C:\Мои документы\Name.xls");
end;


 
Bel   (2003-07-09 09:33) [9]

> 3APA3A © (08.07.03 19:57)
> На самом деле, где можно почитать про это,

http://www.afalinasoft.com/rus/tips/index.html


 
MetalFan   (2003-07-09 10:21) [10]

я по такой-же технологии работаю с Вордом... проблем больших пока не было)))
Записал макрос - скопировал в Делфи - модифицировал...
заметил вот что:
если бейсиковский список (типа Tables,Waorksheets etc)
то надо обращаться не Tables(nnn), а Tables.item(nnn)
Вот!


 
Marat   (2003-07-10 02:06) [11]

Прошу у всех пощения, но я не понял, к чему столько сложностей?
Катерина молодец - почти в точку, без лишних сложностей!
Код:

var
xls:Variant;
begin
xls := CreateOleObject("Excel.Application");
xls.WorkBooks.Add($FFFFEFB9);
// xls.Visible := true;
xls.ActiveWorkBook.SaveAs("D:\Name.xls");
// xls.Quit;
end;
Как видишь, всего 3 строчки:). Константа $FFFFEFB9 означает, что
рабочая книга будет состоять из одного листа с данными.


 
AndrewVolkov   (2003-07-10 02:11) [12]

ExcelApp.SheetsInNewWorkbook[xlLCID]:=1;

И только один Sheet...



 
Marat   (2003-07-10 02:15) [13]

to ЗАРАЗА

А если тебя больше интересуют бумажные книжки, а не статьи на
сайтах, то советую "Delphi6 и технология COM". Кто написал, не
помню, помню только, что то ли двое,то ли трое. Ну вобщем
коллективное творчество. Найдешь много интересного и про
приложения Office, и вообще про COM.



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

Форум: "Основная";
Текущий архив: 2003.07.24;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.009 c
3-77718
Zigs
2003-06-30 12:06
2003.07.24
Проблема с точностью значения на клиенте ...


3-77736
Rov
2003-07-01 09:28
2003.07.24
Не сохраняет картинку


1-77939
SergeyN
2003-07-09 18:39
2003.07.24
EOleSysError


1-77880
SeRg_2003
2003-07-11 07:05
2003.07.24
Ole error 800a03ec


1-77826
Боян Георгиев
2003-07-11 20:10
2003.07.24
Как можно получить имя приложения если известен его Handle





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский