Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/55: Рейтинг темы: голосов - 55, средняя оценка - 4.56
 Аватар для Kkarn
902 / 292 / 50
Регистрация: 02.12.2014
Сообщений: 1,229

Связь с "умными таблицами" Excel

23.03.2015, 10:06. Показов 11859. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день.

Возникла необходимость как-то подключить к базе Access несколько "умных таблиц" Excel.
Чтобы избежать путаницы терминологии, на всякий случай поясню, что под "умными таблицами" понимается вот это:
Ссылка на справку Майкрософта

Я когда-то уже работал с ними через VBA в самом Экселе, тогда обращался через коллекцию ListObjects объекта Worksheet.
А вот как бы так исхитриться, чтобы подключить эти "умные таблицы" к базе в виде присоединенных таблиц Access?...

Подключить просто как лист Экселя - не совсем то, т.к. хотелось бы получить возможность пользоваться такими свойствами умных таблиц, как имена полей, например (они там есть).

То есть подключаться надо как бы не просто к листу экселя, а именно к "умной таблице" на этом листе.

Подскажите, есть ли вообще такая возможность.
Заранее большое спасибо за ответ.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
23.03.2015, 10:06
Ответы с готовыми решениями:

Связь БД с таблицами Excel
Такая проблема есть БД и есть таблицы ексель как их связать?

Перенос данных между двумя "умными" таблицами
Добрый вечер! Подскажите плиз, очень нужна помощь :cry: как нужно скорректировать код, чтобы умная талица с одного листа переносилась в...

Связь м/д таблицами
Добрый вечер ребята!Выручайте... Есть три таблицы: 1) Виды картриджей --Лазерные --Струйные ...

13
Эксперт MS Access
26827 / 14507 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
23.03.2015, 10:22
А запросами не пробовали? Если на листе только "умная таблица", то такой запрос даст ее данные
SQL
1
SELECT * FROM [Лист1$] IN 'c:\путьайл.xlsx'[Excel 12.0 XML;IMEX=1;HDR=YES;]
Если же на листе не только "умная таблица", то придется подключаться к файлу с помощь средств автоматизации офиса и пользоваться екселевскими возможностями.
0
Модератор
Эксперт MS Access
 Аватар для shanemac51
12231 / 5078 / 814
Регистрация: 07.08.2010
Сообщений: 14,941
Записей в блоге: 4
23.03.2015, 10:23
ссылку не смогла открыть --дает цикличность и не открывается
0
 Аватар для Kkarn
902 / 292 / 50
Регистрация: 02.12.2014
Сообщений: 1,229
23.03.2015, 10:39  [ТС]
Извиняюсь за ссылку, что-то не так ввел. Например, вот еще ссылка:
http://perfect-excel.ru/publ/e... /10-1-0-33

Добавлено через 9 минут
mobile, Спасибо, с этим способом вы меня познакомили ранее) Но он, насколько я понимаю, даст подключение просто к листу экселя, и имена полей там будут стандартного вида, а не такие, как они поименованы в умной таблице... А если придется заморачиваться с автоматизацией, то скорее всего проще будет просто кодить все в VBA сразу в Экселе... Просто у меня здесь возникла задача увязать между собой несколько умных таблиц и наладить между ними обновление данных по определенным алгоритмам, вот и подумал, что в плане связей и обновления данных было бы удобнее воспользоваться преимуществами Access... Но раз другого способа подключиться именно к "умной таблице" нет - что ж, будем возиться напрямую в Экселе. Спасибо еще раз за ответ.
0
Модератор
Эксперт MS Access
 Аватар для shanemac51
12231 / 5078 / 814
Регистрация: 07.08.2010
Сообщений: 14,941
Записей в блоге: 4
23.03.2015, 11:14
конечно
обычная таблица екселя --это чулан, набитый ячейками с всевозможными типами данный
умная ----попытка разложить информацию по полочкам , полочки же можно уже приукрасить(постелить пленку, повесить занавеску, покрасить в разный цвет)

разумное действо

но я пользуюсь екселем крайне редко(в основном в него вывожу длинные отчеты или если это определено заданием)
более мелкие отчеты(счета фактуры и ....) вывожу в формате НТМ для просмотра в браузере или печати вордом

