| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Разработка Windows Forms > Как экспортировать в Excel |
| Автор: a_r_e 2.11.2007, 09:42 | ||
| Добрый день всем!!! Подскажите плиз, как сделать экспорт данных из Form в Excel , через кнопку, так чтобы инфа в нумерике, лейбле или текст боксе например сохранялась в такой-то ячейке в Экселе...???
Добавлено через 54 секунды Я так понимаю, что надо создать шаблон в Excel??? |
| Автор: moric83 2.11.2007, 10:37 |
| Это называется Excel Automation. Вот http://www.codeproject.com/csharp/Simple_Excel_Automation.asp |
| Автор: a_r_e 2.11.2007, 10:54 |
| А ArrayList обязательно, или мы можем поместить внужные ячеки Excel все что нам надо!!! |
| Автор: farad 2.11.2007, 11:56 | ||
не обязательно. Кстати в примере от moric83, значения присваиваются конкретным ячейкам. Это годится когда нужно заполнить десяток ячеек. А если тебе нужно заполнить таблицу в несколько тысяч строк то получишь конкретные тормоза. Для экспорта в эксель лучше использовать свойство Formula объекта Range - тормозов не будет. Примерно так:
|
| Автор: a_r_e 2.11.2007, 13:51 |
| Так как с кнопки открывать Excel |
| Автор: Lightwave 16.11.2007, 17:18 | ||
| 1. Скачиваешь с сайта майкрософт дополнение к студии для программирования по Офис (VSTO) 2. Скачиваешь, PIA. Необходим, без него бывает не идёт, это "Бермуды". 3.
|
| Автор: AET 23.12.2007, 17:06 |
| народ нужна помащ ни как немогу разобратся с ексель как можно чтобы даныие из техбокса сохранился в ексель зарание блогодарен |
| Автор: izekia 23.12.2007, 23:40 | ||
| Lightwave, 1. VSTO здесь не требуется, они для других задач. Вообще смутно понимаю смысл использования VSTO, даже в контексте своих задач. Жуткие тормоза. 2. PIA нужен для нормального удобочитаемого кода, а так инвокмембера еще никто не отменял. по поводу примера кода:
Это без использования PIA |
| Автор: AET 4.1.2008, 07:59 |
| Привет. Начал изучать работу с excel Из коллекции COM добавил ссылку на Microsoft Excel Object Library далее везде в примерах пишут using Excel = Microsoft.Office.Interop.Excel; У меня только Microsoft.Office.Core Соответственно не могу создать объект приложения Excel Чтоже ещё нужно? Заранее спасибо. |
| Автор: mr.DUDA 4.1.2008, 14:12 |
| AET, где-то косяк, проверь в solution explorer-е, добавился ли reference на Microsoft.Office.Interop.Excel. Только что проверил у себя, всё нормально добавляется и неймспейс нужный на месте. |
| Автор: AET 5.1.2008, 09:00 | ||
втомто и дело что Microsoft.Office.Interop.Excel нету там есть только Microsoft.Office.Core но есть один пример для экспартирование в Ексель там ано есть и работает а мне как его дабавить зарание блогодарен |
| Автор: mr.DUDA 5.1.2008, 13:27 |
| AET, удали Microsoft.Office.Core кнопкой Delete и добавь "Microsoft Excel (тут номер) Object Library" снова, через Add Reference... |
| Автор: AET 5.1.2008, 19:45 | ||
уменя Microsoft Excel 11,0 Object Library всеравно выходит только Microsoft.Office.Core что делать |
| Автор: mr.DUDA 6.1.2008, 03:31 |
| Может есть другие COM-компоненты со словом Excel? 11-й это случайно не Office XP? И ещё, можно поискать в папке офиса файлы с расширением .TLB или .OLB и именем содержащим Excel или что-то типа того, и добавить reference на такой файл. Если при этом появится namespace Microsoft.Office.Interop.Excel - значит это то что нужно З.Ы. У меня вот 2007-й офис установлен, там ничего дополнительно добавлять не нужно. В других версиях офиса может быть по-другому. |
| Автор: n0rb 14.3.2008, 16:58 |
| У меня такая проблема: на моей машине стоит 2007й офис, а у заказчика 2003. Хотелось бы сделать, чтобы экспорт в Word и Excel работал всюду, но желательно без дергания методов через Reflection (наподобие Activator.CreateInstance(Type.GetTypeFromProgID("Excel.Application"))), т.к. тормоза довольно большие + это очень неудобно при разработке =/ В COM-референсах есть только 12-й офис, т.е. 2007. Насколько знаю, если у клиента 2003, то это не пройдет. Можно ли стянуть откуда-то отдельные файлы библиотек для Office11 и бросить их, например, в папку с проектом, потом добавить? Cмогу ли я разрабатывать и тестировать проект на машине с 2007-м и заработает ли моя программа с 2003, при таких манипуляциях? |
| Автор: Rififi 14.3.2008, 18:42 |
вливать данные в excel через ado.net http://support.microsoft.com/kb/316934 |