Один файл Excel, несколько пользователей для редактирования, обновления в реальном времени

Один файл Excel, несколько пользователей для редактирования, обновления в реальном времени

У меня есть автоматизированная программа, которая работает с книгами Excel. Когда кто-то открывает книгу, которая в данный момент обрабатывается, он получает сообщение «только для чтения». Если несколько пользователей/программ одновременно пытаются открыть файл, все они успешно его открывают. Тем не менее, будут сохранены только последние сохраненные изменения, что портит весь процесс.

Итак, вопрос в том, есть ли способ настроить книгу Excel так, чтобы ее можно было одновременно редактировать, и все изменения немедленно отображались бы для всех остальных пользователей?

Офис 2010-2013

решение1

Ну, я нашел несколько ответов, касающихся вашего вопроса. Я цитирую один из ответов, но есть много страниц через поиск Google, которые отвечают на ваш вопрос.

Цитата изExcelForum.com

на вкладке редактирования книги «Поделиться» установите флажок «Разрешить внесение изменений более чем одним пользователем». Предупреждение: это может не сработать так, как вам нужно!

Такой обмен информацией приводит к разного рода проблемам

если несколько пользователей изменяют одну и ту же ячейку при сохранении, им будет предложено «чьи изменения сохранить», теперь если они выберут свои, другие будут удалены

если они выберут другое, им придется повторно вводить дату в другом месте; кроме того, совместное использование может привести к раздуванию рабочей книги: небольшой файл размером 1 МБ может легко разрастись до 15 МБ и более.

Данные в рабочей книге часто теряются по непонятным причинам, а форматирование меняется, казалось бы, по прихоти.

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

поэтому не делитесь информацией, если вы не можете ее строго контролировать.

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

сохраняйте копию хотя бы раз в день.

это действительно работает лучше всего, если только один пользователь может редактировать поле в любой момент времени

скажем, список вакансий, где пользователь 1 имеет дело с вакансией 1, поэтому никто другой, скорее всего, не обновит это поле, поскольку он будет, скажем, заниматься вакансией 3.

если вы можете этого избежать, сделайте это

вы были предупреждены

Другие источники: 1.Office.microsoft.com 2.Office.microsoft.com

решение2

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

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

решение3

Ответ, который вы, возможно, не хотите слышать и который звучит в том же роге, что и mk117, таков: Excel на самом деле не совсем подходящий инструмент для этой задачи. Да, многие люди до вас пробовали подобные вещи, и все они сталкивались с теми же проблемами. Excel — это инструмент для работы с электронными таблицами, а не IDE для приложений ввода данных. Да, с его помощью можно многого добиться, но в итоге вы всегда сталкиваетесь с проблемами одновременного доступа к файлу и/или данным. Если у вас есть такая возможность, создайте настоящее приложение с базой данных в фоновом режиме.

решение4

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

Связанный контент