Когда вы добавляете или копируете документ Visio в документWord, презентациюPowerPoint или книгуExcel, встраив редактируемую копию этого Visio файла. После того как он внедрен, вы можете внести в него изменения при необходимости: просто дважды щелкните чертеж. Он откроется во всплывающее окно Visio где можно внести изменения.
КопированиеVisio документа вWord документ
-
В Visio откройте файл, который должен отображатьсяWord документе.
-
Убедитесь, что ничего не выбрано, а затем на вкладке «Главная» нажмите кнопку «Копировать» или нажмите CTRL+C.
-
В Word щелкните место, где долженVisio рисунок, и нажмите кнопку «Вировать» или нажмите CTRL+V.
-
По умолчанию чертеж открывается на первой странице. Дважды щелкните рисунок, чтобы открыть его вVisio приложении. Скроем страницу, которая вы хотите отобразить, и закроем Visio. Word отобразит выбранную страницу.
КопированиеVisio документа вPowerPoint илиExcel
-
В Visio откройте файл, который должен отображаться вPowerPoint или Excel, и откройте на вкладке страницу, которая вы хотите отобразить.
-
Убедитесь, что ничего не выбрано, а затем на вкладке «Главная» нажмите кнопку «Копировать» или нажмите CTRL+C.
-
Откройте Excel или PowerPoint в том месте, гдеVisio вы хотите врисовать.
-
На вкладке «Главная» нажмите кнопку > «Специальная вставка» и выберите объект-рисунок Microsoft Visio.
-
Чертеж будет вставлен. Чтобы внести изменения в чертеж, дважды щелкните его, чтобы открыть.
Чертеж откроется во всплывающее окно Visio.
-
Внесите необходимые изменения. Когда все будет готово, щелкните в любом месте за пределами всплывающее окно, чтобы закрыть его и сохранить изменения.
Вы можете скопировать схему (или ее часть) в Веб-приложение Visio а затем в Word, OneNote, PowerPoint или Excel. Вы можете в любое из этих классических приложений или их аналогов в веб-приложениях.
Схема будет вклена как простой файл изображения, не содержащий Visio данных. Это просто изображение.
Копирование и вкопка схемы
-
Выберите схему, которая вы хотите скопировать:
Щелкните и перетащите, чтобы ввести в дело всю схему.
Можно также нажать и удерживать нажатой кнопку CTRL, щелкнув несколько отдельных частей схемы.
-
Нажмите CTRL+C (или щелкните правой кнопкой мыши и выберите «Копировать»).
-
Переключение Office документ, в который вы хотите вставить изображение.
-
Нажмите CTRL+V.
Копирование схемы без ее выбора
Вот ярлык для шага 1 выше, если вы хотите выбрать все на странице:
-
Не выбирайте схему. Не выбрав ничего, щелкните страницу правой кнопкой мыши и выберите «Копировать».
Поддерживаемые веб-браузеры
Поддерживаемые веб-браузеры |
Неподтверченные веб-браузеры |
---|---|
Microsoft Edge Google Chrome Mozilla Firefox |
Internet Explorer Safari |
Конвертировать Visio to Excel онлайн
Loading…
Обработка Пожалуйста, подождите…
Копировать текст
Копировать ссылку
Обработка Пожалуйста, подождите…
Файл отправлен на
Ваше мнение важно для нас, пожалуйста, оцените это приложение.
★
★
★
★
★
Спасибо за оценку нашего приложения!
Visio to Excel conversion
Conholdate Visio to Excel Conversion — это кроссплатформенное и кроссбраузерное приложение для конвертации, которое позволяет конвертировать Visio to Excel в любом современном браузере (Chrome, Safari, Firefox, Opera, Tor и т. д.) и на любой ОС (Windows, Unix и MacOS), независимо от характеристик вашего ПК. Преобразованный Visio to Excel сохранит исходную структуру, содержимое и стили документа. Visio to Excel Приложение для конвертирования построено на основе высококачественного механизма преобразования документов, который обеспечивает выдающиеся результаты преобразования и производительность. Наша цель — предложить нашим пользователям безопасные и наилучшие возможности преобразования. Приложение Conholdate.Conversion предлагает функцию OCR, которая позволяет анализировать файлы изображений и экспортировать данные в документы Excel, например преобразовывать PNG в Excel.
Как Конвертировать Visio to Excel
- Щелкните внутри области перетаскивания или перетащите файл.
- Подождите, пока файл Visio to Excel не будет загружен.
- Выберите выходной формат из выпадающего меню.
- Нажмите кнопку Конвертировать, чтобы начать преобразование Visio to Excel.
- Скачайте или поделитесь полученным файлом.
часто задаваемые вопросы
Q: Как преобразовать файл Visio to Excel?
A: Загрузите файл, перетащив его в зону загрузки или щелкните по нему, чтобы выбрать файл с помощью проводника. После этого выберите конечный формат, в который вы хотите преобразовать файл, и нажмите кнопку Преобразовать.
Q: Могу ли я извлечь таблицы из изображений (PNG) и экспортировать их в файлы Excel?
A: Да, это возможно. Преобразование Conholdate изображения в Excel будет анализировать файлы изображений с помощью функции OCR и извлекать текст и данные таблиц. Извлеченные данные можно сохранить в различных форматах, таких как Excel, OpenOffice и других.
Q: Сколько файлов можно конвертировать одновременно?
A: Вы можете конвертировать по 1 файлу за раз.
Q: Каков максимально допустимый размер файла?
A: Максимально допустимый размер файла для загрузки и конвертации составляет 20 МБ.
Q: Как получить результаты конвертирования файла?
A: В конце процесса преобразования вы получите ссылку для скачивания. Вы можете скачать результаты сразу или отправить ссылку на вашу электронную почту.
Q: Как многостраничный документ преобразуется в изображение?
A: Каждая страница такого документа будет сохранена как отдельное изображение. После завершения конвертации вы получите набор таких изображений.
Еще приложений
Еще conversion приложений
Выбрать язык
You can also convert VSD into many other file formats. Please see the complete list below.
VSD TO XPS Converter (Open XML Paper Specification)
VSD TO TEX Converter (LaTeX Source Document)
VSD TO HTM Converter (Hypertext Markup Language File)
VSD TO HTML Converter (Hyper Text Markup Language)
VSD TO MHTML Converter (MIME Encapsulation of Aggregate HTML)
VSD TO MHT Converter (MIME Encapsulation of Aggregate HTML)
VSD TO XLSX Converter (Microsoft Excel Open XML Spreadsheet)
VSD TO XLSM Converter (Microsoft Excel Macro-Enabled Spreadsheet)
VSD TO XLSB Converter (Microsoft Excel Binary Spreadsheet File)
VSD TO ODS Converter (Open Document Spreadsheet)
VSD TO XLTX Converter (Microsoft Excel Open XML Template)
VSD TO XLT Converter (Microsoft Excel Template)
VSD TO XLTM Converter (Microsoft Excel Macro-Enabled Template)
VSD TO TSV Converter (Tab Separated Values File)
VSD TO XLAM Converter (Microsoft Excel Macro-Enabled Add-In)
VSD TO CSV Converter (Comma Separated Values File)
VSD TO FODS Converter (OpenDocument Flat XML Spreadsheet)
VSD TO SXC Converter (StarOffice Calc Spreadsheet)
VSD TO SVG Converter (Scalable Vector Graphics File)
VSD TO PDF Converter (Portable Document)
VSD TO EPUB Converter (Digital E-Book File Format)
VSD TO MOBI Converter (Mobipocket eBook)
VSD TO AZW3 Converter (Kindle eBook format)
VSD TO PPT Converter (PowerPoint Presentation)
VSD TO PPS Converter (Microsoft PowerPoint Slide Show)
Convert VSD TO PPTX (PowerPoint Open XML Presentation)
Convert VSD TO PPSX (PowerPoint Open XML Slide Show)
Convert VSD TO ODP (OpenDocument Presentation File Format)
Convert VSD TO OTP (Origin Graph Template)
Convert VSD TO POTX (Microsoft PowerPoint Open XML Template)
Convert VSD TO POT (PowerPoint Template)
Convert VSD TO POTM (Microsoft PowerPoint Template)
Convert VSD TO PPTM (Microsoft PowerPoint Presentation)
Convert VSD TO PPSM (Microsoft PowerPoint Slide Show)
Convert VSD TO FODP (OpenDocument Flat XML Presentation)
Convert VSD TO VSDX (Microsoft Visio File Format)
Convert VSD TO VSX (Vector Scalar Extension)
Convert VSD TO VTX (Microsoft Visio Drawing Template)
Convert VSD TO VDX (Microsoft Visio XML Drawing File Format)
Convert VSD TO VSSX (Visio Stencil File Format)
Convert VSD TO VSTX (Microsoft Visio File Format)
Convert VSD TO VSDM (Visio Macro-Enabled Drawing)
Convert VSD TO VSSM (Microsoft Visio Macro Enabled File Format)
Convert VSD TO VSTM (Visio Macro-Enabled Drawing Template)
Convert VSD TO TIFF (Tagged Image File Format)
Convert VSD TO TIF (Tagged Image File Format)
Convert VSD TO JPG (Joint Photographic Expert Group Image File)
Convert VSD TO JPEG (JPEG Image)
Convert VSD TO PNG (Portable Network Graphic)
Convert VSD TO GIF (Graphical Interchange Format File)
VSD TO BMP Conversion (Bitmap File Format)
VSD TO ICO Conversion (Microsoft Icon File)
VSD TO PSD Conversion (Adobe Photoshop Document)
VSD TO WMF Conversion (Windows Metafile)
VSD TO EMF Conversion (Enhanced Metafile Format)
VSD TO DCM Conversion (DICOM Image)
VSD TO DICOM Conversion (Digital Imaging and Communications in Medicine)
VSD TO WEBP Conversion (Raster Web Image File Format)
VSD TO JP2 Conversion (JPEG 2000 Core Image File)
VSD TO EMZ Conversion (Enhanced Windows Metafile Compressed)
VSD TO WMZ Conversion (Windows Metafile Compressed)
VSD TO SVGZ Conversion (Compressed Scalable Vector Graphics File)
VSD TO TGA Conversion (Targa Graphic)
VSD TO PSB Conversion (Adobe Photoshop Image File)
VSD TO DOC Conversion (Microsoft Word Document)
VSD TO DOCM Conversion (Microsoft Word Macro-Enabled Document)
VSD TO DOCX Conversion (Microsoft Word Open XML Document)
VSD TO DOT Conversion (Microsoft Word Document Template)
VSD TO DOTM Conversion (Microsoft Word Macro-Enabled Template)
VSD TO DOTX Conversion (Word Open XML Document Template)
VSD TO RTF Conversion (Rich Text File Format)
VSD TO ODT Conversion (Open Document Text)
VSD TO OTT Conversion (Open Document Template)
VSD TO TXT Conversion (Plain Text File Format)
VSD TO MD Conversion (Markdown)
Содержание
- Онлайн-конвертер VSD to XLS
- Конвертировать VSD to XLS онлайн
- VSD to XLS conversion
- Как Конвертировать VSD to XLS
- часто задаваемые вопросы
- Copy a Visio drawing to Word, PowerPoint, or Excel
- Copy a Visio drawing to a Word document
- Copy a Visio drawing to PowerPoint or Excel
- Copy and paste a diagram
- Copy a diagram without having to select it first
- Копирование документа Visio в Word, PowerPoint или Excel
- КопированиеVisio документа вWord документ
- КопированиеVisio документа вPowerPoint илиExcel
- Копирование и вкопка схемы
- Копирование схемы без ее выбора
- how to export visio external data to excel
- 2 Answers 2
- Онлайн-конвертер Visio to Excel
- Конвертировать Visio to Excel онлайн
- Visio to Excel conversion
- Как Конвертировать Visio to Excel
- часто задаваемые вопросы
Онлайн-конвертер VSD to XLS
Конвертировать VSD to XLS онлайн
Нажмите или перетащите файлы сюда
Нажимая кнопку загрузки или загружая документ, вы соглашаетесь с нашей Политикой конфиденциальности и Условия использования
VSD to XLS conversion
Conholdate VSD to XLS Conversion — это кроссплатформенное и кроссбраузерное приложение для конвертации, которое позволяет конвертировать VSD to XLS в любом современном браузере (Chrome, Safari, Firefox, Opera, Tor и т. д.) и на любой ОС (Windows, Unix и MacOS), независимо от характеристик вашего ПК. Преобразованный VSD to XLS сохранит исходную структуру, содержимое и стили документа. VSD to XLS Приложение для конвертирования построено на основе высококачественного механизма преобразования документов, который обеспечивает выдающиеся результаты преобразования и производительность. Наша цель — предложить нашим пользователям безопасные и наилучшие возможности преобразования. Приложение Conholdate.Conversion предлагает функцию OCR, которая позволяет анализировать файлы изображений и экспортировать данные в документы Excel, например преобразовывать PNG в Excel.
Как Конвертировать VSD to XLS
- Щелкните внутри области перетаскивания или перетащите файл.
- Подождите, пока файл VSD to XLS не будет загружен.
- Выберите выходной формат из выпадающего меню.
- Нажмите кнопку Конвертировать, чтобы начать преобразование VSD to XLS.
- Скачайте или поделитесь полученным файлом.
часто задаваемые вопросы
Q: Как преобразовать файл VSD to XLS?
A: Загрузите файл, перетащив его в зону загрузки или щелкните по нему, чтобы выбрать файл с помощью проводника. После этого выберите конечный формат, в который вы хотите преобразовать файл, и нажмите кнопку Преобразовать.
Q: Могу ли я извлечь таблицы из изображений (PNG) и экспортировать их в файлы Excel?
A: Да, это возможно. Преобразование Conholdate изображения в Excel будет анализировать файлы изображений с помощью функции OCR и извлекать текст и данные таблиц. Извлеченные данные можно сохранить в различных форматах, таких как Excel, OpenOffice и других.
Q: Сколько файлов можно конвертировать одновременно?
A: Вы можете конвертировать по 1 файлу за раз.
Q: Каков максимально допустимый размер файла?
A: Максимально допустимый размер файла для загрузки и конвертации составляет 20 МБ.
Q: Как получить результаты конвертирования файла?
A: В конце процесса преобразования вы получите ссылку для скачивания. Вы можете скачать результаты сразу или отправить ссылку на вашу электронную почту.
Q: Как многостраничный документ преобразуется в изображение?
A: Каждая страница такого документа будет сохранена как отдельное изображение. После завершения конвертации вы получите набор таких изображений.
Источник
Copy a Visio drawing to Word, PowerPoint, or Excel
When you add or copy a Visio drawing to a Word document, PowerPoint presentation, or an Excel workbook, you are embedding an editable copy of that Visio file. After it’s embedded, you may make changes to it, if needed: Just double-click the drawing. It will open in a pop-up Visio window where you can make your edits.
Copy a Visio drawing to a Word document
In Visio, open the file you want to appear in the Word document.
Make sure nothing is selected, and then, on the Home tab, click Copy or press Ctrl+C.
In Word, click where you want the Visio drawing to appear and then click Paste or press Ctrl+V.
By default, the drawing opens to the first page. Double-click the drawing to open it in your Visio application. Tab to the page you want to display and then close Visio. Word now displays your chosen page.
Copy a Visio drawing to PowerPoint or Excel
In Visio, open the file you want to appear in PowerPoint or Excel, and tab to open the page you want to display.
Make sure nothing is selected, and then, on the Home tab, click Copy or press Ctrl+C.
Open your Excel or PowerPoint file where you want the Visio drawing to appear.
On the Home tab, click Paste > Paste Special, and then select Microsoft Visio Drawing Object.
The drawing is inserted. To make changes to the drawing, double-click it to open it.
The drawing opens in a pop-up Visio window.
Make any changes you want. When you’re done, click anywhere outside the pop-up window to close it and save your changes.
You can copy a diagram (or part of one) in Visio for the web and then paste it into Word, OneNote, PowerPoint, or Excel. You can paste into any of those desktop apps or their counterpart web-based apps.
The diagram is pasted as a simple image file that doesn’t contain any underlying Visio data. It’s just a picture.
Copy and paste a diagram
Select the diagram you want to copy:
Click and drag to to enclose and select the entire diagram.
Or press and hold Ctrl while you click to multi-select specific parts of the diagram.
Press Ctrl+C (Or right-click and select Copy).
Switch to the Office document where you want to insert the image.
Copy a diagram without having to select it first
Here’s a shortcut for step 1 above when you want to select everything on a page:
Don’t select the diagram. With nothing selected, right-click the page and select Copy.
Источник
Копирование документа Visio в Word, PowerPoint или Excel
Когда вы добавляете или копируете документ Visio в документWord, презентациюPowerPoint или книгуExcel, встраив редактируемую копию этого Visio файла. После того как он внедрен, вы можете внести в него изменения при необходимости: просто дважды щелкните чертеж. Он откроется во всплывающее окно Visio где можно внести изменения.
КопированиеVisio документа вWord документ
В Visio откройте файл, который должен отображатьсяWord документе.
Убедитесь, что ничего не выбрано, а затем на вкладке «Главная» нажмите кнопку «Копировать» или нажмите CTRL+C.
В Word щелкните место, где долженVisio рисунок, и нажмите кнопку «Вировать» или нажмите CTRL+V.
По умолчанию чертеж открывается на первой странице. Дважды щелкните рисунок, чтобы открыть его вVisio приложении. Скроем страницу, которая вы хотите отобразить, и закроем Visio. Word отобразит выбранную страницу.
КопированиеVisio документа вPowerPoint илиExcel
В Visio откройте файл, который должен отображаться вPowerPoint или Excel, и откройте на вкладке страницу, которая вы хотите отобразить.
Убедитесь, что ничего не выбрано, а затем на вкладке «Главная» нажмите кнопку «Копировать» или нажмите CTRL+C.
Откройте Excel или PowerPoint в том месте, гдеVisio вы хотите врисовать.
На вкладке «Главная» нажмите кнопку > «Специальная вставка» и выберите объект-рисунок Microsoft Visio.
Чертеж будет вставлен. Чтобы внести изменения в чертеж, дважды щелкните его, чтобы открыть.
Чертеж откроется во всплывающее окно Visio.
Внесите необходимые изменения. Когда все будет готово, щелкните в любом месте за пределами всплывающее окно, чтобы закрыть его и сохранить изменения.
Вы можете скопировать схему (или ее часть) в Веб-приложение Visio а затем в Word, OneNote, PowerPoint или Excel. Вы можете в любое из этих классических приложений или их аналогов в веб-приложениях.
Схема будет вклена как простой файл изображения, не содержащий Visio данных. Это просто изображение.
Копирование и вкопка схемы
Выберите схему, которая вы хотите скопировать:
Щелкните и перетащите, чтобы ввести в дело всю схему.
Можно также нажать и удерживать нажатой кнопку CTRL, щелкнув несколько отдельных частей схемы.
Нажмите CTRL+C (или щелкните правой кнопкой мыши и выберите «Копировать»).
Переключение Office документ, в который вы хотите вставить изображение.
Копирование схемы без ее выбора
Вот ярлык для шага 1 выше, если вы хотите выбрать все на странице:
Не выбирайте схему. Не выбрав ничего, щелкните страницу правой кнопкой мыши и выберите «Копировать».
Источник
how to export visio external data to excel
I have an old VISIO file with external data on it. The source file of the data does not exist anymore. I have tried to copy and paste the data from visio to excel with no success.
Then I tried to access the data through VBA and I don’t understand the results I get: (The amount of rows is currect, yet the data is sometimes good and sometimes not)
Do you know how to get this data from visio to excel?
Update: Added the source and code output: I rechecked and have no clue where the data comes from.
2 Answers 2
This post is old but I ran into the same problem and have a solution. In your posted code, you’re referencing each DataRecordSet and grabbing the first row, instead of finding the correct one and grabbing all rows.
We also have to avoid using i to count from 0 to ExternalData.Count ; the Row IDs can skip numbers, so you have to use the real IDs from the correct DataRecordset .
The following code is not exactly pretty but it works. Note that the linked boolean is not truly part of the data set; it is, however, equivalent to the «chain» icon in the External Data window.
This was written for Visio 2013, but I believe it will work for other versions as well. After running this, you can import the file into Excel using % as the delimiter.
Источник
Онлайн-конвертер Visio to Excel
Конвертировать Visio to Excel онлайн
Нажмите или перетащите файлы сюда
Нажимая кнопку загрузки или загружая документ, вы соглашаетесь с нашей Политикой конфиденциальности и Условия использования
Visio to Excel conversion
Conholdate Visio to Excel Conversion — это кроссплатформенное и кроссбраузерное приложение для конвертации, которое позволяет конвертировать Visio to Excel в любом современном браузере (Chrome, Safari, Firefox, Opera, Tor и т. д.) и на любой ОС (Windows, Unix и MacOS), независимо от характеристик вашего ПК. Преобразованный Visio to Excel сохранит исходную структуру, содержимое и стили документа. Visio to Excel Приложение для конвертирования построено на основе высококачественного механизма преобразования документов, который обеспечивает выдающиеся результаты преобразования и производительность. Наша цель — предложить нашим пользователям безопасные и наилучшие возможности преобразования. Приложение Conholdate.Conversion предлагает функцию OCR, которая позволяет анализировать файлы изображений и экспортировать данные в документы Excel, например преобразовывать PNG в Excel.
Как Конвертировать Visio to Excel
- Щелкните внутри области перетаскивания или перетащите файл.
- Подождите, пока файл Visio to Excel не будет загружен.
- Выберите выходной формат из выпадающего меню.
- Нажмите кнопку Конвертировать, чтобы начать преобразование Visio to Excel.
- Скачайте или поделитесь полученным файлом.
часто задаваемые вопросы
Q: Как преобразовать файл Visio to Excel?
A: Загрузите файл, перетащив его в зону загрузки или щелкните по нему, чтобы выбрать файл с помощью проводника. После этого выберите конечный формат, в который вы хотите преобразовать файл, и нажмите кнопку Преобразовать.
Q: Могу ли я извлечь таблицы из изображений (PNG) и экспортировать их в файлы Excel?
A: Да, это возможно. Преобразование Conholdate изображения в Excel будет анализировать файлы изображений с помощью функции OCR и извлекать текст и данные таблиц. Извлеченные данные можно сохранить в различных форматах, таких как Excel, OpenOffice и других.
Q: Сколько файлов можно конвертировать одновременно?
A: Вы можете конвертировать по 1 файлу за раз.
Q: Каков максимально допустимый размер файла?
A: Максимально допустимый размер файла для загрузки и конвертации составляет 20 МБ.
Q: Как получить результаты конвертирования файла?
A: В конце процесса преобразования вы получите ссылку для скачивания. Вы можете скачать результаты сразу или отправить ссылку на вашу электронную почту.
Q: Как многостраничный документ преобразуется в изображение?
A: Каждая страница такого документа будет сохранена как отдельное изображение. После завершения конвертации вы получите набор таких изображений.
Источник
Общие сведения
(По мотивам сообщения пользователя Machestro в http://visio.getbb.ru/viewtopic.php?f=29&t=1429).
Обычно Excel по отношению к Visio рассматривается в качестве источника данных. Тем не менее, обратный канал тоже существует. Он используется либо для формирования отчетов по документам Visio, либо при двусторонней синхронизации данных с источником. Для формирования отчетов как правило используется либо штатный формирователь отчетов, либо специализированные программные решения, создаваемые под конкретную задачу. Причем возможности формирователя отчетов достаточно ограничены.
Однако с появлением в Power Query функции доступа к архивированным файлам (см. http://sql10.blogspot.com/2016/06/reading-zip-files-in-powerquery-m.html) Visio получает еще один и очень неплохой способ формирования отчетов. Ведь если документ Visio представляет собой пакет из нескольких заархивированных XML файлов, а Power Query способен выбирать данные из XML, в том числе и из нескольких файлов, то нет препятствий к тому, чтобы пользователь Excel получил доступ к данным из файла Visio. Причем для этого даже не требуется установленный Visio. Только файл документа и Power Query.
Пожалуй, единственным препятствием будет довольно сложная структура документа Visio. Без знания этой структуры построение запросов невозможно. Значит нужно либо наработать какой-то методический материал, облегчающий освоение специалистами Power Query структуры документа Visio, либо свести эту структуру к нескольким простейшим таблицам, работать с которыми будет гораздо легче.
Идеология Power Query предполагает, что практически любой, даже не сильно подготовленный пользователь должен быть способен манипулировать данными. Значит ей ближе именно второй путь. И скорее всего не обязательно полностью полностью конвертировать структуру документа. Достаточно создать несколько «типовых» запросов, которые станут основой для дальнейших преобразований и закроют большинство потребностей. А кому не хватит, тот пусть глубже изучает структуру Visio и самостоятельно добирается до первоисточника.
Типовые запросы
Ниже представлены несколько запросов, которые можно отнести к типовым. Начальный список невелик и в дальнейшем вполне может быть расширен. Пока в него входят:
- Первичная таблица соединений;
- Таблица соединений источник-коннектор-приемник;
- Отчет Данные шейпов;
- Отчет Имена страниц;
- Отчет Ссылочные идентификаторы страниц.
Первичная таблица соединений
Запрос выбирает таблицу соединений из коллекций Connects страниц в виде, близком к исходному.
Источник (документ Visio) должен быть прописан в таблице VisioPath, как показано на рисунке.
Результат содержит ID шейпов, имена ячеек и признаки соединяемых частей и дополнены идентификаторами страниц документа. Пример результата:
Текст запроса ConnectionsTable1:
let
VisioXML = UnzipContents(File.Contents(Excel.CurrentWorkbook(){[Name=»VisioPath»]}[Content]{0}[dPath])),
Pages = Table.SelectRows(VisioXML, each
Text.StartsWith([FileName], «visio/pages/page»)
and not Text.EndsWith([FileName], «s.xml»)),
ContentColumn = Table.AddColumn(Pages, «Custom», each Xml.Tables(Text.FromBinary([Content]))),
ExpandedSections = Table.ExpandTableColumn(ContentColumn, «Custom», {«Name», «Table»}, {«Name», «Table»}),
// Filter Connect section and expand cells
FilterConnects = Table.SelectRows(ExpandedSections, each ([Name] = «Connects»)),
PageContents = Table.ExpandTableColumn(FilterConnects, «Table», {«Table»}, {«Table.1»}),
ExpandCells = Table.ExpandTableColumn(PageContents, «Table.1», {«Attribute:FromSheet», «Attribute:FromCell», «Attribute:FromPart», «Attribute:ToSheet», «Attribute:ToCell», «Attribute:ToPart»}, {«FromSheet», «FromCell», «FromPart», «ToSheet», «ToCell», «ToPart»}),
RemoveColumns = Table.RemoveColumns(ExpandCells,{«Content», «Name»}),
// Expand pageID from file name
ExpandPageID = Table.AddColumn(RemoveColumns, «pageXML», each Text.AfterDelimiter([FileName], «visio/pages/»), type text),
Remove1 = Table.RemoveColumns(ExpandPageID,{«FileName»}),
ConnectionsTable1 = Table.ReorderColumns(Remove1,{«pageXML», «FromSheet», «FromCell», «FromPart», «ToSheet», «ToCell», «ToPart»})
in
ConnectionsTable1
Таблица соединений источник-коннектор-приемник
Запрос аналогичен предыдущему, но результат переформатирован. Строка содержит шейп-источник, шейп-приемник и шейп-коннектор. Дополнительная информация (ячейки, части и идентификатор страницы) — как в предыдущем запросе.
Пример результата:
Текст запроса ConnectionsTable2:
let
VisioXML = UnzipContents(File.Contents(Excel.CurrentWorkbook(){[Name=»VisioPath»]}[Content]{0}[dPath])),
Pages = Table.SelectRows(VisioXML, each
Text.StartsWith([FileName], «visio/pages/page»)
and not Text.EndsWith([FileName], «s.xml»)),
ContentColumn = Table.AddColumn(Pages, «Custom», each Xml.Tables(Text.FromBinary([Content]))),
ExpandedSections = Table.ExpandTableColumn(ContentColumn, «Custom», {«Name», «Table»}, {«Name», «Table»}),
// Filter Connect section and expand cells
FilterConnects = Table.SelectRows(ExpandedSections, each ([Name] = «Connects»)),
PageContents = Table.ExpandTableColumn(FilterConnects, «Table», {«Table»}, {«Table.1»}),
ExpandCells = Table.ExpandTableColumn(PageContents, «Table.1», {«Attribute:FromSheet», «Attribute:FromCell», «Attribute:FromPart», «Attribute:ToSheet», «Attribute:ToCell», «Attribute:ToPart»}, {«FromSheet», «FromCell», «FromPart», «ToSheet», «ToCell», «ToPart»}),
RemoveColumns = Table.RemoveColumns(ExpandCells,{«Content», «Name»}),
// Expand pageID from file name
ExpandPageID = Table.AddColumn(RemoveColumns, «pageXML», each Text.AfterDelimiter([FileName], «visio/pages/»), type text),
Remove1 = Table.RemoveColumns(ExpandPageID,{«FileName»}),
Reorder1 = Table.ReorderColumns(Remove1,{«pageXML», «FromSheet», «FromCell», «FromPart», «ToSheet», «ToCell», «ToPart»}),
// Convert to Connections Table type 2
Grouped = Table.Group(Reorder1, {«pageXML»,»FromSheet»}, {{«Group», each _, type table}}),
AddToSheet = Table.AddColumn(Grouped, «ToSheet1», each Text.Combine([Group][ToSheet], «,»)),
AddToCell = Table.AddColumn(AddToSheet, «ToCell1», each Text.Combine([Group][ToCell], «,»)),
AddToPart = Table.AddColumn(AddToCell, «ToPart1», each Text.Combine([Group][ToPart], «,»)),
SplitSheet = Table.SplitColumn(AddToPart,»ToSheet1″,Splitter.SplitTextByDelimiter(«,»),{«ToSheet.1», «ToSheet.2»}),
SplitCell = Table.SplitColumn(SplitSheet,»ToCell1″,Splitter.SplitTextByDelimiter(«,»),{«ToCell.1», «ToCell.2»}),
SplitPart = Table.SplitColumn(SplitCell,»ToPart1″,Splitter.SplitTextByDelimiter(«,»),{«ToPart.1», «ToPart.2»}),
Remove = Table.RemoveColumns(SplitPart,{«Group»}),
Reorder = Table.ReorderColumns(Remove,{«pageXML», «ToSheet.1», «ToSheet.2», «FromSheet», «ToCell.1», «ToCell.2», «ToPart.1», «ToPart.2»}),
ConnectionsTable2 = Table.RenameColumns(Reorder,{{«ToSheet.1», «Shape.1»}, {«ToSheet.2», «Shape.2»}, {«FromSheet», «Connector»}, {«ToCell.1», «Cell.1»}, {«ToCell.2», «Cell.2»}, {«ToPart.1», «Part.1»}, {«ToPart.2», «Part.2»}})
in
ConnectionsTable2
Отчет Данные шейпов
Запрос выбирает Shape Data из шейпов всех страниц и разворачивает их горизонтально.
Источник (документ Visio) должен быть прописан в таблице VisioPath, как показано на рисунке.
Пример результата:
Набор колонок в результате зависит от разнообразия имен строк в Shape Data в шейпах. В качестве имен колонок выводятся все уникальные значение.
Ключом в таблице служит уникальная пара pageXML, ShapeID.
Текст запроса:
let
VisioXML = UnzipContents(File.Contents(Excel.CurrentWorkbook(){[Name=»VisioPath»]}[Content]{0}[dPath])),
Pages = Table.SelectRows(VisioXML, each
Text.StartsWith([FileName], «visio/pages/page»)
and not Text.EndsWith([FileName], «s.xml»)),
AddID = Table.AddColumn(Pages, «Text Between Delimiters», each Text.AfterDelimiter([FileName], «visio/pages/»), type text),
RenameID = Table.RenameColumns(AddID,{{«Text Between Delimiters», «pageXML»}}),
Contents = Table.AddColumn(RenameID, «XML_As_Text», each Xml.Tables(Text.FromBinary([Content]))),
ShapesTable = Table.ExpandTableColumn(Contents, «XML_As_Text», {«Table»}, {«Shapes»}),
ShapesRecords = Table.ExpandTableColumn(ShapesTable, «Shapes», {«Table»}, {«Shapes.Table»}),
ShapeTable = Table.ExpandTableColumn(ShapesRecords, «Shapes.Table», {«Section», «Attribute:ID»}, {«Section», «ShapeID»}),
ShapeFiltered = Table.SelectRows(ShapeTable, each ([#»ShapeID»] <> null)),
ExpandedSections = Table.ExpandTableColumn(ShapeFiltered, «Section», {«Row», «Attribute:N»}, {«Section.Row», «SectionName»}),
OneSectionOnly = Table.SelectRows(ExpandedSections, each ([#»SectionName»] = «Property»)),
ExpandedRows = Table.ExpandTableColumn(OneSectionOnly, «Section.Row», {«Cell», «Attribute:N»}, {«Section.Row.Cell», «PropRowName»}),
RemovedColumns = Table.RemoveColumns(ExpandedRows,{«FileName», «SectionName»}),
Row.Cells = Table.ExpandTableColumn(RemovedColumns, «Section.Row.Cell», {«Attribute:N», «Attribute:V»}, {«PropCellName», «PropVal»}),
ValueOnly = Table.SelectRows(Row.Cells, each ([#»PropCellName»] = «Value»)),
RemovedCellName = Table.RemoveColumns(ValueOnly,{«PropCellName»,»Content»}),
PivotedProperty = Table.Pivot(RemovedCellName, List.Distinct(RemovedCellName[#»PropRowName»]), «PropRowName», «PropVal»)
in
PivotedProperty
Отчет Имена страниц
Запрос выбирает идентификаторы и имена страниц.
Источник задается аналогично предыдущим запросам.
Результат представляется в виде таблицы:
Текст запроса PageNames:
let
VisioXML = UnzipContents(File.Contents(Excel.CurrentWorkbook(){[Name=»VisioPath»]}[Content]{0}[dPath])),
// Drill down ID, Names of Pages
PagesFilter = Table.SelectRows(VisioXML, each ([FileName] = «visio/pages/pages.xml»)),
TableOfPages = Xml.Tables(PagesFilter{0}[Content]){0}[Table],
RelAdded = Table.AddColumn(TableOfPages, «Custom», each Table.FirstValue([Rel])),
ExpRel = Table.ExpandTableColumn(RelAdded, «Custom», {«Attribute:id»}, {«PageRel»}),
PageColumns = Table.SelectColumns(ExpRel,{«PageRel»,»Attribute:ID», «Attribute:NameU», «Attribute:Name»}),
PageNames = Table.RenameColumns(PageColumns,{{«Attribute:ID», «pageID»}, {«Attribute:NameU», «pageNameU»}, {«Attribute:Name», «pageName»}})
in
PageNames
Отчет Ссылочные идентификаторы страниц
Запрос выбирает таблицу соответствия между ссылочными идентификаторами и менами файлов страниц.
Источник задается аналогично предыдущим запросам.
Результат представляется в виде таблицы:
Текст запроса PageRels:
let
VisioXML = UnzipContents(File.Contents(Excel.CurrentWorkbook(){[Name=»VisioPath»]}[Content]{0}[dPath])),
PagesFilter = Table.SelectRows(VisioXML, each ([FileName] = «visio/pages/_rels/pages.xml.rels»)),
TableOfPages = Xml.Tables(PagesFilter{0}[Content]){0}[Table],
RemovedColumns = Table.RemoveColumns(TableOfPages,{«Attribute:Type»}),
PageRels = Table.RenameColumns(RemovedColumns,{{«Attribute:Id», «Rel»}, {«Attribute:Target», «fName»}})
in
PageRels
Результат запроса может быть использован для перехода от имени файла страницы к имени страницы. Дело в том, что данные получаемые на основе файлов страниц, привязываются к именам файлов страниц (типа page1.xml), которые не равны именам страниц. Для перехода к имени требуется сначала перейти к ссылочному идентификатору (page1.xml — rid1), а от него к имени (rid1 — Страница-1).
Комбинированные запросы
Для получения таблицы переходов от имени XML файла к имени страницы нужно связать запросы PageRels и PageNames.
Это выполняет запрос XML_NameU с таким кодом:
let
Source = Table.NestedJoin(PageRels,{«Rel»},PageNames,{«PageRel»},»PageNames»,JoinKind.Inner),
#»Expanded PageNames» = Table.ExpandTableColumn(Source, «PageNames», {«pageNameU», «pageName»}, {«pageNameU», «pageName»})
in
#»Expanded PageNames»
После этого можно связывать любой из основных запросов, имеющий колонку pageXML, с полученным запросом XML_NameU. В результате вместо имени файла получим имя страницы.
Применение типовых запросов
Перечисленные запросы размещены в шаблоне Tmplt.xlsx и готовы к использованию. Для применения нужно ввести полный путь к файлу Visio на первом листе шаблона. После этого можно либо загружать результат нужного запроса на лист Excel, либо создавать свои запросы для преобразования полученных результатов к нужному виду.
На рисунке ниже показаны зависимости между запросами.
Функция UnzipContents предоставляет доступ к файлам пакета и используется во всех остальных запросах.
Запросы PageNames, PageRels и XML_NameU самостоятельного значения не имеют и предназначены для объединения с типовыми запросами для раскрытия ссылок на файлы страниц документа Visio.
Merge1 — приведен исключительно в качестве примера объединения типового запроса с служебным, раскрывающим имена страниц.
Остальные четыре запроса — это собственно типовые запросы, отражающие в табличном виде свойства шейпов и таблицы соединений между шейпами.