![]() |
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
![]() |
Sanya01078 |
![]() ![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 10 Пол: Мужской Репутация: ![]() ![]() ![]() |
есть функция
function saveasexcelfile(stringgrid: tstringgrid; filename: string): boolean;
const
xlwbatworksheet = -4167;
var
row, col: integer;
gridprevfile: string;
xlapp, sheet: olevariant;
begin
result := false;
xlapp := createoleobject('excel.application');
try
xlapp.visible := false;
xlapp.workbooks.add(xlwbatworksheet);
sheet := xlapp.workbooks[1].worksheets[1];
sheet.name := 'my sheet name';
for col := 0 to stringgrid.colcount - 1 do
for row := 0 to stringgrid.rowcount - 1 do
sheet.cells[row + 1, col + 1] := stringgrid.cells[col, row];
try
xlapp.workbooks[1].saveas(filename);
result := true;
except
// error ?
end;
finally
if not varisempty(xlapp) then
begin
xlapp.displayalerts := false;
xlapp.quit;
xlapp := unassigned;
sheet := unassigned;
end;
end;
end;
procedure tform1.button1click(sender: tobject);
begin
if saveasexcelfile(stringgrid1, 'c:\myexcelfile.xls') then
showmessage('stringgrid saved!');
end;
Проблема в том что она сохраняет числа без запятой то есть у меня в stringGride число 6,33 а оно сохраняет 6 33 Подскажите где что-то не так!! |
![]() ![]() |
Sanya01078 |
![]()
Сообщение
#2
|
Новичок ![]() Группа: Пользователи Сообщений: 10 Пол: Мужской Репутация: ![]() ![]() ![]() |
Цитата прекрасно сохраняет число с любым количеством знаков после запятой (у меня в системе разделитель целой и дробной части - точка, запятая используется для отделения тысяч) : В вашем объяснении я не увидел такого совета как поменять разделитель на компьютере!!! И попрошу будьте более корректней!! Я читаю все посты и пытаюсь исправить свои ошибки!! Спасибо ВСЕМ за помощь! ![]() |
![]() ![]() |
![]() |
Текстовая версия | 28.07.2025 7:23 |