Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Именованный диапазон и макрос: из 2013-го офиса в 2010-й - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Именованный диапазон и макрос: из 2013-го офиса в 2010-й (Макросы/Sub)
Именованный диапазон и макрос: из 2013-го офиса в 2010-й
Rioran Дата: Понедельник, 27.04.2015, 10:37 | Сообщение № 1
Группа: Авторы
Ранг: Ветеран
Сообщений: 903
Репутация: 290 ±
Замечаний: 0% ±

Excel 2013
Всем привет.

Кто-нибудь сталкивался с ошибкой воспроизведения макроса с именованным диапазоном (созданным в 2013 офисе) при запуске на ПК с 2010-м офисом?

Есть некоторый объёмный проект на VBA. Большое количество функций программно обращаются к именованным диапазонам и именованным таблицам. Проект в формате .xlsb, первые 15 "шагов" проекта были сделаны на 2010-м офисе, последние 3 "шага" - на 2013-м.

Во вложении образец синтаксиса и объекта, используемые в оригинальной программе:

[vba]
Код
Sub Check()
     MsgBox "Значение именованной ячейки: " & [Rioran].Cells(1, 1).Value
End Sub
[/vba]
При воспроизведении на 2010-х офисах подсвечивает именованный диапазон и выводит сообщение ошибки: "Can't find project or library". На других 2013-х офисах работает корректно. При создании файла с нуля на 2010-х офисах тоже работает корректно и в 2010-м, и в 2013-м.

Просьба подсказать, как можно с наименьшими затратами большой проект, созданный в 2013-м офисе и завязанный на именованные диапазоны, сделать воспроизводимым на 2010-х версиях?
К сообщению приложен файл: Rio_Q_01.xlsm (16.0 Kb)


Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279
 
Ответить
СообщениеВсем привет.

Кто-нибудь сталкивался с ошибкой воспроизведения макроса с именованным диапазоном (созданным в 2013 офисе) при запуске на ПК с 2010-м офисом?

Есть некоторый объёмный проект на VBA. Большое количество функций программно обращаются к именованным диапазонам и именованным таблицам. Проект в формате .xlsb, первые 15 "шагов" проекта были сделаны на 2010-м офисе, последние 3 "шага" - на 2013-м.

Во вложении образец синтаксиса и объекта, используемые в оригинальной программе:

[vba]
Код
Sub Check()
     MsgBox "Значение именованной ячейки: " & [Rioran].Cells(1, 1).Value
End Sub
[/vba]
При воспроизведении на 2010-х офисах подсвечивает именованный диапазон и выводит сообщение ошибки: "Can't find project or library". На других 2013-х офисах работает корректно. При создании файла с нуля на 2010-х офисах тоже работает корректно и в 2010-м, и в 2013-м.

Просьба подсказать, как можно с наименьшими затратами большой проект, созданный в 2013-м офисе и завязанный на именованные диапазоны, сделать воспроизводимым на 2010-х версиях?

Автор - Rioran
Дата добавления - 27.04.2015 в 10:37
Manyasha Дата: Понедельник, 27.04.2015, 10:48 | Сообщение № 2
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация: 898 ±
Замечаний: 0% ±

Excel 2010, 2016
Роман, здравствуйте. Проверила на 2010-м, у меня работает.
Can't find project or library

А в Tools - references все ок? Нет не найденных библиотек?


ЯД: 410013299366744 WM: R193491431804
 
Ответить
СообщениеРоман, здравствуйте. Проверила на 2010-м, у меня работает.
Can't find project or library

А в Tools - references все ок? Нет не найденных библиотек?

Автор - Manyasha
Дата добавления - 27.04.2015 в 10:48
_Boroda_ Дата: Понедельник, 27.04.2015, 10:59 | Сообщение № 3
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16675
Репутация: 6481 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Роман, привет!
У меня работает и в 2013, и в 2010, и в 2003 после пересохранения в xls.
У тебя все обновления установлены?


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеРоман, привет!
У меня работает и в 2013, и в 2010, и в 2003 после пересохранения в xls.
У тебя все обновления установлены?