Добавлено через 22 минуты
обычная, не сильно закрученная задача имеет
--2-3 основных таблицы(например: кадры-1 таблица, счета-фактуры -2 таблицы
--5-90 справочников(по личному опыту, бывает и больше) для подстановки наименований

и с этой информации надо выдать всевозможные выборки/просмотры/отчеты
--численность по профессиям (по заводу)
--численность по профессиям (по цехам)
--возрастной состав......цех ....зав
--списки пенсионеров ......
................и еще 999.....вариантов

есть более/менее стандартные --их можно конструктором создать
но чаще --это всевозможное сочетание полей и сортировок, которое за день могут меняться несколько раз

по-этому для своих пользователей в access сделала форму, где пользователь выбирает
--нужные поля
--нужные периоды времени
--нужную сортировку
--и получает НТМ отчет, который может доработать(РАНЬШЕ ОН ВЫБИРАЛ И ЗАНОВО ВВОДИЛ ИНФОРМАЦИЮ CО СТАНДАРТНОГО ОТЧЕТА)
--а ворд автоподгонит ширину столбцов и высоту строк, при нужде можно изменить шрифт или ориентацию страниц(в екселе сей этап доводил меня до белого каления)
0
Эксперт MS Access
26827 / 14507 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
23.03.2015, 11:22
Лучший ответ Сообщение было отмечено Kkarn как решение

Решение

Цитата Сообщение от Kkarn Посмотреть сообщение
имена полей там будут стандартного вида, а не такие, как они поименованы в умной таблице...
Не так. Смотрите пример. Расположите БД и ексель-файл в одной папке (для простоты), откройте БД и нажмите кнопку. Получите данные из умной таблицы, поименованные как в ум-таблице.
Вложения
Тип файла: rar umtabl.rar (18.8 Кб, 58 просмотров)
1
 Аватар для Kkarn
902 / 292 / 50
Регистрация: 02.12.2014
Сообщений: 1,229
23.03.2015, 11:46  [ТС]
mobile, Супер! Очень и очень хороший пример. Если я правильно понимаю, в запросе задаем только лист расположения умной таблицы, а дальше оно само подхватывает, где именно на листе расположены данные и как поименованы поля? Замечательно. Только вот интересно, а как оно поведет себя в ситуации, когда на одном листе будет несколько умных таблиц?.. Сейчас проверю. Еще раз огромное спасибо, уже гораздо больше проясняется ситуация!)
П.С. Проверил, добавил на этот же лист в вашем примере вторую умную таблицу. В принципе, результат довольно ожидаемый - оно присоединило ВЕСЬ ДИАПАЗОН, начиная с первой таблицы и до второй включительно, разделив их пустыми полями с именами типа "F5". Хм... Ну, я думаю, что в идеале в моей ситуации не получится так, что на одном листе будут несколько умных таблиц, так что пока можно считать, что вопрос закрыт)
Остается как-то через автоматизацию подключиться к Экселю, получить список умных таблиц в книге (с листами расположения) - и можно строить запросы.
0
Модератор
Эксперт MS Access
 Аватар для shanemac51
12231 / 5078 / 814
Регистрация: 07.08.2010
Сообщений: 14,941
Записей в блоге: 4
23.03.2015, 11:47
но только , если в листе не будет мусора в виде случайных данных(вне таблицы), например в А1
0
 Аватар для Kkarn
902 / 292 / 50
Регистрация: 02.12.2014
Сообщений: 1,229
23.03.2015, 11:59  [ТС]
shanemac51, Да я сам тоже практически всегда пользуюсь Accessом там, где им можно заменить Эксель, а в Эксель тоже только вывожу отчеты)

Но тут от заказчика была конкретная постановка задачи: обновление одних справочников, сделанных в умных таблицах Экселя, на основе других таких же справочников из умных таблиц.
Вот я и подумал, что мне привычнее, быстрее и проще будет организовать алгоритм обновления этих справочников, если я буду работать с ними как с обычными таблицами Access - с ними я запросто построю любые запросы и т.д., а вот кодить это все в чистом VBA в Экселе будет гораздо более для меня затруднительно.
0
Модератор
Эксперт MS Access
 Аватар для shanemac51
