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

Вниз

Excel + Delphi   Найти похожие ветки 

 
sh1k4r1   (2009-01-05 19:02) [0]

Возник вопрос - как бы так извернуться и вставить в форму экселевский  лист (т.е. таблицу) с возможностью сохранения в *.xls и быстрого редактирования ячеек: клик на ячейку -> клик на кнопку -> к числовому значению в ячейке прибаляется n; на другую кнопку -> отнимается m


 
Сергей М. ©   (2009-01-05 19:07) [1]

TOleContainer


 
sh1k4r1   (2009-01-05 19:08) [2]

если тебя не затруднит, можешь поподробней, а то времени разбираться нету)


 
Сергей М. ©   (2009-01-05 19:19) [3]


> а то времени разбираться нету


Это уже твоя личная драма.
Вектор тебе дан.


 
sh1k4r1   (2009-01-05 19:32) [4]

ладно, ладно, спасибо за вектор. есть только последний вопрос. как это все редактировать вне экселя, в моей оболочке? там же получается довольно статичный объект


 
Сергей М. ©   (2009-01-05 19:38) [5]


> как это все редактировать вне экселя


Что значит "вне" ?
Если Excel инсталлирован в целевой системе, то см. [1]
Если нет, то векторов будет целый лес.


> довольно статичный


Это тоже самое что и "в целом и общем беременна, но местами и не очень".


 
YurikGL ©   (2009-01-05 19:40) [6]


> как это все редактировать вне экселя, в моей оболочке?

Что бы редактировать xls вне Excel-я нужно свой Ексель писать. Или использовать Open Office или что нибудь аналогичное.


 
sh1k4r1   (2009-01-05 19:44) [7]

ну вот я загрузил в оле контейнер таблицу. я вот хочу допустим в ячейку c3 написать "6". для этого мне приходится лезть в эксель и ручками там набивать "6". а мне бы хотелось нажать кнопку на форме, и - вуаля - в ячейке появилось "6". а то висит себе контейнер и висит


 
sh1k4r1   (2009-01-05 19:44) [8]

и ничего с ним не сделать


 
Сергей М. ©   (2009-01-05 19:49) [9]

MyOleContainer.OleObject.Range.Cells["C3"].Value := ""6"";


 
Сергей М. ©   (2009-01-05 19:56) [10]


> sh1k4r1


Открываешь стандартную справку к ExcelVBA, внимательно изучаешь там методы/свойства интересующих тебя Excel-объектов, программное обращение к которым реализует поставленную тобой задачу, пишешь соотв.макрос прямо в Excel, отлаживаешь его.
Перенос результирующего VBA-кода в Delphi-код не вызывает никаких сложностей - языки очень похожи


 
sh1k4r1   (2009-01-05 19:56) [11]

о, большое спасибо.
а сохранение, открытие?


 
Сергей М. ©   (2009-01-05 20:01) [12]


> а сохранение, открытие?


см. [10]


 
sh1k4r1   (2009-01-05 20:06) [13]

окей, спасибо большое за ответ


 
Нат   (2009-01-06 03:43) [14]

Можно вообще без Екселя, и даже довольно просто.
Всего несколько строк кода.
Подключаемся, читаем, пишем.
НО!
Есть существенные ограничения.
При подключении автоматом задается тип столбца.
Не всегда верно.
Если записи не уникальны - с изменением и обновлением будут сложности.

Смотреть здесь
Как подключить книгу Excel как базу данных, используя поставщика данных Jet OLE DB Provider?
http://www.delphikingdom.com/asp/viewitem.asp?catalogid=1277


 
KilkennyCat ©   (2009-01-06 09:30) [15]

Можно вообще без Делфи, и даже довольно просто.
Всего несколько строк кода.

Смотреть где-нить там:
Программирование на VBA в Excel



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

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

Наверх




Память: 0.5 MB
Время: 0.015 c
8-1189549248
adolis1
2007-09-12 02:20
2009.02.15
програма для начитки текста и его записи в файл


15-1229513514
Knight
2008-12-17 14:31
2009.02.15
Эмуляция событий мыши.


15-1229434825
Александр Иванов
2008-12-16 16:40
2009.02.15
Выбор способа оптимизации запроса


15-1229364848
Anatoly Podgoretsky
2008-12-15 21:14
2009.02.15
Касперский спамит


2-1209619132
FoxikM
2008-05-01 09:18
2009.02.15
Как копировать файлы с "неправильным" именем