Автор - _Boroda_
Дата добавления - 27.04.2015 в 10:59
Rioran Дата: Понедельник, 27.04.2015, 11:06 | Сообщение № 4
Группа: Авторы
Ранг: Ветеран
Сообщений: 903
Репутация: 290 ±
Замечаний: 0% ±

Excel 2013
Manyasha, _Boroda_, день добрый.

Как раз проверяю по поводу обновлений и библиотек. Возникла мысль, что дело в объектной модели Эксель или Офиса - у меня она стоит 15-я, у клиентов 14-я.

К сообщению приложен файл: 4678782.png (14.5 Kb)


Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279


Сообщение отредактировал Rioran - Понедельник, 27.04.2015, 11:06
 
Ответить
СообщениеManyasha, _Boroda_, день добрый.

Как раз проверяю по поводу обновлений и библиотек. Возникла мысль, что дело в объектной модели Эксель или Офиса - у меня она стоит 15-я, у клиентов 14-я.


Автор - Rioran
Дата добавления - 27.04.2015 в 11:06
_Boroda_ Дата: Понедельник, 27.04.2015, 11:08 | Сообщение № 5
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16675
Репутация: 6481 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Конечно.
2013 = 15
2010= 14

Кстати, и в 2010, и в 2013 у меня твой макрос работает с 2-мя первыми галками в Тулсе-Референсе


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеКонечно.
2013 = 15
2010= 14

Кстати, и в 2010, и в 2013 у меня твой макрос работает с 2-мя первыми галками в Тулсе-Референсе

Автор - _Boroda_
Дата добавления - 27.04.2015 в 11:08
Rioran Дата: Понедельник, 27.04.2015, 11:19 | Сообщение № 6
Группа: Авторы
Ранг: Ветеран
Сообщений: 903
Репутация: 290 ±
Замечаний: 0% ±

Excel 2013
_Boroda_, странно. Возможно, мне в большом файле надо копать тогда в другую сторону, но пока нет идей в какую.

Ещё раз факты:

1). Большой файл сделан в 2013-м офисе и содержит много ссылок на именованные диапазоны.
2). При открытии большого файла в 2010-м офисе у клиентов выдаёт ошибку на именованные диапазоны в коде.
3). При открытии большого файла на других машинах с 2013-м офисом всё работает корректно.


Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279
 
Ответить
Сообщение_Boroda_, странно. Возможно, мне в большом файле надо копать тогда в другую сторону, но пока нет идей в какую.

Ещё раз факты:

1). Большой файл сделан в 2013-м офисе и содержит много ссылок на именованные диапазоны.
2). При открытии большого файла в 2010-м офисе у клиентов выдаёт ошибку на именованные диапазоны в коде.
3). При открытии большого файла на других машинах с 2013-м офисом всё работает корректно.

Автор - Rioran
Дата добавления - 27.04.2015 в 11:19
_Boroda_ Дата: Понедельник, 27.04.2015, 11:32 | Сообщение № 7
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16675
Репутация: 6481 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
А если так написать, у него проверить можешь?
[vba]
Код
MsgBox "Значение именованной ячейки: " & Range("Rioran").Value
[/vba]
Вернее, так[vba]
Код
MsgBox "Значение именованной ячейки: " & Range("Rioran").Cells(1, 1).Value
[/vba]


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеА если так написать, у него проверить можешь?
[vba]
Код
MsgBox "Значение именованной ячейки: " & Range("Rioran").Value
[/vba]
Вернее, так[vba]
Код
MsgBox "Значение именованной ячейки: " & Range("Rioran").Cells(1, 1).Value
[/vba]

Автор - _Boroda_
Дата добавления - 27.04.2015 в 11:32
Manyasha Дата: Понедельник, 27.04.2015, 11:48 | Сообщение № 8
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация: 898 ±
Замечаний: 0% ±

Excel 2010, 2016
Роман, а что за библиотека adHocReportingEexcelClientlib? У меня такой нет. Может попробовать ее отключить в исходном файле?


ЯД: 410013299366744 WM: R193491431804
 
