Хранение данных в текстовом файле - PullRequest
0 голосов
/ 31 октября 2018

У меня есть файл Excel, который содержит около 800 строк и пару столбцов данных. Файл слова имеет три раскрывающихся списка. Первый раскрывающийся список содержит данные одного столбца. Содержание второго раскрывающегося списка зависит от выбранных данных в раскрывающемся списке 1, а раскрывающийся список 3 зависит от раскрывающегося списка 2.

Я уже создал сценарий VBA, который делает это, читая файл Excel. Моя проблема в том, что мне нужно избавиться от файла Excel, так как мне нужно иметь файл слова сам по себе.

Как я могу хранить 800 строк данных Excel в текстовом файле, чтобы пользователь не мог их увидеть, и чтобы я мог использовать их в коде VBA.

Я уже изучил это: https://www.techwalla.com/articles/how-do-i-create-a-microsoft-word-database Но это просто создает другой файл, который мало чем отличается от простого файла Excel.

1 Ответ

0 голосов
/ 31 октября 2018

Word имеет ограниченные возможности для хранения данных. До введения формата файлов Open XML в Word 2007 единственной возможностью было использовать «Переменные документа» - способ сохранения строковой информации. Хотя можно хранить данные в символьно-разделенном формате, это не рекомендуется для таких больших объемов данных.

В формате файлов Open XML введено понятие «Пользовательские части XML» - файлы XML, которые могут храниться в структуре файлов ZIP документа Office. (Помимо Word, Excel и PowerPoint также поддерживают пользовательские части XML).

Доступ к пользовательской части XML можно получить через объектную модель (CustomXMLPart) с использованием стандартных инструментов XML (например, анализатор MSXML) любого языка программирования, который может взаимодействовать на уровне COM. Также можно получить доступ к пользовательской XML-части через открытый XML-документ closed Office, используя любой язык программирования, который может работать с пакетами ZIP.

Пользовательская часть XML не видна пользователю. Только в Word содержимое пользовательской части XML может быть связано (сопоставлено) с элементами управления содержимым на поверхности документа. Содержимое узла будет отображаться в документе; пользовательские изменения будут записаны обратно в XML, и такие сопоставления предоставляют дополнительные события для действий, выполняемых в элементах управления контентом (например, проверка).

В настоящее время это рекомендуемый метод «встраивания» данных в документ Office.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...