Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.08.2013, 12:25   #1
Алена_=)))
Пользователь
 
Аватар для Алена_=)))
 
Регистрация: 13.05.2010
Сообщений: 42
По умолчанию Открыть excel с множеством листов в dbgrid

здравствуйте, есть excel файлы всегда одинаковой структуры, но с разным количеством листов, требуется вывод в dbgrid только некоторых столбцов но всех листов этого файла, подскажите как используя ado открыть excelвский файл со всеми его листами но не всеми столбцами, а только теми кот требуются?
сейчас делаю так (для открытия одного листа и всех столбцов, с запросами не в ладах):
Код:
procedure TForm6.Button3Click(Sender: TObject);
begin
  if not OpenDialog1.Execute then exit;

  ADOConnection1.ConnectionString := 'Provider=Microsoft.ACE.OLEDB.12.0;Data Source=' + OpenDialog1.FileName + ';User ID=Admin;Password=;Extended Properties=Excel 8.0';

  ADOConnection1.Open;

  ADOQuery1.SQL.Clear;
  ADOQuery1.SQL.Add('select * from [Б.К.136$]'); 
  ADOQuery1.Open;
 

procedure TForm6.FormActivate(Sender: TObject);
begin
  OpenDialog1.InitialDir := ExtractFilePath(Application.ExeName);
end;
для вывода определенных столбцов делала так но конечно же не сработало:
Код:
ADOQuery1.SQL.Add('select [улица], [номер дома], [Год постройки],[Общая площадь дома] from [Б.К.136$]');
на форме adoconnection, datasource, adoquery, dbgrid и кнопочка соответственно)
а хотя вот весь проект=)
Вложения
Тип файла: rar прога.rar (217.0 Кб, 10 просмотров)
Алена_=))) вне форума Ответить с цитированием
Старый 26.08.2013, 14:18   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
ADOQuery1.SQL.Add('select * from [Б.К.136$],[Б.К.289$],[Б.К.+100500$]');
Т.е. перечислить их через запятую.
Хотя возможно этот вариант не понравится - это умножение.
Тут придется что-то типа:
Код:
select [улица], [номер дома], [Год постройки],[Общая площадь дома] from [Б.К.136$] union all
select [улица], [номер дома], [Год постройки],[Общая площадь дома] from [Б.К.289$] union all
select [улица], [номер дома], [Год постройки],[Общая площадь дома] from [Б.К.+100500$]
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 27.08.2013, 12:35   #3
Алена_=)))
Пользователь
 
Аватар для Алена_=)))
 
Регистрация: 13.05.2010
Сообщений: 42
По умолчанию

ошибка: параметр [улица] не имеет значения по умолчанию..и так с любым параметром, что может быть?

Последний раз редактировалось Алена_=))); 27.08.2013 в 13:39.
Алена_=))) вне форума Ответить с цитированием
Старый 28.08.2013, 13:31   #4
Алена_=)))
Пользователь
 
Аватар для Алена_=)))
 
Регистрация: 13.05.2010
Сообщений: 42
По умолчанию

ой, спасибо, разобралась)
Алена_=))) вне форума Ответить с цитированием
Старый 28.08.2013, 14:19   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
разобралась)
Поделись решением )
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
выпадающий список листов книги Excel sharik.kiev.ua Microsoft Office Excel 1 26.05.2013 22:48
Макрос для скрытия листов в Excel Степан777 Microsoft Office Excel 2 02.03.2012 22:36
удаления пустых листов в excel 36,6 Microsoft Office Excel 1 31.01.2012 14:38
печать листов excel ара Помощь студентам 10 07.04.2010 10:12