Страницы: 1
RSS
Нужна помощь по связи excel+access
 
Здравствуйте уважаемые форумчане!!!  
Имею такой вопрос.  
У меня есть база данных в access с которой работают пользователи,но в access нет многих полезных вещей которые есть в excel, есть задумка экспортировать нужные мне данные из access в excel, там производить какие-либо функции над данными и импортировать назад в базу данных access.  
Как экспортировать в excel я умею, а вот из excel назад в базу не получается, при чем пользователи могут вносить новые данные  в ячейки.  
Как мне реализовать импорт измененных данных назад в access?  
Подскажите кто знает, очень долго мучаюсь с этой задачей.  
Спасибо заранее..
 
Внешние данные --> Excel
 
Внешние данные -> Связь с таблицами-> Указать, с каким типом таблиц связать. Всё. Такие простые вещи в справке F1 просто найти.
"..Сладку ягоду рвали вместе, горьку ягоду я одна."
 
Спасибо,но Вы не до конца видимо прочитали что я написал.  
Я знаю что подобным способом какой советуете вы можно экспортировать данные в excel, мне нужно наоборот из excel в access.  
Алгоритм такой...ЭКСПОРТ ДАННЫХ В EXCEL-->ТАМ ПОЛЬЗОВАТЕЛЬ РЕДАКТИРУЕТ ЧТО ТО или ДОБАВЛЯЕТ ДАННЫЕ---->И ЗАТЕМ ТРЕБУЕТСЯ ВОЗВРАТИТЬ ЭТИ ДАННЫЕ НАЗАД В ACCESS с какими то новыми записями..  
Вот что нужно..
 
Вы просто возьмите и попробуйте. <<Связь с таблицами>> - это связь. Напишите что-либо в таблице Excel, затем откройте Access и посмотрите, появилась эта запись?
"..Сладку ягоду рвали вместе, горьку ягоду я одна."
 
Использовать excel в качестве клиента для access, для таких целей, как Вы указали , это полный бред.  
Если Вам так хочется отройте в access таблицу и в ней правьте нужные данные :).  
А еще лучше обатитесь к кому нибудь, для разработки нужного приложения.
 
Это сейчас кто с кем разговаривает?
"..Сладку ягоду рвали вместе, горьку ягоду я одна."
 
{quote}{login=Владимир}{date=20.03.2012 05:50}{thema=}{post}Это сейчас кто с кем разговаривает?{/post}{/quote}  
C ildar_ildar
 
{quote}{login=}{date=20.03.2012 05:39}{thema=}{post}Использовать excel в качестве клиента для access, для таких целей, как Вы указали , это полный бред.{/post}{/quote}  
Уважаемый!Это не бред а необходимость, в excel можно выделять диапазон ячеек мышью и суммировать все это к примеру, что и требуют пользователи а в access сия вещь отсутствует, как и многие другие функции, по этому excel как клиент очень подходит, или вы предлагаете создавать заново то что уже создано в excel?
 
{quote}{login=Владимир}{date=20.03.2012 05:37}{thema=}{post}Вы просто возьмите и попробуйте. <<Связь с таблицами>> - это связь. Напишите что-либо в таблице Excel, затем откройте Access и посмотрите, появилась эта запись?{/post}{/quote}  
Владимир спасибо, да действительно связь с таблицей excel есть используя то что вы посоветовали, но какой тогда резон подключаться из access когда можно просто открыть тот же excel документ сам по себе и править его.  
Суть такова что пользователи, имеют один excel файл, в который в течении 3х лет заносили данные и он разросся очень сильно в объёмах, теперь они попросили создать базу в какой либо СУБД,чтобы заносить данные уже туда а не в excel.  
Я базу в access,но их не устроило то что в access невозможно выделять область ячеек мышью и выводить итоговую сумму, и.т.д  
Пришла идея отправлять данные в ексел там редактрповать или вносить какие то изменения и возвращать назад.Вы мне посоветовали соединиться с эеселем, но тогда данные опять таки будут храниться в экселе, а пользователи будут иметь только доступ к файлу эксел, а мне нужно чтобы данные из таблиц эксел переносились в базу акцесс
 
тем по данному вопросу полно....  
 http://www.planetaexcel.ru/forum.php?thread_id=24405
 
В Access можно создать запрос, который будет выводить данные в Excel уже в укороченном виде. К примеру, данные начиная с 2005 г. или ещё что-то, что сделает рабочий файл меньше.
"..Сладку ягоду рвали вместе, горьку ягоду я одна."
 
Нет, вы не совсем меня поняли...  
Хранить данные в excel вообще не нужно, нужно хранить в базе access.  
Смотрите что я хочу...  
Есть предположим кнопочка в excel которая выполняет вот такой макрос  
 
 
Sub GetMyData()  
       Const strDb As String = "C:\Documents and Settings\Admin\Рабочий стол\ТАНЕКО.mdb"  
       Const strQry As String = "SELECT * from  Главная"  
         
       Dim rs As ADODB.Recordset  
       Dim cn As ADODB.Connection  
       
       Set cn = New ADODB.Connection  
       cn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & strDb & ";"  
       Set rs = New ADODB.Recordset  
       
       With rs  
           Set .ActiveConnection = cn  
           .Open strQry  
       End With  
       Worksheets("Лист1").Range("A1").CopyFromRecordset rs  
       
       rs.Close: cn.Close  
       Set rs = Nothing: Set cn = Nothing  
   End Sub  
 
Он выводит из базы access все данные в таблички excel, там пользователи что то изменяют или добавляют, и ЗАТЕМ МНЕ НУЖНО ЭТО ВСЕ ВЕРНУТЬ В ACCESS, как это сделать???
 
{quote}{login=ildar_ildar}{date=20.03.2012 07:25}{thema=}{post} как это сделать???{/post}{/quote}  
 
ADO, DAO , ручками  
Вы посмотрели ссылку???  
-----
 
Владимир  
Что-то в 2010 связь односторонняя получилась. Владка "Данные", кнопка "Из Access" подключил таблицу. При открытии базы в Access получил сообщение, что база открыта только на чтение. Данные изменяются с помощью связанных таблиц. Однако, добавление записей, изменение записей в Excel никак не отражаются в базе Access. Если нажать "Обновить", то таблица вновь считывается с Access. Все добавления и изменения стираются. Вопрос сугубо риторический, но всё же.  
 
В 2010 возможно только чтение из базы?
 
Проверьте параметры в Access:  
У меня 2003, но думаю всё одно. Поковыряйтесь в Сервис --> Защита --> Разрешения  или Сервис --> Параметры, чтоб был Общий доступ и разрешения на изменения, обновления и пр.
"..Сладку ягоду рвали вместе, горьку ягоду я одна."
Страницы: 1
Читают тему
Loading...