| Типы программирования, программирование, языки программирования, книги программирование | На сайте представлена информация про программирование в Интернете и работу |
|
Управление приложениями..., Активизация форм... Таблицы Word Word Document из БД OLEConteiner Вопрос возможностей, пример IStorage.CreateStream, ограничение на длинну имени передача stream через com, TBlobStream - > COM -> файл Как выделить нужный объект в слайде?, PowerPoint TWebBrowser HTML + картинка из stream, Можно ли сделать Как распечатать фрейм из WEBBROWSER, Зная его name Как Вы относитесь к курящим девушкам? Использование SpeechAPI как сделать прокрутку у ole container'a, При это он не активизирован WMI - узнать все о чипсете мат.платы OPC Server, Обмен данными с микроконтроллерами RxLib, подскажите Закрытие com - хранилища shell менюшки, (такие как при правом клике) Drag-n-Drop текста из MSWord в мое приложение, Drag-n-Drop текста из MSWord Webbrowser, замена стандартного ИЕ Как загрузить html код в ИЕ, через адресную строку? Проблемы с TDComconnection, Клиент не связывается с сервером приложе Создание файла из шаблона, Подскажите как в ворде... Открыть папку в окне EXplorer'a, Однако в уже открытом окне... Как загрузить в twebbrowser файл с картинками из Word + список Почему я немогу найти спецпапку? MediaPlayer Как управлять Excel из своей программы? Автоматизация PowerPoint в Delphi., Функция AddOLEObject Не открывается файл Powerpoint WinWord+DDE, создание нового файла DOC->RTF Программа, автоматизирующая работу Excel, на чужом, компе не работает. Почему? Адрес последней ячейки в Excel popup окна и TWebbrowser Загрузка Ворда из Оле, загружается ворд без меню "Файл" TWebBrowser popup, keyboard block com порт в Pascal, дозвон по мопеду Мануал по activeX, help Перемещение листа в конец рабочей книги, в Excel Прочесть файл *.pst!, Прочесть outlook.pst Пересылка таблицы из Excel в PowerPoint, в виде рисунка Сортировка ячеек в Excel Открытие файла Excel TWebBrowser.ProgressChange bug, на заметку всем, кто работает сабжем WebBrowser.HWND, Неопознанная ошибка Web-browser, хелп 8))) Назад-вперёд (Web) проблема!!!, как сделать их не активными!!! WinAPI, Сайты ActiveX Server, Нужно создать свой как узнать позицию конца документа в Word?, как узнать позицию конца документа в Wor Outlook, Поля контактов Поиск в Ворде фразы и вставка ее в Дельфи Получить HTML код странички ActiveX без регистрации, Использование ActiveX только в runtime Как Вы относитесь к курящим девушкам? InternetExplrer, Плагин Формат ячейки Excel, проблема с передачей значений Excel без OLE Модем у меня фуфло! Регистрация ActiveX контрола, Excel не хочет TWebBrowser's parent's parent DataSnap+ADO, Проблема определения пути dll-сервера как работать с IE запущенным в качестве сервера, IE запустило другое приложение как можно использовать dispinterface? WebBrowser: не работают некоторые клавиши Как по нажатию кнопки открыть Word? excel, экспорт Рисование линий таблицы, выравнивание в Excel, По технологии СОМ |
Платные хостинги Раскрутка сайта Книги по программированию Excel без OLE
- Нужно прочитать данные из таблицы Excel, без использования OLE (пример из FAQ в дельфи 7 не работает) - WolfON Опиши проблему подробнее... Что хочет?.. Что пишет?.. Какой пример не работает... - KeshДельфя у меня 7.Пишет недостаточно параметров в :XLApp.WorkBooks.Open(NomFich,EmptyParam,EmptyParam,EmptyParam,EmptyParam, EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam, EmptyParam,EmptyParam,0); и что-то с квадратной скобкой в:RangeMatrix := XLApp.Range['A1',XLApp.Cells.Item[X,Y]].Value; исходник такой:Код procedure TForm1.BitBtnFromExcelOnClick(Sender: TObject); var WorkBk : _WorkBook; WorkSheet : _WorkSheet; K, R, X, Y : Integer; IIndex : OleVariant; RangeMatrix : Variant; NomFich : WideString; begin NomFich := ‘C:\MyDirectory\NameOfFile.xls’; IIndex := 1; XLApp.Connect; // Открываем файл Excel XLApp.WorkBooks.Open(NomFich,EmptyParam,EmptyParam,EmptyParam,EmptyParam, EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam, EmptyParam,EmptyParam,0); WorkBk := XLApp.WorkBooks.Item[IIndex]; WorkSheet := WorkBk.WorkSheets.Get_Item(1) as _WorkSheet; // Чтобы знать размер листа (WorkSheet), т.е. количество строк и количество // столбцов, мы активируем его последнюю непустую ячейкуWorkSheet.Cells.SpecialCells(xlCellTypeLastCell,EmptyParam).Activate; // Получаем значение последней строкиX := XLApp.ActiveCell.Row; // Получаем значение последней колонкиY := XLApp.ActiveCell.Column; // Определяем количество колонок в TStringGrid GenericStringGrid.ColCount := Y; // Сопоставляем матрицу WorkSheet с нашей Delphi матрицей RangeMatrix := XLApp.Range['A1',XLApp.Cells.Item[X,Y]].Value; // Выходим из Excel и отсоединяемся от сервера XLApp.Quit; XLApp.Disconnect; // Определяем цикл для заполнения TStringGrid K := 1; repeat for R := 1 to Y do GenericStringGrid.Cells[(R - 1),(K - 1)] := RangeMatrix[K,R]; Inc(K,1); GenericStringGrid.RowCount := K + 1; until K > X; // Unassign the Delphi Variant Matrix RangeMatrix := Unassigned; end; highlightSyntax('delphiNDllZG','delphi'); - Сюда добавляем 2 EmptyParam перед последним нулем...Цитата (WolfON @ 12.1.2005, 23:51)RangeMatrix := XLApp.Range['A1',XLApp.Cells.Item[X,Y]].Value; Тут берем не Value, а Value2 - Только вот я не пойму, кто сказал, что тут не используется OLE? Этот подход называется ранним связыванием, а использоывание через IDispatch + CreateOleObject это позднее связывание, но в любом из этих случаев используется OLE. - <Spawn> я тоже об этом задумывался... - Kesh<Spawn>вот-вот, а есть какие-нибудь способы, чтобы на всех компах работали, без оле - WolfONРазобраться в форматах xls-файлов для всех версий офиса и работать напрямую с файлом. Иначе никак - WolfONА как это на все компах без Ole... Вернее не как это, а зачем это... К своему великому стыду еще ни одной машины не видел с установленной Windows, но без MS Office... - Ну почему так категорично. Вполне можно пользовать ADO, правда тогда доступ к XLS будет не полный, а с некоторыми ограничениями. Но для некоторых программ этого вполне достаточно.Цитата (Kesh @ 15.1.2005, 19:13)К своему великому стыду еще ни одной машины не видел с установленной Windows, но без MS Office... Это у тебя опыта мало. Можешь поверить, таких машин не мало. - А пример? - AlexДык, чтобы через АДО пахать, надо эксел в одбц прописать, а это гемморно....А через оле тормознуто немного.... - WolfONВсе зависит от подхода к программированию... Был пример, когда я ускорил создание отчета раз в 10-ть, просто перейдя от заполнения ячеек к вставке из буфера... - У меня где-то валялся рабочий пример. Но... Вытаскивать данные не получалось, простто их не было видно. А вот создавать таким образом таблицы, столбцы с данными и т.д. получалось и в этом случаем все было видно. Даже создавал ручками такой же файл, как и програмно создается и все равно не видно данные. Добавлено @ 16:28 http://forum.vingrad.ru/index.php?showtopic=34912&st=40Ищи примеры работы с Excel. |