Aplica-se a

Objeto Form

Objeto Report

Determina a expressão de cadeia especificada pelo argumento AbrirArgs do método AbrirFormulário que abriu um formulário. Variante de leitura/escrita.

expressão.AbrirArgs

expressão Obrigatório. Uma expressão que devolve um dos objetos na lista Aplica-se A.

Observações

Esta propriedade está disponível apenas se utilizar uma macro ou código VBA (Visual Basic for Applications) com o método AbrirFormulário do objeto DoCmd. Esta definição de propriedade é só de leitura em todas as vistas.

Para utilizar a propriedade AbrirArgs, abra um formulário com o método AbrirFormulário do objeto DoCmd e defina o argumento AbrirArgs para a expressão de cadeia pretendida. A definição da propriedade AbrirArgs pode ser utilizada no código do formulário, tal como Abrir procedimento de evento. Também pode consultar a definição de propriedade numa macro, tal como uma macro Abrir ou uma expressão, tal como uma expressão que define a propriedade OrigemDoControlo para um controlo no formulário.

Por exemplo, imaginemos que o formulário que abre é uma lista de formulário contínuo de clientes. Se quiser que o foco vá para o registo de um cliente específico quando o formulário é aberto, pode definir a propriedade AbrirArgs para o nome do cliente e, em seguida, utilizar a ação LocalizarRegisto numa macro Abrir para mover o foco para o registo do cliente com o nome especificado.

Exemplo

O exemplo seguinte utiliza a propriedade AbrirArgs para abrir o formulário Employees no registo de um funcionário específico e demonstra como o método AbrirFormulário define a propriedade AbrirArgs. Pode executar este procedimento conforme adequado — por exemplo, quando o evento DepoisDeAtualizar ocorre numa caixa de diálogo personalizada utilizada para introduzir novas informações sobre um funcionário.

Sub OpenToCallahan()    DoCmd.OpenForm "Employees", acNormal, , , _        acReadOnly, , "Callahan"End SubSub Form_Open(Cancel As Integer)    Dim strEmployeeName As String    ' If OpenArgs property contains employee name, find    ' corresponding employee record and display it on     ' form. For example,if the OpenArgs property     ' contains "Callahan", move to first "Callahan"     ' record.    strEmployeeName = Forms!Employees.OpenArgs    If Len(strEmployeeName) > 0 Then        DoCmd.GoToControl "LastName"        DoCmd.FindRecord strEmployeeName, , True, , _           True, , True    End IfEnd Sub

O exemplo seguinte utiliza o método FindFirst para localizar o funcionário nomeado na propriedade AbrirArgs.

Private Sub Form_Open(Cancel As Integer)    If Not IsNull(Me.OpenArgs) Then        Dim strEmployeeName As String        strEmployeeName = Me.OpenArgs        Dim RS As DAO.Recordset        Set RS = Me.RecordsetClone        RS.FindFirst "LastName = '" & _            strEmployeeName & "'"        If Not RS.NoMatch Then            Me.Bookmark = RS.Bookmark        End If    End IfEnd Sub

Precisa de mais ajuda?

Quer mais opções?

Explore os benefícios da subscrição, navegue em cursos de formação, saiba como proteger o seu dispositivo e muito mais.

As comunidades ajudam-no a colocar e a responder perguntas, a dar feedback e a ouvir especialistas com conhecimentos abrangentes.