Одновременная работа в Access и в Excel

CollarWhiteBlue
Дата: 13.09.2005 23:17:27
Коллеги!

Есть проблема. Нужно одновременно работать с данными и в Access, и в Excel. Сделал (1-я мысль, конечно) в Access связанную таблицу на Excel, но:

1. из акцеса нельзя удалять строки.
2. очень часто происходит взаимная блокировка доступа, кот. лечится только многократным откр/закр ёкселя.

Вопрос: что делать?
SAS!
Дата: 14.09.2005 05:43:48
Ексель как ОЛЕ-обект?
Orlic
Дата: 14.09.2005 07:58:59
Можно работать в EXCEL, WORD и прочим офисным софтом через VBA, используя стандартные компоненты Microsoft Excel 10.0 Object Library и соответственно Microsoft Word 10.0 Object Library...
По WORDу смотри тут, например.
По екселю скоро выложу мой пример (на эталонность метода не претенжую :-))
CollarWhiteBlue
Дата: 14.09.2005 09:59:45
SAS!
Ексель как ОЛЕ-обект?

Не-а.
Ёксель нужен для того, чтобы использовать возможности ёкселя для работы с табличными данными (треб. юзера), в частности, автофильтр и пр.
Т.е. работа в нем как с обычным даташитом. Это как раз и вешает акцес, если в нем одновременно открыта связанная таблица.
Toking
Дата: 14.09.2005 10:08:14
А можно подробнее описать задачу?

Если пользователи в Excel только просматривают записи (не изменяют), то можно хранить данные в Access, и показывать выборки как внешние данные из Access.

В принципе, можно и изменять данные, хранящиеся в Access, через DAO или ADO в VBA Excel.
CollarWhiteBlue
Дата: 14.09.2005 10:17:30
Toking
А можно подробнее описать задачу?


Канешна.
У целом задача выглядит так.
В Акцесе формируется некая выборка, перебрасывается в Ексель (для удобства изменения ее юзером), и затем обратно надо ее перепузырить в Акцес. Связанная таблица (на соотв. ексельном файле) - для обратной переброски данных и для одновременного редактирования полей, которые неудобно редактировать в екселе (напр., столбцы типа "флажков").
SAS!
Дата: 14.09.2005 11:58:00
автор
некая выборка, перебрасывается в Ексель (для удобства изменения ее юзером), и затем обратно надо ее перепузырить

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

ИМХО
help me
Дата: 14.09.2005 12:38:38
Насчет одновременной не знаю, но если я правильно понял надо сделать 2 программы VBA
1 выгрузка в excel
2 загрузка из excel (при необходимости проверять изменение значений...)
причем Excel файл должен быть определенного формата чтобы знать что в каком столбце находится ну и т.д.
fssfsf
Дата: 14.09.2005 13:08:46
Это не вопрос техники, а вопрос методики и логики. Нужно избегать изменения одних и тех же (по сути) данных в двух разных источниках. Изменение и в Аксесе и в Экселе - это фактически репликация со всеми вытекающими. Лучше сделать такую систему, чтобы заносить, редактировать, хранить данные в Аксессе, а Эксель использовать в качестве средства для отчетов или обработки данных, результаты которой не нужны в Аксесе. Либо отказаться от Аксеса и придумать способ, как ставить галочки в Экселе. Может, так будет на самом деле проще.
CollarWhiteBlue
Дата: 21.09.2005 14:50:07
В общем, пока решилось так.

Создал доп. "буферную" таблицу в акцесе и через ВБА качаю данные туда-сюда в ёксель через связанную таблицу и обратно. Не шибко умно и красиво, но - пока работает.