Método Application.DeleteControl (Access)

El método DeleteControl elimina un control especificado de un formulario.

Sintaxis

expresión. DeleteControl (FormName, ControlName)

expresión Variable que representa un objeto Application.

Parámetros

Nombre Obligatorio/opcional Tipo de datos Descripción
FormName Necesario String Nombre del formulario que contiene el control que desea eliminar.
ControlName Obligatorio String Nombre del control que desea eliminar.

Valor devuelto

Nothing

Comentarios

Por ejemplo, supongamos que tiene un procedimiento que se debe ejecutar la primera vez que cada usuario inicia sesión en la base de datos. Puede establecer la propiedad OnClick de un botón del formulario en este procedimiento. Una vez que el usuario ha iniciado sesión y ejecutado el procedimiento, puede usar el método DeleteControl para quitar dinámicamente el botón de comando del formulario.

El método DeleteControl solo está disponible en la vista Diseño del formulario o en la vista Diseño del informe, respectivamente.

Nota:

Si está creando un asistente que elimina un control de un formulario o informe, el asistente deberá abrir el formulario o informe en la vista Diseño para poder eliminar el control.

Ejemplo:

En el ejemplo siguiente se crea un formulario con un botón de comando, y se muestra un mensaje que pregunta al usuario si desea eliminarlo. Si el usuario elige , se elimina el botón de comando.

Sub DeleteCommandButton() 
 Dim frm As Form, ctlNew As Control 
 Dim strMsg As String, intResponse As Integer, _ 
 intDialog As Integer 
 
 ' Create new form and get pointer to it. 
 Set frm = CreateForm 
 ' Create new command button. 
 Set ctlNew = CreateControl(frm.Name, acCommandButton) 
 ' Restore form. 
 DoCmd.Restore 
 ' Set caption. 
 ctlNew.Caption = "New Command Button" 
 ' Size control. 
 ctlNew.SizeToFit 
 ' Prompt user to delete control. 
 strMsg = "About to delete " & ctlNew.Name &". Continue?" 
 ' Define buttons to be displayed in dialog box. 
 intDialog = vbYesNo + vbCritical + vbDefaultButton2 
 intResponse = MsgBox(strMsg, intDialog) 
 If intResponse = vbYes Then 
 ' Delete control. 
 DeleteControl frm.Name, ctlNew.Name 
 End If 
End Sub

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.