Часовой пояс: UTC + 3 часа




Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 7 
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 

Member
Статус: Не в сети
Регистрация: 15.10.2003
Откуда: NNov\Warsong
Требуется в файле Excel изменить дату в одной ячейке в формате dd.mm.yy на сегодняшнюю. Пытался править при помощи:
Цитата:
procedure TForm1.Button1Click(Sender: TObject);
var
f:TFileStream;
s:string;
begin
// Это понимаю,что глупо,но как правильно не пойму.
s:=FormatDateTime ('dd.mm.yy',Date());
//Открытие файла
f:=TFileStream.Create('a230.xls',fmOpenReadWrite);
//Изменение по адресу 00001DD1
f.Seek($00001DD1, soFromBeginning);
f.Write(s,sizeof(s));
f.Free;
end;

Но пока не выходит. Как конвертнуть дату в hex формат? Или может это все проще сделать?

_________________
Хочешь рассмешить Бога - расскажи ему о своих планах!



Партнер
 

Advanced member
Статус: Не в сети
Регистрация: 09.06.2003
Откуда: USSR
Зачем же так жестоко то???
Можно спокойно использовать компоненты сервера, дял доступа к файлам excell и работать на нативном для Excell уровне.


 

Member
Статус: Не в сети
Регистрация: 15.10.2003
Откуда: NNov\Warsong
А по-подробнее... ;) Для чайника.

_________________
Хочешь рассмешить Бога - расскажи ему о своих планах!


 

Advanced member
Статус: Не в сети
Регистрация: 09.06.2003
Откуда: USSR
Вечером выложу пример


 

Member
Статус: Не в сети
Регистрация: 15.10.2003
Откуда: NNov\Warsong
А просто конвертнуть FormatDateTime ('dd.mm.yy',Date()); в шестнадцатиричный формат возможно?

_________________
Хочешь рассмешить Бога - расскажи ему о своих планах!


 

Member
Статус: Не в сети
Регистрация: 11.11.2004
Откуда: Челябинск
Вот здесь много для Delphi http://delphiworld.by.ru/all.html, сам пишу в C++Builder, поэтому примера не привожу. Хотя если надо..., есть подробное руководство.

Добавлено спустя 3 минуты, 36 секунд:
ZanyIV Замучаешься искать в файле. Дата и время в билдере и дельфях образовано от типа double, в 16-ричный без глюююков не перевести.

Работать с офисом лучше всего через OLE.

_________________
пишу я программу... и вдруг на клавиатуру выползает bug, буквально


 

Member
Статус: Не в сети
Регистрация: 15.10.2003
Откуда: NNov\Warsong
Люди, покажите плиз на примере! :weep:
А на другие сайты доступ у меня закрыт - работа :(

Добавлено спустя 3 часа, 20 минут, 28 секунд:
Уф! Кое-как изменение сделал, но файл не сохраняется сам. Использовал следующий метод:
Цитата:
ExcelApp := CreateOleObject('Excel.Application');
Workbook := ExcelApp.WorkBooks.Add('C:\xxx\xxx.xls');
Sheet:=ExcelApp.Workbooks[1].WorkSheets['Отчет'];
Sheet.Cells[1,1]:=FormatDateTime('dd.mm.yy',Date());

Т.е. Ексель создался, открылся,изменился,но не сохранился.

_________________
Хочешь рассмешить Бога - расскажи ему о своих планах!


Показать сообщения за:  Поле сортировки  
Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 7 
-

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan