Propriedade Form.OpenArgs (Access)
Determina a expressão de cadeia de caracteres especificada pelo argumento OpenArgs do método OpenForm que abriu um formulário. Variant de leitura/gravação.
Sintaxe
expressão. Openargs
expressão Uma variável que representa um objeto Form.
Comentários
Essa propriedade só está disponível usando uma macro ou usando o Visual Basic com o método OpenForm do objeto DoCmd . A configuração dessa propriedade é somente leitura em todos os modos de exibição.
Para usar a propriedade OpenArgs, abra um formulário usando o método OpenForm do objeto DoCmd e defina o argumento OpenArgs para a expressão de cadeia de caracteres desejada. A configuração da propriedade OpenArgs pode então ser utilizada no código do formulário, como em um procedimento de evento Open. Você também pode se referir à configuração da propriedade em uma macro, tais como uma macro Open ou uma expressão, como uma expressão que define a propriedade ControlSource para um controle no formulário.
Por exemplo, suponha que o formulário aberto seja uma lista de formulário contínuo de clientes. Se quiser que o foco se mova para um registro de cliente específico quando o formulário for aberto, defina a propriedade OpenArgs para o nome do cliente e, em seguida, use a ação FindRecord em uma macro Open para mover o foco para o registro do cliente com o nome especificado.
Exemplo
O exemplo a seguir usa a propriedade OpenArgs para abrir o formulário Employees para um registro de funcionário específico e demonstra como o método OpenForm define a propriedade OpenArgs . Você pode executar esse procedimento conforme apropriado; por exemplo, quando o evento AfterUpdate ocorre para uma caixa de diálogo personalizada usada para inserir novas informações sobre um funcionário.
Sub OpenToCallahan()
DoCmd.OpenForm "Employees", acNormal, , , acReadOnly, _
, "Callahan"
End Sub
Sub 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 If
End Sub
O exemplo a seguir mostra como usar a propriedade OpenArgs para impedir que um formulário seja aberto a partir do painel de navegação.
Private Sub Form_Open(Cancel As Integer)
If Me.OpenArgs() <> "Valid User" Then
MsgBox "You are not authorized to use this form!", _
vbExclamation + vbOKOnly, "Invalid Access"
Cancel = True
End If
End Sub
Suporte e comentários
Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.