Связывание диапазонов с фигурами


На протяжении многих лет мы связываем листы  Excel  с диапазонами Visio. На начальном этапе использовался Database Wizard, но с момента выхода Visio 2007 стала использоваться  функция Link Data to Shapes. Не всегда удавалось получить полный список диапазонов и здесь мы решили выяснить почему.

Для начала, мы создали образец листа Excel 2010 со строкой заголовка, и 3 строки данных в Листе 1

Затем мы использовали функцию Visio 2010  Link Data to Shapes и просмотрели книгу для применения ссылки…

Разумеется, первый лист был внесен в список доступных для добавления ссылки в диалоговом окне Data Selector:

Имена столбцов и выборочные значение были показаны, как и ожидалось:

Убедившись, что все работает, как следует, мы отменили диалог и вернулись к Excel, где использовали кнопку Format as Table 

Быстрый взгляд на диалоговое окно Name Manager  показал, что эта функция создает именованный диапазон под названием Table1:

Если после этого мы создадим  именованный диапазон, охватывающий те же клетки в этой таблице, тогда  Excel 2010 по умолчанию будет создавать примерно такую таблицу,  как показана ниже:

Таким образом, мы создаем диапазон под названием  Names путем выбора клеток в Excel и после этого заканчиваем с таблицей и именованным диапазоном, который относится к этой таблице:

К сожалению, ни один из этих диапазонов не появляется в Visio при попытке связаться с ними с помощью Data Selector. Решением этой задачи будет изменение Refers To   для  Names , чтобы использовать ссылки на ячейки, а не ссылки на таблицу:

Кроме того, вы можете убрать галочку Use table names in formulas  в Excel  до создания именованного диапазона. Это будет иметь тот же эффект, как редактирование Refers To  вручную:

Теперь, когда  диапазон Names не  использует новую функцию  Table   в Excel 2010, он становится видимым в диалоговом окне  Data Connector  в Visio:


Следовательно, мы могли  бы связать имя диапазона в качестве External Data Recordset  в Visio: