Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
29.09.2004, 20:32
|
|||
|---|---|---|---|
|
|||
Работа с формами! Word (VBA) |
|||
|
#18+
Доброго времени суток... У меня есть проблемма, я изучаю VBA и сталкнулся с необходимостью использовать формы. В общем я не знаю как привязать к форме какие либо функции, например: мне надо, что бы в определенной строчке (Lable) при вызове формы отображалось сочетание клавиш для определенного макроса. Я уже перерыл всю книгу VBA 2002 и в принципе ничего подобного не нашел, там только примеры использования форм, но не привязка какого либо макроса к самой форме. В хелпе тоже особо существенного не смог найти, единственное, что я нашел это initialize. На сколько я понимаю это зарузка каких - либо параметров в форму при её загрузке. В общем я в полной растерянности, так как не знаю как с этим работать. Единственное, что я смог это сделать что бы при нажатии кнопки вылетал мэсадж бокс, с требуемой информацией, а надо что бы эта информация была в нужном мне Lable. Помогите разобраться, или хотя бы направте мои мысли в нужную сторону. Заранее благодарен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
29.09.2004, 20:39
|
|||
|---|---|---|---|
Работа с формами! Word (VBA) |
|||
|
#18+
GotarЕдинственное, что я смог это сделать что бы при нажатии кнопки вылетал мэсадж бокс, с требуемой информацией, а надо что бы эта информация была в нужном мне Lable. Вы сделали самое главное :) Теперь вместо MsgBox напишите Label.Caption = ваша информация ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.09.2004, 18:35
|
|||
|---|---|---|---|
|
|||
Работа с формами! Word (VBA) |
|||
|
#18+
Спасибо за ответ, но проблемма немного в другом.... Есть форма.. Sub Form1_initialize() допустим есть лэйбл1 CustomizationContext = ActiveDocument For Each myKey1 In _ KeysBoundTo(KeyCategory:=wdKeyCategoryCommand, _ Command:="a_Obshiy_zagalovok") myStr1 = myStr1 & myKey1.KeyString & vbCr Next myKey1 Label1.Caption = myStr1 Но при запуске формы лэйбл1 остается пустым... Мое подозрение в том, что я не правильно понимаю структуру формы и метод её програмирования. Где у меня ошибка? (По мимо ДНК 8)) ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.10.2004, 18:27
|
|||
|---|---|---|---|
|
|||
Работа с формами! Word (VBA) |
|||
|
#18+
up 8( Помогите.... ничего не выходит.... Как побороть форму? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.10.2004, 19:04
|
|||
|---|---|---|---|
Работа с формами! Word (VBA) |
|||
|
#18+
В АКЦЕСЕ я и сам непонимаю как онон варится, но предложил бы попробовать то же самое в Form_Load Magnus ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.10.2004, 19:21
|
|||
|---|---|---|---|
|
|||
Работа с формами! Word (VBA) |
|||
|
#18+
Тут трабла есть 8( форма вызывается form.show или form.load, но ... но ... но... как я понимаю то загрузка информации в форму происходит при private sub form_initialize() , но если посмотреть хелп, то там сказано, что при form.load -initialize не пашет.... работает только с form.show.... в общем мне друг сказал, что с этими формами вообще гемор..... Вот в каком то VB (еще в школе преподавали) вообще было клева, рисуешь форму, и скриптиш отдельный элемент будь то кнопка, фрейм, лэйбл, как пропрет, а в VBA хренушки, называется сначала угадай как 8(( Грусно как-то 8( Неужели не кто с формами не разобрался? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.10.2004, 19:27
|
|||
|---|---|---|---|
Работа с формами! Word (VBA) |
|||
|
#18+
initialize вызывается всегда при создании формы первый раз. Если после этого ты ее скроешь(Hide) и захочешь позже вновь пказать(Show) то событие уже не вызывается. Все-таки попробуй поместить код в Form_Load Magnus ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.10.2004, 20:01
|
|||
|---|---|---|---|
|
|||
Работа с формами! Word (VBA) |
|||
|
#18+
Не пашет 8(((( Блин я че-то торможу по страшному..... Короче создаем форму.. Кликаем - View Code там пишем Sub Form1_initialize() CustomizationContext = ActiveDocument For Each myKey1 In _ KeysBoundTo(KeyCategory:=wdKeyCategoryCommand, _ Command:="a_Obshiy_zagalovok") myStr1 = myStr1 & myKey1.KeyString & vbCr Next myKey1 Label1.Caption = myStr1 End Sub потом запускаем на прямую, либо делаем отдельный модуль вызывающий эту форму: Sub testing() Dim UserForm1 As UserForm Form1.Show (vbModeless) End Sub Я делаю так вот..... Форма вывалевается, но пустая, только с тем что я на ней по нарисовал.... Вопрос так это делается или не так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.10.2004, 20:06
|
|||
|---|---|---|---|
Работа с формами! Word (VBA) |
|||
|
#18+
Было б это VB я б тебе расписал. А так , пес его знает если честно. Придут знатоки VBA - расскажут. Magnus ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.10.2004, 20:09
|
|||
|---|---|---|---|
|
|||
Работа с формами! Word (VBA) |
|||
|
#18+
Можешь расписать как это в VB? Я пологаю что структура должна быть схожая... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.10.2004, 20:22
|
|||
|---|---|---|---|
|
|||
Работа с формами! Word (VBA) |
|||
|
#18+
Gotar Sub Form1_initialize() ... End Sub Есть предположение, что Sub Form1 _initialize не вызываается, т.к. она просто не привязана к какому-либо событию. Попробуйте перенести ваш код в UserForm _Initialize ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.10.2004, 20:26
|
|||
|---|---|---|---|
Работа с формами! Word (VBA) |
|||
|
#18+
Как уже сказал, я бы поместил этот код в Form_Load. Вероятно в Акцесе другая последовательность вызова событий. Magnus ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.10.2004, 20:32
|
|||
|---|---|---|---|
|
|||
Работа с формами! Word (VBA) |
|||
|
#18+
Magnus23Как уже сказал, я бы поместил этот код в Form_Load. Вероятно в Акцесе другая последовательность вызова событий. А я что-то вообще здесь упоминания про Access не нашел.... Просто вызов с префиксом Form1_ как-то вообще не похож на обработчик события. Но я с VBA тоже не работал уже очень давно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.10.2004, 20:33
|
|||
|---|---|---|---|
|
|||
Работа с формами! Word (VBA) |
|||
|
#18+
Более того, название треда Работа с формами! Word (VBA) :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.10.2004, 20:36
|
|||
|---|---|---|---|
|
|||
Работа с формами! Word (VBA) |
|||
|
#18+
Хм... не работает всеравно.... Я боюсь дело в том что не совсем ясна структура формы в VBA. Во первых есть тело формы, которая по идее несет основной код. Так же есть всякие более мелкие элементы которые живут непосредственно на форме, такие как фрэймы, кнопки, лэйблы и.т.д. Они скриптятся либо отдельно, либо непосредственно в самой форме. В книжке VBA 2002 есть пример, но он показывает как скриптить не посредственно саму форму, например чтоб вываливающиеся таблички содержали какую-то инфу, кнопки пахали и тд итп..... В книге вот такая структура: Private Sub UserForm_Initialize() ... ... ... Private Sub Frame_Click(в книге только клики рассматриваются)() ... ... ... End Sub Private Sub Lable_Click() ... ... ... End Sub Private Sub Button_Click() ... ... ... End Sub End Sub Вот такие пироги.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.10.2004, 20:44
|
|||
|---|---|---|---|
Работа с формами! Word (VBA) |
|||
|
#18+
Alexey Kudinov Magnus23Как уже сказал, я бы поместил этот код в Form_Load. Вероятно в Акцесе другая последовательность вызова событий. А я что-то вообще здесь упоминания про Access не нашел.... Просто вызов с префиксом Form1_ как-то вообще не похож на обработчик события. Но я с VBA тоже не работал уже очень давно. Это у меня снова глюки, VBA все время ассоциируется с акцесом :). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.10.2004, 20:50
|
|||
|---|---|---|---|
|
|||
Работа с формами! Word (VBA) |
|||
|
#18+
Gotar Последовательно опишите свои действия. Я делаю так: Открываю MSWord 2000 Иду Сервис-Макрос-Редактор Visual Basic Нажимаю Insert New Form (слева вверху) Появляется форма. Кладу на нее label из Toolbox Делаю DblClick на Label Появляется редактор VBA Делаю Ctrl+A Делаю Shift + Ins и вставляю следующий текст Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Появляется форма где вместо Label1 я вижу Shortcut к команде FileNew, а именно Ctrl+N А как делаете вы ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.10.2004, 20:59
|
|||
|---|---|---|---|
|
|||
Работа с формами! Word (VBA) |
|||
|
#18+
Будете смеяться.... у меня тоже это сработало гы гы... Тока вот в чем весь сыр бор, форма стряпана давно и на неё я клею макрос.... гы гы... Есть вариант в том что лэйбл слишком маленький и текст туда не влезает, хотя такое врядли возможно, скорее всего просто была бы часть тектса... Алексей, огромное вам спасибо, теперь я знаю куда двигаться! Вы меня очень выручили.... Бум сидеть и разбираться, да к стати, в связи с тем, что этот вопрос частично решон, появляется следующий 8))) Как можно через форму поменять разкладку горячих клавиш для макросов? То есть, нужно через форму считать клавиши, и влепить их сочетание как горячие клавиши для макроса 8) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=60&mobile=1&tid=2168780]: |
0ms |
get settings: |
7ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
65ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
| others: | 217ms |
| total: | 375ms |

| 0 / 0 |
