Кто-нибудь знает, как заставить Excel 2003 вносить изменения в базу данных MySQL?
В настоящее время мы используем Excel 2003 для отслеживания большого количества взаимосвязанного оборудования (на самом деле, всей системы распределения электроэнергии со всеми hoo-ha, которые висят от нее). Совершенно откровенно, используя электронную таблицу для этого отстой, и мне это надоело, поэтому я хочу преобразовать его в настоящую базу данных, такую как MySQL.
Получаемые файлы:
Я уже схватил драйвер ODBC MySQL и установил его, а импорт данных из MySQL в Excel - легкий ветерок; но нет очевидного пути к обратному, и вносить изменения в Excel обратно в MySQL.
Здесь есть (по крайней мере) два возможных подхода.
Используйте базу данных MySQL и, как вы сказали, используйте драйвер ODBC для обновления базы данных. Использование объектов данных ActiveX (ADO) может позволить вам выполнить это. Подробнее см. здесь.
В качестве альтернативы вы можете создать базу данных Microsoft JET и использовать ее вместо MySQL. Это можно сделать с помощью ADOX для создания базы данных - см. здесь - и затем ADO, чтобы обновить его.
Оба ADO и ADOX доступны в моей стандартной установке Office 2003 (которая не включает Access), поэтому, надеюсь, ваша система также будет иметь их.
В качестве резерва, если они недоступны, вы можете посмотреть Объекты доступа к данным (DAO) - предшественник ADO, но ADO кажется намного более удобным для меня. Детали DAO здесь
Комментарий @Roland Bourman (который заслуживает того, чтобы быть ответом сам по себе) - очень интересный подход. Если вы не являетесь экспертом VB, вы можете сделать mavee даже приложением pull/push за пределами Excel на уровне script, вытащив данные из mySQL в лист Excel, прежде чем открывать Excel (легко) и записывать его после закрытия. Это можно сделать с помощью различных инструментов.