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

Вниз

Экспорт в excel   Найти похожие ветки 

 
Belkova   (2004-10-14 08:04) [0]

Мастера Delphi, подскажите , пожалуйста, что делаю не так.
Формирую прайс и экспортирую его в excel.
На своем компьютере. Все работает хорошо.
Переношу на другой, Все экспортируется,
но значение поля цена похоже, но на несколько порядков больше.
Код привожу.
 BeginCol := 1;  BeginRow := 2;
 With Sql_FormPrice do
  begin
   Close;
   Sql.Clear;
   Sql.Add("Select Count(*) from Price_U");
   ExecQuery;
   RowCount:=Fields[0].AsInteger;
  end;
 ColCount := 5;
 try
  ExcelApp:= CreateOleObject("Excel.Application");
 except
  raise Exception.Create("Excel должен быть установлен");
 end;
 ExcelApp.Application.EnableEvents := false;
 Workbook := ExcelApp.WorkBooks.Add;
   ExcelApp.Range["C1"]:="Кол-во";
   ExcelApp.Range["E1"]:="Цена";
   ExcelApp.Range["B1"]:="Наименование";
   ExcelApp.Range["A1"]:="№";
   ExcelApp.Range["D1"]:="Кол-во на складе";
 ArrayData := VarArrayCreate([1, RowCount, 1, ColCount], varVariant);
 With Sql_FormPrice do
  begin
   Close;
   Sql.Clear;
   Sql.Add("Select * from Form_price_client(:iSale)");
   ParamByname("iSale").AsFloat:=Koef;
   ExecQuery;
 i:=1;
 While not Eof do
  begin
   ArrayData[I, 1] :=I;
   ArrayData[I, 2] :=Fields[2].AsString;
   ArrayData[I, 3] :=Fields[3].AsString;
   ArrayData[I, 4] :=Fields[5].AsFloat;
   ArrayData[I, 5] :=Fields[4].Asstring;
   i:=I+1;
   Next;
   end;
  end;
  Cell1 := WorkBook.WorkSheets[1].Cells[BeginRow, BeginCol];
  Cell2 := WorkBook.WorkSheets[1].Cells[BeginRow  + RowCount - 1,
          BeginCol + ColCount - 1];
 Range := WorkBook.WorkSheets[1].Range[Cell1, Cell2];
 Range.Value := ArrayData;
 ExcelApp.Workbooks.Close;
 ExcelApp := Unassigned;
 ExcelApp:=Null;
 finally
  NExcel.Enabled:=True;
 end;


 
KSergey ©   (2004-10-14 08:57) [1]

Может что с форматами ячеек? Может их явно назначить?


 
Belkova   (2004-10-14 14:08) [2]

назначаю .не помогает.


 
Nikolay M. ©   (2004-10-14 14:44) [3]


> ArrayData[I, 5] :=Fields[4].Asstring;

Это зачем? Насколько я умею считать до пяти, это ведь цена?


 
vv_fran   (2004-10-14 16:26) [4]

А еще есть куча компонент для экспорта DataSet в Excel.
Мне понравилось делать через EhDBGrid. Проблем не было.



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

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

Наверх




Память: 0.45 MB
Время: 0.042 c
14-1098881227
Snip
2004-10-27 16:47
2004.11.14
Права в NTFS


3-1098170390
mccop
2004-10-19 11:19
2004.11.14
Сделать содержимое ячейки DBGrid невидимым


14-1098902121
reticon
2004-10-27 22:35
2004.11.14
Вопрос по асму...


8-1092306263
Александр_________
2004-08-12 14:24
2004.11.14
Захват и сжатие видео и аудио потоков в режиме реального времени


1-1098872297
MikePol
2004-10-27 14:18
2004.11.14
TChart





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