Главная страница
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.016 c
1-1207738816
Marser
2008-04-09 15:00
2009.02.15
Аппроксимация методом наименьших квадратов


15-1229467237
Керк
2008-12-17 01:40
2009.02.15
Интересный текст


2-1230991906
demon
2009-01-03 17:11
2009.02.15
Падсказка над иконкой в трее


4-1205397361
Костик
2008-03-13 11:36
2009.02.15
Как запретить мышке перемещаться в определенную позицию.


15-1229548724
mm_ash
2008-12-18 00:18
2009.02.15
Простой парсер