Ответить
СообщениеРоман, а что за библиотека adHocReportingEexcelClientlib? У меня такой нет. Может попробовать ее отключить в исходном файле?

Автор - Manyasha
Дата добавления - 27.04.2015 в 11:48
Rioran Дата: Понедельник, 27.04.2015, 12:06 | Сообщение № 9
Группа: Авторы
Ранг: Ветеран
Сообщений: 903
Репутация: 290 ±
Замечаний: 0% ±

Excel 2013
_Boroda_, спасибо, предварительное тестирование показывает, что это может помочь. Перебью синтаксис, проверю и отпишу позже.
Марина, эта библиотека общая для компании, есть по умолчанию у всех, к делу относится не должна.


Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279


Сообщение отредактировал Rioran - Понедельник, 27.04.2015, 12:07
 
Ответить
Сообщение_Boroda_, спасибо, предварительное тестирование показывает, что это может помочь. Перебью синтаксис, проверю и отпишу позже.
Марина, эта библиотека общая для компании, есть по умолчанию у всех, к делу относится не должна.

Автор - Rioran
Дата добавления - 27.04.2015 в 12:06
Rioran Дата: Понедельник, 27.04.2015, 14:17 | Сообщение № 10
Группа: Авторы
Ранг: Ветеран
Сообщений: 903
Репутация: 290 ±
Замечаний: 0% ±

Excel 2013
_Boroda_, переделал синтаксис проекта в соответствии с твоим предложением. Теперь с тем же текстом ошибки ("Can't find project or library") мне выделяет метод "Left", который должен работать независимо от версии офиса.


Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279
 
Ответить
Сообщение_Boroda_, переделал синтаксис проекта в соответствии с твоим предложением. Теперь с тем же текстом ошибки ("Can't find project or library") мне выделяет метод "Left", который должен работать независимо от версии офиса.

Автор - Rioran
Дата добавления - 27.04.2015 в 14:17
RAN Дата: Понедельник, 27.04.2015, 14:23 | Сообщение № 11
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
С Left не сталкивался, а вот Trim - было не однократно. Скачиваю файл, Trim не работает, стоит галка миссигн. Снимаю, все начинает работать. Что за что цеплялось, так и не понял. Хотя тоже от версии зависеть не должен. Возможно, цепляется за старый проект.


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеС Left не сталкивался, а вот Trim - было не однократно. Скачиваю файл, Trim не работает, стоит галка миссигн. Снимаю, все начинает работать. Что за что цеплялось, так и не понял. Хотя тоже от версии зависеть не должен. Возможно, цепляется за старый проект.

Автор - RAN
Дата добавления - 27.04.2015 в 14:23
Rioran Дата: Понедельник, 27.04.2015, 14:39 | Сообщение № 12
Группа: Авторы
Ранг: Ветеран
Сообщений: 903
Репутация: 290 ±
Замечаний: 0% ±

Excel 2013
RAN, можно поподробнее, что за галочка такая, где живет?


Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279
 
Ответить
СообщениеRAN, можно поподробнее, что за галочка такая, где живет?

Автор - Rioran
Дата добавления - 27.04.2015 в 14:39
nilem Дата: Понедельник, 27.04.2015, 14:42 | Сообщение № 13
Группа: Авторы
Ранг: Старожил
Сообщений: 1613
Репутация: 563 ±
Замечаний: 0% ±

Excel 2013, 2016
Бывало много раз с Left, Right, Format, Len, Trim. Наверняка отсутствует какая-то библиотека (или присутствует, но на разных компах лежит в разных местах).


Яндекс.Деньги 4100159601573
 
Ответить
СообщениеБывало много раз с Left, Right, Format, Len, Trim. Наверняка отсутствует какая-то библиотека (или присутствует, но на разных компах лежит в разных местах).

Автор - nilem
Дата добавления - 27.04.2015 в 14:42
RAN Дата: Понедельник, 27.04.2015, 15:02 | Сообщение № 14
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010


Быть или не быть, вот в чем загвоздка!
 
Ответить
Сообщение
где живет

Тутоти

