- TDBGrid
- TADOQuery
- TADOConnection
- TDataSource
Как связывать эти компоненты я расскажу быстро, так как это уже было сказано мною.
- TADOQuery c TADOConnection в свойстве — Connection
- TDataSource с TADOQuery в свойстве DataSet
- TDBGrid c TDataSource в свойстве DataSource
В TADOConnection установим свойство LongPromt в False. Вроде бы небольшую настройку сделали. Теперь приходим к непосредственному подключени. В свойстве TADOConnection - ConnectionString нажимаем на кнопку «…«, далее у нас появляется окно вида
Нажимаем на кнопку «Build…» и появляется следующее окно
В данном окне выбираем следующего провайдера: Microsoft OLE DB Provider for ODBC Drivers и нажимаем кнопку «Далее>>» и видем следующее окно
В этом окне сразу ставим указатель на «Использовать строку подключения» и нажимаем на кнопку «Сборка«, после чего появляется окно
В этом окне переходим на вкладку Источник данных компьютера, в появившемся списке выбираем — Файлы Excel, а точнее жмем левой кнопкой мыши по этой сроке двойным щелчком и в появившемся окне указываем путь к нашей Excel-книги, которую мы создавали. После этого нажимаем на пноку «Ok«. Все подключение у нас готово. Хочу добавить еще, если у Вас файл Excel, где ваша таблица находится лежит в одном каталоге с программой, то в свойстве компонента TADOConnection - ConnectionString будет прописан путь к Вашему Excel-файлу, стерите путь, а оставьте просто имя Вашего Excel файла с расширением, а в свойстве DefaultDataBase этого же компонента, напишите имя вашего Excel-файла с расширением. Тогда при запуске вашего приложения, не будет возникать ошибок с неправильно заданым путем к вашей БД. Далее в TDBGrid нажмем по нему двойным щелчком и в появившемся окне создаим 2 строки, это наши столбцы будут. А создаются они путем нжатия в данном окне на кнопку «Add New (Ins)«. Далее выделив кажду строку в свойстве FieldName для первой строки напишем — ФИО, так как в Excel-файле я именно так написал в первую строку название столбца (для ячейки A1 я так написал), а выделив вторую строку, что создали в TDBGrid, в свойстве FieldName напишем — Оценка, так как именно я такое название столбца написал (в ячейке А2 я так написал). Все теперь нам можно активировать наши данные. Для этого на событие главной формы — OnCreate напишем следующее
procedure TForm1.FormCreate(Sender: TObject);
begin
try
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('SELECT * FROM [Лист1$]');
ADOQuery1.Active:=True;
except
on e:Exception do
end;
end;
Как видите все тот же запрос, только вместо имя таблица, как у нас было в MS Access мы указываем имя листа нашего в Excel, заключив его в квадратные скобки и поставив в конце знак $. Как видите ничего сложного нету. В следующей статье про БД MS Excel я расскажу как вставлять данные, редактировать и так далее.
Хоче заметить, что если Вы является настоящим фанатом футбола, а тем более английского чемпионата, который на данный момент является одним из сильнейшим, то Вам наверняка будет очень интересно почитать про футбольный клуб Ливерпуль, который очень богат своей историей, а самое главное узнать что-то новое для себя о частичке английского футбола. |
Исходники статьи можете скачать тут
Автор статьи - Andrey53
Спасибо за статьи, понравилось
Незачто, всегда рад помочь
Спасибо, статьи очень полезные и понятные.
Но у меня на последнем шаге — список пуст
Если создать свою, то там дает на выбор Excel до 2000.
При том на рабочем компе, где так же не устанвовлен офис — данный спискок заполнен. Подскажите с чем это может быть связано?
Вы не можете загрузить Вашу книгу в источник данных?
На рабочем компе могу. Но принес домой, там так же W7 без офиса. пытаюсь запустить — выдает ошибку: «источик данных не найден и не указан драйвер, используемый по умолчанию»
Иду в свойства элемента ADOConnection1 что бы опять задать ConnectionString: драйвер, выбрать файл.В окне выбор источника данных — у меня там пусто (последняя картинка в статье).
Пытаюсь создать сам. Жму Создать. выбираю Driver to MS Excel. В следующем окне где задается имя, можно выбрать версию. доступны версии 3,4,5,6,95,97,2000. Разумеется ни с одинм мой файл xlsx не открывается.
В какую сторону копать?
скомпилировал не меняя строку подключения, перекинул на рабочий комп уже бинарник — запустил. все ок.
То есть это на домашней машину не установлено все таки что то.. но что? если офиса нет ни на одной машине.
Возможно нашел решение. скажите, это нужный мне ODBC драйвер?
microsoft.com
Да, попробуйте установить драйверы, скорее всего у Вас не установлены на компьюетре