Страница: 1 |
Вопрос: Set ctrl = bar.FindControl(Tag:="FromEToR&quo | Добавлено: 28.09.06 14:52 |
Автор вопроса: ![]() |
Помогите, кто знает в чем ошибка пишет "Object variable or With blok variable not set"
Sub PanelTranslate() Dim bar As CommandBar Dim ctrl As CommandBarButton Dim found As Boolean found = False For Each bar In CommandBars If bar.Name = "Trans" Then found = True Next If Not found Then CommandBars.Add Name:="Trans", Position:=msoBarTop Ругается на эту строчку -> Set ctrl = bar.FindControl(Tag:="FromEToR") If ctrl Is Nothing Then Set ctrl = bar.Controls.Add(Type:=msoControlButton) With ctrl .Caption = "ER" .OnAction = "FromEToR" .TooltipText = "FromEToR" .DescriptionText = "Ïåðåâîä â ðóññêóþ ðàñêëàäêó êëàâèàòóðû" .Style = msoButtonIconAndCaption .Tag = "FromEToR" End With End If Set ctrl = bar.FindControl(Tag:="FromRToE") If ctrl Is Nothing Then Set ctrl = bar.Controls.Add(Type:=msoControlButton) With ctrl .Caption = "RE" .OnAction = "FromRToE" .TooltipText = "FromRToE" .DescriptionText = "Ïåðåâîä â àíãëèéñêóþ ðàñêëàäêó êëàâèàòóðû" .Style = msoButtonIconAndCaption .Tag = "FromRToE" .BeginGroup = True End With End If Set ctrl = bar.FindControl(Tag:="FromRuToLat") If ctrl Is Nothing Then Set ctrl = bar.Controls.Add(Type:=msoControlButton) With ctrl .Caption = "RL" .OnAction = "FromRuToLat" .TooltipText = "FromRuToLat" .DescriptionText = "Ïåðåâîä â ëàòèíèöó" .Style = msoButtonIconAndCaption .Tag = "FromRuToLat" .BeginGroup = True End With End If bar.Visible = True End Sub |
Ответы | Всего ответов: 3 |
Номер ответа: 1 Автор ответа: ![]() ![]() ![]() ![]() ICQ: 334781088 Вопросов: 108 Ответов: 2822 |
Профиль | Цитата | #1 | Добавлено: 28.09.06 16:57 |
Не нравицца мне этот шмот кода
For Each bar In CommandBars If bar.Name = "Trans" Then found = True Next If Not found Then CommandBars.Add Name:="Trans", Position:=msoBarTop 'Ругается на эту строчку -> Set ctrl = bar.FindControl(Tag:="FromEToR" ![]() Ты юзаешь bar вне цикла For...Each Попробуй вместо If bar.Name = "Trans" Then found = True If bar.Name = "Trans" Then found = True Exit For End if |
Номер ответа: 2 Автор ответа: ![]() ![]() ![]() ![]() ICQ: 334781088 Вопросов: 108 Ответов: 2822 |
Профиль | Цитата | #2 | Добавлено: 28.09.06 17:01 |
И еще, вместо
If Not found Then CommandBars.Add Name:="Trans", Position:=msoBarTop If Not found Then Set bar = CommandBars.Add(Name:="Trans", Position:=msoBarTop) |
Номер ответа: 3 Автор ответа: ![]() ![]() ![]() ![]() ICQ: 334781088 Вопросов: 108 Ответов: 2822 |
Профиль | Цитата | #3 | Добавлено: 28.09.06 17:01 |
рррррр.
End if забыл ![]() |
Страница: 1 |
|