Автор - RAN
Дата добавления - 27.04.2015 в 15:02
Skif-F Дата: Понедельник, 27.04.2015, 15:26 | Сообщение № 15
Группа: Проверенные
Ранг: Участник
Сообщений: 73
Репутация: 14 ±
Замечаний: 0% ±

Excel 2007, 2010, 2013, 2016
Может влиять даже adHocReportingEexcelClientlib. Возможно, в 2010 офисе он как-то не так работает.
У меня однажды MSCOMCTL.OCX задурил, тоже Left, Right, Format, Len, Trim перестали работать. С тех пор я от MSCOMCTL.OCX отказался.
 
Ответить
СообщениеМожет влиять даже adHocReportingEexcelClientlib. Возможно, в 2010 офисе он как-то не так работает.
У меня однажды MSCOMCTL.OCX задурил, тоже Left, Right, Format, Len, Trim перестали работать. С тех пор я от MSCOMCTL.OCX отказался.

Автор - Skif-F
Дата добавления - 27.04.2015 в 15:26
Manyasha Дата: Понедельник, 27.04.2015, 15:48 | Сообщение № 16
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация: 898 ±
Замечаний: 0% ±

Excel 2010, 2016
Роман, если других вариантов не будет, то можно попробовать удалить не найденные библиотеки, а потом подключить необходимые для работы.
На примере Microsoft Excel 14.0 Object Library

Посмотреть параметры всех подключенных библиотек можно так:
К сообщению приложен файл: 111.xlsm (19.8 Kb)


ЯД: 410013299366744 WM: R193491431804
 
Ответить
СообщениеРоман, если других вариантов не будет, то можно попробовать удалить не найденные библиотеки, а потом подключить необходимые для работы.
На примере Microsoft Excel 14.0 Object Library

Посмотреть параметры всех подключенных библиотек можно так:

Автор - Manyasha
Дата добавления - 27.04.2015 в 15:48
Rioran Дата: Понедельник, 27.04.2015, 16:26 | Сообщение № 17
Группа: Авторы
Ранг: Ветеран
Сообщений: 903
Репутация: 290 ±
Замечаний: 0% ±

Excel 2013
Manyasha, спасибо, любопытные возможности, надо будет ознакомиться.

Благодарю всех за участие, вопрос решился. Что именно сыграло - сказать трудно, сделал сразу много чего:

1). Отключил библиотеку "AdHoc (...)" и надстройку СОМ Inquire.
2). Сохранил документ, перезапустил Excel 2013.
3). Собрал файл с нуля, копируя данные как значения.
4). В коде заменил обращения с [Name] на Range("Name")
5). Положил в кофе на одну ложку сахара больше, чем обычно.
6). Перепрописал имена диапазонов, формулы и подключения к SQL базам вручную.
7). Избыточные страницы просто НЕ копировал в новую версию файла.

В итоге файл стал весить в 3 раза меньше (хотя я, вроде, и так пристально следил за чистотой). И, что главное - пользователи 2010-х офисов наконец-то смогли его использовать. Особенно, мне кажется, помог пункт номер 5.


Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279
 
Ответить
СообщениеManyasha, спасибо, любопытные возможности, надо будет ознакомиться.

Благодарю всех за участие, вопрос решился. Что именно сыграло - сказать трудно, сделал сразу много чего:

1). Отключил библиотеку "AdHoc (...)" и надстройку СОМ Inquire.
2). Сохранил документ, перезапустил Excel 2013.
3). Собрал файл с нуля, копируя данные как значения.
4). В коде заменил обращения с [Name] на Range("Name")
5). Положил в кофе на одну ложку сахара больше, чем обычно.
6). Перепрописал имена диапазонов, формулы и подключения к SQL базам вручную.
7). Избыточные страницы просто НЕ копировал в новую версию файла.

В итоге файл стал весить в 3 раза меньше (хотя я, вроде, и так пристально следил за чистотой). И, что главное - пользователи 2010-х офисов наконец-то смогли его использовать. Особенно, мне кажется, помог пункт номер 5.

Автор - Rioran
Дата добавления - 27.04.2015 в 16:26
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Именованный диапазон и макрос: из 2013-го офиса в 2010-й (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!