Технический форум
Вернуться   Технический форум > Программирование > Форум программистов

Ответ
 
Опции темы Опции просмотра
Старый 10.05.2008, 23:02   #1 (permalink)
Aleksandr_06
Новичок
 
Регистрация: 12.09.2007
Сообщений: 4
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Передо мной стоит задача даписать определённые значения в Excel файл.
Я так понимаю, для этого мне нужно сначало считать информацию из файла, добавить свои данные и перезаписать файл.
Подскажите пожалуйста как это сделать?
Заранее всем большое спасибо
Aleksandr_06 вне форума   Ответить с цитированием

Старый 10.05.2008, 23:02
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Аналогичные проблемы должны вам помочь

Макрос на Excel
Excel, Pdf, Doc + Php
Excel
Excel
Автозаполнение Excel

Старый 12.05.2008, 16:37   #2 (permalink)
ww01031977
Member
 
Аватар для ww01031977
 
Регистрация: 22.01.2008
Сообщений: 553
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 46
По умолчанию

Просто.
Открываешь файл.
дописываешь данные.
закриваешь файл.
ww01031977 вне форума   Ответить с цитированием
Старый 12.05.2008, 16:42   #3 (permalink)
bubuka
Member
 
Аватар для bubuka
 
Регистрация: 23.01.2008
Сообщений: 1,110
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 141
По умолчанию

имеяться ввиду програмнно а не в ручную

если чесно у меня в работе с екселем всегда возникали проблемы ( пробовал в Си и Делфи) с записью в файл
вообщем для себя решал так - открывал файл читал из него
работал с данными ( даже если надо было довать одну ячейку)
удалял - создавал новый файл
сохранял
вообщем перезаписывать корректно у меня не получалось

если с VBA - там наверняка все проще и таких проблем не будет
bubuka вне форума   Ответить с цитированием
Старый 12.05.2008, 20:58   #4 (permalink)
Призрак
Member
 
Регистрация: 26.03.2007
Сообщений: 89
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 17
По умолчанию

то что я использую для работы с экселем под седьмыми делфями:



//вырезано

uses
... ComCtrls, ExtCtrls, OleServer, ComObj;

//вырезано

const
lcid = LOCALE_USER_DEFAULT;

//вырезано

var
XL :Variant;


//вырезано

XL:= CreateOleObject('Excel.Application');

//создаем новую книгу

XL.WorkBooks.Add;

//открываем книгу

XL.Workbooks.Open('c:\test.xls', // Filename: WideString;
2, // UpdateLinks: OleVariant; 2 - never update
False, // ReadOnly: OleVariant;
EmptyParam, // Format: OleVariant;
EmptyParam, // Password: OleVariant;
EmptyParam, // WriteResPassword: OleVariant;
EmptyParam, // IgnoreReadOnlyRecommended: OleVariant;
EmptyParam, // Origin: OleVariant;
EmptyParam, // Delimiter: OleVariant;
EmptyParam, // Editable: OleVariant;
EmptyParam, // Notify: OleVariant;
EmptyParam, // Converter: OleVariant;
False, // AddToMru: OleVariant;
lcid);

//копируем из второй книги первую страницу в первую книгу, вставляя ее первой страницей

XL.WorkBooks[2].WorkSheets[1].Copy(XL.Workbooks[1].Sheets[1], EmptyParam);

//удаляем в первой книге вторую страницу

XL.WorkBooks[1].WorkSheets[2].Delete;

//закрываем вторую книгу

XL.WorkBooks[2].Close(0);

//записываем в ячейку текст. можно цифры. конвертируется само.

XL.WorkBooks[1].WorkSheets[1].Cells[2,1]:='Это тест';

//сохраняем документ (если уже существует, то эксель будет ругаться. если найдешь как запретить спрашивать про перезапись - скажи)

XL.WorkBooks[1].SaveAs('C:\test2.xls',
56, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam,
EmptyParam, EmptyParam, EmptyParam, EmptyParam, lcid);

//показать сформированный документ

XL.Visible:= true;

//отключаемся от офиса

XL:= UnAssigned;
Призрак вне форума   Ответить с цитированием
Ответ


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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 22:24.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.