Решение проблем с электронными таблицами с помощью базы данных
Если вам нужно составить список чего-либо, заманчиво увидеть Excel в качестве хранилища по умолчанию: в конце концов, это всего лишь небольшой список элементов для вас или нескольких близких коллег.
Возможно, вам нужно что-то более сложное – формулы для каких-то расчетов или макропрограммирование для автоматизации сбора и обработки данных. Нет проблем: просто введите «=”, чтобы начать писать формулу, и Excel станет вашим помощником.
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)
К сожалению, легкость, с которой вы можете начать работу в Excel или конкурирующей программе для работы с электронными таблицами, также является одной из проблем. То, что начинается с небольшого проекта в Excel, растет и растет, пока вы не останетесь с гигантом – и в этот момент вы также можете столкнуться с проблемами скорости и стабильности или даже с проблемой разработки, которую вы просто не можете решить.
Здесь мы рассмотрим проблемы, с которыми вы часто можете столкнуться при работе с электронными таблицами, как их можно решить в Excel и когда вам лучше сделать решительный шаг и вместо этого переключиться на базу данных.
1. Многопользовательское редактирование
Когда системы Excel растут естественным образом, вы быстро сталкиваетесь с проблемой, заключающейся в том, что только один пользователь может одновременно открыть книгу. Второму человеку, который попытается открыть файл, сообщат, что он уже открыт и что он может отменить, подождать или просмотреть версию, доступную только для чтения. Обещание Excel сообщить вам, когда другой человек закроет книгу, довольно пусто, поскольку он не проверяет статус очень часто и, возможно, никогда не просветит вас. Даже если это так, кто-то другой может вмешаться и открыть файл раньше вас.
Есть три способа обойти это: вы можете использовать Excel Online, урезанную веб-версию Excel; вы можете включить функцию «Общие книги»; или вы можете разделить данные на несколько книг, чтобы разные люди могли использовать каждую книгу, и вы не наступаете друг другу на пятки.
2. Общие книги
Excel Online по умолчанию допускает использование нескольких редакторов, но в нем отсутствует так много функций, что на самом деле он не подходит ни для чего, кроме самых простых задач. Хотя функция «Общие книги» выглядит так, как будто она должна выполнять свою работу, она нагружена ограничениями. Например, вы не можете создать таблицу или удалить блок ячеек, если книга является общей.
Для некоторых ограничений существуют обходные пути — для других достаточно изменить структуру книги, а не использовать уже настроенную книгу, — но они могут мешать. В результате может оказаться невозможным использовать общую книгу так же, как обычную однопользовательскую книгу.
«Когда системы Excel растут органично, вы сталкиваетесь с проблемой, заключающейся в том, что только один пользователь может одновременно открыть книгу»
Изменения в общих книгах синхронизируются между пользователями каждый раз при сохранении книги; это может происходить по расписанию, например, с обязательным сохранением каждые пять минут. Однако накладные расходы на регулярное сохранение и отслеживание изменений каждого пользователя довольно велики: книги могут легко разрастаться в размерах и создавать нагрузку на вашу сеть, замедляя работу других систем.
Общие рабочие книги также хрупки и подвержены повреждениям. Microsoft знает о проблеме, но, похоже, ничего не делает для ее решения. Похоже, что компания надеется, что метод мультиавторства Excel Online заменит старую технологию общих книг, но это не будет реалистичным предложением, пока компания не снимет все ограничения и не распространит технологию мультиавторства на полноценное настольное приложение Excel. , как это было в Word, PowerPoint и OneNote.
3. Связанные книги
Разделение данных по нескольким книгам может обойти проблему многопользовательского редактирования. Но вполне вероятно, что эти книги должны иметь связи между собой, чтобы значения, введенные в одну, можно было использовать в другой. Ссылки между книгами также полезны для хранения логически отдельных данных в отдельных файлах, а не просто отдельных листов в одной книге.
К сожалению, эти ссылки являются еще одним источником разочарования и нестабильности. Они могут быть абсолютными, включая полный путь к исходной книге, или относительными, включая только разницу между исходным и целевым путями. Хотя это звучит разумно, Excel использует загадочные правила, чтобы решить, когда использовать тот или иной тип ссылки, а когда их менять.
Правила регулируются различными параметрами, некоторые из которых совсем не очевидны, а также тем, были ли сохранены книги и где они были сохранены до вставки ссылок. Ссылки также могут измениться, когда вы сохраняете книгу или открываете и используете «Сохранить как» для копирования, а не копируете файл с помощью проводника. Результатом всей этой путаницы и неопределенности является то, что связи между книгами могут легко порваться, а восстановление неработающих ссылок может оказаться трудоемким процессом, в течение которого никто фактически не сможет использовать затронутые файлы.
Связанные данные обновляются только при открытии файлов, если только вы специально не нажмете Данные | Соединения | Редактировать ссылки | Обновить значения. По этой причине, если ваши ссылки не между двумя книгами, а охватывают три или более, вам придется открывать все книги в правильном порядке, чтобы обеспечить упорядоченность обновленных данных: от первой ко второй и к третьей. Если вы изменили значение в первой книге, а затем открыли третью, в ней не будет никаких изменений, поскольку вторая книга не обновила свои значения.
Такая цепочка данных логична, но она увеличивает вероятность того, что данные либо неверны, либо вы попытаетесь открыть книгу, которую уже редактирует кто-то другой.
Конечно, вы можете попытаться вообще избегать связанных книг, но есть вероятность, что в конечном итоге вы будете вводить одни и те же данные более чем в одну книгу, и вместе с этим возникает опасность вводить их каждый раз немного по-разному.
4. Проверка данных
В данные любой компьютерной системы могут проникнуть ошибки: люди неправильно набирают слова или переставляют цифры в числах с монотонной регулярностью. Если ваши данные не проверяются при вводе, у вас возникнут проблемы.
По умолчанию Excel принимает все, что вводит пользователь. Можно настроить проверку списков поиска, но их может быть сложно поддерживать, особенно если одно и то же поле используется более чем в одном месте. Если пользователям приходится вводить идентификационные номера документов или ссылочные номера клиентов без каких-либо проверок, можно легко связать неправильные записи вместе, даже не осознавая этого. В этом случае целостность данных системы оказывается под фатальной угрозой, и любой анализ данных становится подозрительным.
Возможно, вы уже страдаете от этой проблемы, не осознавая ее первопричины. Рассмотрим ситуацию, когда у вас есть список счетов-фактур в Excel, где пользователь вводит имя клиента немного по-разному в каждом счете. У вас есть счета на «Jones Ltd», «Jones Limited», «Jonse Ltd» и «joness». Возможно, вы знаете, что все они относятся к одной и той же компании, но Excel этого не делает. Любой анализ данных счетов, например сводная таблица по клиентам по месяцам, даст несколько результатов там, где должен быть только один.
5. Проблемы с навигацией
В больших книгах сложно ориентироваться. Ряд вкладок листов в нижней части окна — ужасный механизм для навигации, если вкладок больше нескольких; Когда вкладок больше, чем может быть отображено на экране, найти то, что вы ищете, становится еще сложнее. Вы можете щелкнуть правой кнопкой мыши по стрелкам слева от названий листов, чтобы открыть диалоговое окно «Активировать лист», но даже в нем перечислены только первые 20 листов, прежде чем вам придется прокручивать список — и нет возможности сортировать, группировать или искать. для нужного листа.
6. Вопросы безопасности
Вы можете повысить безопасность книг Excel, но здесь полно проблем. Защита в большей степени ориентирована на защиту структуры книги, а не данных. Вы можете попытаться заблокировать некоторые листы и ячейки, чтобы пользователи не могли изменять структуру и формулы, но если они видят данные, они обычно могут изменить их полностью или частично (если только вы не примените какое-нибудь умное программирование макросов).
7. Проблемы со скоростью
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)
Excel — не самое быстрое приложение в мире, а его язык программирования VBA работает медленнее по сравнению с более профессиональными языками программирования, такими как C#. Все это связано с предполагаемым использованием и гибким характером Excel. В конце концов, это движок электронных таблиц. Да, его можно использовать для управления списками данных, но это не значит, что это лучший выбор для такого рода работы. Действительно, есть другие приложения, лучше подходящие для таких задач, потому что они были созданы для их выполнения.
Представляем идею базы данных:
«Чтобы создать запись, вам нужно ввести данные клиента только один раз, после чего вы сможете использовать их в любом количестве счетов-фактур»
Если вы столкнулись с какой-либо из проблем, описанных выше, не игнорируйте их: есть профессиональный ответ на вопрос хранения «структурированных данных», и это наш старый друг — база данных. Это не должно быть страшно или дорого, и это должно дать вам возможность логически подумать о ваших данных, о том, как они связаны друг с другом и как вы с ними взаимодействуете.
Однако будьте осторожны: если вы переходите от решения для работы с электронными таблицами к базе данных, не рабски дублируйте дизайн электронной таблицы: воспользуйтесь возможностью, чтобы сделать его лучше.
Доступны приложения баз данных общего назначения, с помощью которых можно создать индивидуальное решение. В качестве альтернативы вы можете обнаружить, что специализированное приложение базы данных, уже разработанное для нужных вам целей, дешевле, быстрее в реализации и лучше подходит.
Например, если у вас есть список клиентов и подробные сведения обо всех ваших взаимодействиях с этими клиентами, это можно рассматривать как систему управления взаимоотношениями с клиентами (CRM). Несмотря на свое необычное название, CRM-система — это просто специализированная база данных. Аналогично, пакеты учетных записей, такие как QuickBooks и Sage, являются специализированными базами данных. Если вы не можете найти готовое приложение, которое соответствует вашим конкретным потребностям, вы, вероятно, можете создать его самостоятельно или поручить его вашему ИТ-отделу или консультанту.
Наиболее распространенным типом базы данных является реляционная база данных. Он сохраняет свои данные в таблицах, которые состоят из строк и столбцов данных. Каждая строка содержит данные для отдельного элемента (например, конкретного клиента), а каждый столбец описывает отдельный атрибут элемента, например имя клиента или кредитный лимит.
Между таблицами определены связи, так что, скажем, счет содержит идентификатор клиента. Это означает, что вы можете легко найти все счета для конкретного клиента или по конкретному счету получить номер телефона клиента. Чтобы создать запись о клиенте, вам нужно ввести данные клиента только один раз, а затем вы сможете использовать их в любом количестве счетов-фактур без необходимости вводить их повторно. Чтобы создать базу данных, вам необходимо определить эти таблицы и связи, а затем определить макет экранов, которые вы хотите использовать для перечисления и редактирования этих данных.
Существуют десятки приложений баз данных. Некоторые из них просты в использовании и выполняют всю работу, позволяя вам определять таблицы, экраны ввода данных и отчеты; другие более полнофункциональны в определенных областях, но для выполнения всей работы требуются другие инструменты.
Например, программа может быть очень мощной, когда дело доходит до определения таблиц и связей, и даже иметь мощные функции анализа и составления отчетов, но при этом полностью отсутствовать какие-либо инструменты для определения экранов ввода данных. Microsoft SQL Server является очевидным примером. Как и в других крупных системах баз данных, SQL Server заботится о внутренней части и ожидает, что вы будете использовать другой инструмент, например Visual Studio, для разработки внешней части.