Amigos, neste codigo carrego um subMenu com os nome dos Forms abertos no sistema...
Supondo que tenho 2 forms abertos no momento: Form1 e Form2
Eu teria que ter uma função no módulo para cada form, Exemplo:
Function FormAbertoForm2()
Forms!Form1.SetFocus
End Function
Function FormAbertoForm1()
Forms!Form2.SetFocus
End Function
O que pretendo e apenas uma função... No entatanto o Nome da Função não admite concatencão de strings.
Tentei assim:
OnAction = "FormAberto(" & NomeForm(I) & ")"
Que corresponderá a: OnAction = FormAberto(Form1)
e na função:
Function FormAberto(Formulario as String)0
'Pensei que assim a função seria chamada ja que a expressão OnActio está como: FormAberto(Form1), e que Formulario receberia o texto entre os parenteses..
'Mas a função nem chegou a ser chamada.
End Function
Alguma ideia amigos?
Cumprimentos.
- Código:
Sub FormsAbertos()
Dim I As Integer
Dim cmdBar As CommandBar
Dim mnu As CommandBarButton
Call VerificaForms
delAtalho 'Apaga a barra de comando anterior caso ela exista
Set cmdBar = CommandBars.Add _
(Name:=Barra, position:=msoBarPopup, Temporary:=True)
For I = 0 To Count - 1
Set mnu = cmdBar.Controls.Add(Type:=msoControlButton)
With mnu
.Caption = NomeForm(I)
.OnAction = "FormAberto(" & NomeForm(I) & ")"
.FaceId = 1987
End With
Next I
End Sub
Function FormAbertoFrmForms()
Forms!FrmForms.SetFocus
End Function
Supondo que tenho 2 forms abertos no momento: Form1 e Form2
Eu teria que ter uma função no módulo para cada form, Exemplo:
Function FormAbertoForm2()
Forms!Form1.SetFocus
End Function
Function FormAbertoForm1()
Forms!Form2.SetFocus
End Function
O que pretendo e apenas uma função... No entatanto o Nome da Função não admite concatencão de strings.
Tentei assim:
OnAction = "FormAberto(" & NomeForm(I) & ")"
Que corresponderá a: OnAction = FormAberto(Form1)
e na função:
Function FormAberto(Formulario as String)0
'Pensei que assim a função seria chamada ja que a expressão OnActio está como: FormAberto(Form1), e que Formulario receberia o texto entre os parenteses..
'Mas a função nem chegou a ser chamada.
End Function
Alguma ideia amigos?
Cumprimentos.