Страница: 1 |
Страница: 1 |
Вопрос: Set ctrl = bar.FindControl(Tag:="FromEToR&quo
Добавлено: 28.09.06 14:52
Автор вопроса:
Roman | ICQ: 343-133-143
Помогите, кто знает в чем ошибка пишет "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
Автор ответа: LamerOnLine
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
Автор ответа: LamerOnLine
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
Автор ответа: LamerOnLine
ICQ: 334781088
Вопросов: 108
Ответов: 2822
Профиль | | #3
Добавлено: 28.09.06 17:01
рррррр.
End if
забыл (