Наткнулся на такую надстройку http://www.andypope.info/vba/ribboneditor.htm для создания пользовательских вкладок для Office 2007, в том числе и для Excel. По моему мнению - одна из лучших реализаций. Но, CustomUI.xml создаётся в кодировке ANSI, соответственно Excel не хочет показывать ленту в книге, если там присутствуют русские буквы. Кто-нибудь пробовал забороть? По коду посмотрел - используется MSXML2, по крайне мере, частично, но xml в файл читается и пишется средствами VBA. Как образом обеспечить получение строки из xml-файла в ANSI (пробовал вручную перекодировать в UTF-8 - тогда не работает) и запись строки в xml-файл в кодировке UTF-8?
Z - спасибо. Я уже смотрел Ribbon XML Editor - пока не впечатлил. К тому, что можно делать, используя Visual Studio (может за иключением присоединения растров и генерации синтаксиса Callback), ничем не отличается. Зато к combobox добавил getSelectionItemIndex, чего у этого элемента нет. Буду изучать использование ADODB.Stream - на сером форуме видел примеры использования в качестве перекодировки текста, авось и для ANIS<->UTF-8 приспособлю. Ещё раз спасибо.
слэн Увы, поиск тут по слову customUIeditor выдал только вашу просьбу >>но не понимает русского(или я чего-то не понимаю) - посветите кто чем может :)
Да, ладно. Вроде как подбираюсь. Погоняю немного, там ещё для TreeView надо было codepage шрифта поменять - может ещё какие проблемы будут - утром выложу.
Сергей Кр Спасибо за ссылку. К сожалению http://brazucanet.leafcreations.net/Application/Editors/RibbonEditor ничего нет. Сама проблема связана не с неверным отображением шрифтов, а с тем, что при кодировке ANSI файла customUI.xlm (где хранится описание ленты) с русскими буквами Excel эту ленту не показывает. Если перекодировать customUI.xml в кодировку UTF-8, то - показывает. С кракозяблами у меня нет. Проблему с кракозяблами в не UNICODE программах лечил принудительной сменой локали полностью на USA, а затем полной сменой на русскую. Был как-то такой подарок на компьютере от HP с предустановленной Win 7. Собственно, то что нужно изменил, да же в одном месте обработчик ошибок пришлось вставить, а то при выборе вкладкеи со стандартных msoImage расширение падало. Правда, почему-то расширение не работает у меня под Excel 2007 - не находит макрос, связанный с пунктом меню. В Excel 2010 - всё нормально, хотя тоже не решённая проблема - запуск preview не срабатывает. Выложил тут http://rghost.ru/36995167. Здесь нет места.
Не знаю, чем информация поможет, но: и оригинальный RibbonX Visual Designer у меня из четырех МО 2007 устанавливался только на одном (и то, потом 'слетел') - писал 'Не удается выполнить макрос..'
Простите, Андрей. Может, я один такой непутевый.. При попытке установки (копирую в папку AddIns)Вашей надстройки(и в МО2007 и в МО 2010) выдаются сообщения: 1.Can’t find project or library 2.Окошко 'ввести Password проекта’ Надстройка появляется на Ленте, но при попытке работы: ‘Не удается выполнить макрос 'btnShowDesigner_Clik'…..'
Если(к ней)установить еще и оригинальный RibbonEditor (правда, при нажатии 'OK'в окошке 'Надстройки'-> Excel просит их заменять друг на друга – может, им сделать, все-таки,разные названия не только в CommentText) то: начинают работать и RibbonEditor2007 и оргинальныйRibbonEditor (обе надстройки существуют на Ленте), но: работают обе - в 'режиме' оригинального RibbonEditor(т.е. опять не понимают кириллицу – проверял в других редакторах) P/S Не хотелось бы влачить трудодни без такой шикарной штучки.
Пароль на проект 123 Я ничего с controls не менял. Только отредактировал методы чтения/записи XML в clsEditOpenXML. Открываю Enter в проводнике - мне он постоянно не нужен.
Ситуация(у меня), к сожалению, повторяется. Установка в появляющемся (при вводе пароля) "Reference -RibbonXVisualDesigner" галки 'RibbonXVisualDesigner', а также установка/снятие MISSING-ов не помогает.
P/S Может (проще:)) 'выманить' у Вас Вашу версию МО (в которой все работает)..
Сергей Кр Скорее всего проблема с библиотекой MSCOMCTL.OCX (используется TreeView, ImageList, ListView, может ещё что) - поищите в инете: где взять и как зарегистрировать. Проще всего установить VB6 ;-) P. S. Надстройку я выложил ту, что получилась после доработки.