Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Аватара для Pozia

Ветеран


Сообщения: 2756
Благодарности: 211

Профиль | Отправить PM | Цитировать


Если из эксель скопировать клетку и вставить ее через специальную вставку в ворд - получится связь. Изменив значение клетки в эксель - меняется значение в ворд. Так вот если клетку в эксель куда то перенести - связь теряется. Если клетке эксель предварительно дать имя, и затем сделать связь, то так связь ворд эксель не потеряется, так как ворд будет ссылаться не на координату а на имя клетки, которое является уникальным для листа.
Далее. У меня есть файл эксель с большими расчетами, состоящий примерно из 2000 строк и 50 столбцов. Вот для этого диапазона клеток мне нужно задать каждой клетке произвольное имя - допустим в формате "_******", где * - цифра произвольная. Вот это мне и нужно сделать.

В нете нашел вот такой скрипт:
HTML код: Выделить весь код
Sub CopyFromExcel() 'Связывание таблиц Word и Excel по ячейкам. Необходимо выделить ячейки в Excel и ' соответствующиие им ячейки в Word Dim objExcel, c, i 'Если ошибка - В пункте меню Tools -> References отметить ' Microsoft Excel Object Library Set objExcel = GetObject(, "Excel.Application.11") For Each c In Selection.Cells i = i + 1 objExcel.Selection.Cells(i).Copy c.Select Selection.PasteExcelTable True, True, True Next c End Sub

который позволяет быстро скопировать клетку эксель в ворд создав связь. Работает так - выделяем клетку в ворд, выделяем в эксель, запускаем скрипт - ссылка готова. Но он почему то не работает. Выскакивает ошибка - Run-time error '429': ActiveX component can't create object. Вот если бы его починить, и дописать возможность автоматического присваивания произвольного имени клетке эксель при создании связи ворд эксель - это было бы самым шикарным вариантом... Такое можно осуществить?

-------
Жизни вглядись в глаза: Это то, что ты всегда искал? Это то, что ты всегда хотел? Да или нет?

Это сообщение посчитали полезным следующие участники:

Отправлено: 01:17, 21-01-2012 | #3