12231 / 5078 / 814
Регистрация: 07.08.2010
Сообщений: 14,941
Записей в блоге: 4
23.03.2015, 12:21
дело в том, что я не доверяю импорту из ексель в аксесс --ввиду несанкционированного изменения типа данныз(по первым 20 строчкам

поэтому, обычно
--импортирую все в текстовом формате во временную таблицу
--уже в аксесс получаю для тех полей, которым это надо числовой формат ли дату
--после дописываю в основную

у вас умная таблица, да еще и наименования --может и правильно сработает
0
 Аватар для Kkarn
902 / 292 / 50
Регистрация: 02.12.2014
Сообщений: 1,229
23.03.2015, 12:53  [ТС]
у вас умная таблица, да еще и наименования --может и правильно сработает
Тоже на это надеюсь)

Добавлено через 7 минут
shanemac51,
но только , если в листе не будет мусора в виде случайных данных(вне таблицы), например в А1
Кстати да, проверил и это. даже если на листе есть просто любая заполненная ячейка помимо умной таблицы - затея с запросом проваливается, на выходе получаем снова весь диапазон, включающий и "мусор", и умную таблицу"...

Эххх...
Видать, все-таки светит мне как минимум автоматизация, а как максимум - кодить всю эту красоту напрямую в Экселе....

Хотя я вот здесь: https://msdn.microsoft.com/en-... 39458.aspx нашел интересное свойство объекта умной таблицы - QueryTable,
которое "Returns the QueryTable object that provides a link for the ListObject object to the list server".

Че-то мне подсказывает, что оно могло бы как-то пригодиться, сумей я его как-то пристроить в выражение линкования присоединенной таблицы...

Ну, насколько я понимаю инглиш)...
Правда, это свойство - только для чтения.
Это смущает.

Эхх, будем копать дальше.
0
Модератор
Эксперт MS Access
 Аватар для shanemac51
12231 / 5078 / 814
Регистрация: 07.08.2010
Сообщений: 14,941
Записей в блоге: 4
23.03.2015, 15:02
одну из задач я делала текстовыми файлами(пояснения адаптирую под вашу задачу)

в екселе прошла по всем табличкам(у меня листам) и
--вывела все в 1 текстовик(у меня цеха набили как попало, хотя всем была дана пустографка) и не экспортом ,а циклом по строкам
--подогнала структуру
--причем добавила столбик первоисточник и нумерацию в нем(для поиска в сложных случаях)


затем этот текстовик открыла в аксесс(причем всем полям дала текстовый формат) , проверила на грубятину
только после проверки записала в основную таблицу
0
Эксперт MS Access
26827 / 14507 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
23.03.2015, 18:11
Лучший ответ Сообщение было отмечено Kkarn как решение

Решение

Цитата Сообщение от Kkarn Посмотреть сообщение
сли на листе есть просто любая заполненная ячейка помимо умной таблицы - затея с запросом проваливается, на выходе получаем снова весь диапазон, включающий и "мусор", и умную таблицу"...
Ну, не так все страшно Можно и с мусором справится.

Смотрите пример. В ексел-файле 5 умных таблиц на 3 листах. Выбирайте любую
Вложения
Тип файла: rar umtabl.rar (30.7 Кб, 78 просмотров)
3
 Аватар для Kkarn
902 / 292 / 50
Регистрация: 02.12.2014
Сообщений: 1,229
24.03.2015, 14:22  [ТС]
mobile, А вот это вообще шикарный пример, спасибо огромное, как раз очень пригодится!)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.03.2015, 14:22
Помогаю со студенческими работами здесь

Связь с таблицами
Здравствуйте. Перерыл весь инет, нигде не могу найти решение. Есть объект (источник) который создает файл базы данных каждый месяц. ...

Связь между таблицами
Привет всем. мне необходимо создать бд, которая дает возможность автоматизировать контроль за поставками продукции, при этом нужна...

Связь между таблицами
Здравствуйте ! Столкнулся с проблемой. Есть 2 таблицы и соответственно 2 формы (Авто, владелец). Необходимо, если в форме Владелец, в...

Связь между таблицами
имеются 3 таблицы. 1 таблица "ttn" с полем "data "и главным полем kod_ttn. 2 таблица "postuplenie" - пустая 3- в ней содержится...

Связь между таблицами
Столкнулся с проблемой,немогу написать запрос,где в одном запросе объеденялись связи между 4 и более таблицами. Призявать по ключевым...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: показать затраченные материалы за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В качестве. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru