Цитата |
---|
написал: ActiveWindow.PointsToScreenPixelsY(ActiveSheet.Shapes("Shape1").Top) |
Как позиционировать форму рядом с автофигурой, Необходимо вывести форму рядом с автофигурой, чтобы получилось меню данной автофигуры
Как позиционировать форму рядом с автофигурой, Необходимо вывести форму рядом с автофигурой, чтобы получилось меню данной автофигуры
Как позиционировать форму рядом с автофигурой, Необходимо вывести форму рядом с автофигурой, чтобы получилось меню данной автофигуры
13.09.2023 18:37:42
Доброго дня, друзья!
Необходимо вывести форму рядом с автофигурой на листе excel. Причем если просто передаю top и left автофигуры форме при startup position 0, получается ерунда. Я так понял, что они в разных координатных системах: приложение/экран... Есть у кого-то рабочий примерчик с решением? Буду признателен. Всю голову сломал(
Изменено: |
|
|
Временная диаграмма длительности, Как построить временную диаграмму длительностей
Автоматический график дежурств, Автоматизация заполнения графика дежурств
Временная диаграмма длительности, Как построить временную диаграмму длительностей
Определение суммы из одного списка по соответствию данных в другом списке и связи между ними
25.11.2016 14:12:08
Ігор Гончаренко, круто, спасибо! Локанично и универсально!
|
|
|
Определение суммы из одного списка по соответствию данных в другом списке и связи между ними
Определение суммы из одного списка по соответствию данных в другом списке и связи между ними
Отправка почты из excel. Настройка поля From, Как изменить поле фром?
Отправка почты из excel. Настройка поля From, Как изменить поле фром?
Макрос включения/отключения макросов!)
Макрос включения/отключения макросов!)
Макрос включения/отключения макросов!)
Пользовательская функция пересчитывается некорректно
Пользовательская функция пересчитывается некорректно
Пользовательская функция пересчитывается некорректно
Пользовательская функция пересчитывается некорректно
Пользовательская функция пересчитывается некорректно
Курсы по программированию на vba (уровень: продвинутый)
Макрос отрабатывет с разной скоростью
Подписать макрос сертификатом
Не подключается надстройка
Не подключается надстройка
12.07.2012 17:03:45
Добрый день, коллеги!
У меня есть надстройка, которая постоянно подключена к Excel, она дополняет Excel своей вкладкой с определенными кнопками. И все бы хорошо, но, когдя я создаю excel-документ из другой программы, моей вкладки как не бывало! Если сохранить-закрыть-открыть документ, вкладка чудесным образом появляется. Как быть в этой ситуации? Есть идеи? |
|
|
протестировать функцию в 64 битном Excel.
протестировать функцию в 64 битном Excel.
02.07.2012 15:03:18
Добрый день, уважаемые форумчание! Очень нужно протестировать функцию в 64 битном Excel.
Есть 3 варианта исполнения: 1) Public Declare Sub Sleep Lib "kernel32" (ByVal milliseconds As Long) 2) Public Declare Sub Sleep Lib "kernel32" (ByVal milliseconds As LongLong) 3) Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal milliseconds As Long) Помогите определить рабочий! Заранее благодарен! |
|
|
Объявление API
28.06.2012 13:51:12
По сложившейся традиции, сам отвечаю на свой вопрос)
... Предполагается, что операторы Declare без атрибута PtrSafe не совместимы с 64-разрядной версией Office 2010. Как было сказано ранее, есть две новых условных констант компиляции: VBA7 и Win64. Для обеспечения обратной совместимости с предыдущими версиями Office используется константа VBA7 (это более распространено), чтобы не допустить выполнение 64-разрядного кода в более ранних версиях Office. Для кода, который отличается для 32- и 64-разрядной версии, такого как вызов математического интерфейса API, который использует LongLong для 64-разрядных версий и Long для 32-разрядной версии, нужно использовать константу Win64. В следующем примере кода показано использование этих двух констант. VBAКопировать #if Win64 then Declare PtrSafe Function MyMathFunc Lib "User32" (ByVal N As LongLong) As LongLong #else Declare Function MyMathFunc Lib "User32" (ByVal N As Long) As Long #end if #if VBA7 then Declare PtrSafe Sub MessageBeep Lib "User32" (ByVal N AS Long) #else Declare Sub MessageBeep Lib "User32" (ByVal N AS Long) #end if Подводя итоги, можно сказать, что при написании 64-разрядного кода, который будет использоваться в предыдущих версиях Microsoft Office, следует применять константу условной компиляции VBA7. Однако при написании 32-разрядного кода в Office 2010 он работает как и в предыдущих версиях Microsoft Office без применения константы компиляции. Если требуется обеспечить использование 32-разрядных операторов для 32-разрядных версий и 64-разрядных операторов для 64-разрядных версий, лучше всего использовать константу условной компиляции Win64. Может кому-нибудь поможет) |
|
|
Объявление API
28.06.2012 13:05:25
Добрый день, коллеги! Есть два варианта объявления функции: для 32 и 64-битной систем:
Private Declare Function SetCurrentDirectoryA Lib "kernel32" (ByVal lpPathName As String) As Long Private Declare PtrSafe Function SetCurrentDirectoryA Lib "kernel32" (ByVal lpPathName As String) As Long Можно ли сделать объявление так, чтобы в зависимости от системы выбиралась нужная? Как определить тип системы? |
|
|
Настройка ленты!
Настройка ленты!
27.06.2012 13:23:01
Доброго времени суток, коллеги! Пытаюсь добавить собственную кнопку на ленту в надстройке, не выходит( Выдает ошибку: wrong number of arguments or invalid property asignment. Что делаю не так?
Код: <customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui"> <ribbon startFromScratch="false"> <tabs> <tab id="__ImportData" label="Импорт"> <group id="__grPlanImport" label="Импорт2"> <box id="__Box1" boxStyle="vertical"> <button id="__Button1" label="Получить данные" imageMso="BlogHomePage" size="large" onAction="ClickImportBtn" /> <button id="RunMyMacro" label="Run My Macro" onAction="ClickImportBtn"/> </box> </group> </tab> </tabs> </ribbon> </customUI> Ругается на onAction="ClickImportBtn". Макрос лежит в модуле надстройки mod_Main и не имеет входных аргументов. |
|
|