Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Use la propiedad RecordsetClone para hacer referencia al objeto Recordset de un formulario especificado por la propiedad RecordSource del formulario. Solo lectura.
Sintaxis
más sencilla.Conjunto de registrosClone
expresión Variable que representa un objeto Form.
Comentarios
El valor de la propiedad RecordsetClone es una copia de la consulta o tabla base especificada por la propiedad RecordSource del formulario. Si un formulario está basado en una consulta, por ejemplo, hacer referencia a la propiedad RecordsetClone es equivalente a copiar un objeto Recordset usando la misma consulta. Si luego se aplica un filtro al formulario, el objeto Recordset refleja el filtrado.
Esta propiedad solo está disponible si se utiliza Visual Basic y es de solo lectura en todas las vistas.
La propiedad RecordsetClone se usa para navegar u operar en los registros de un formulario independientemente del formulario en sí. Por ejemplo, puede usar la propiedad RecordsetClone cuando desee usar un método, como el método DAO Find , que no se puede usar con formularios.
Cuando se abre un nuevo objeto Recordset, su primer registro es el registro actual. Si usa uno de los métodos Buscar o Mover para hacer que cualquier otro registro del objeto Conjunto de registros sea actual, debe sincronizar el registro actual del objeto Conjunto de registros con el registro actual del formulario, asignando el valor de la propiedad Marcador DAO a la propiedad Marcador del formulario.
Ejemplo
En el ejemplo siguiente se usa la propiedad RecordsetClone para crear un nuevo clon del objeto Recordset desde el formulario Pedidos y, a continuación, se imprimen los nombres de los campos en la ventana Inmediato.
Sub Print_Field_Names()
Dim rst As Recordset, intI As Integer
Dim fld As Field
Set rst = Me.RecordsetClone
For Each fld in rst.Fields
' Print field names.
Debug.Print fld.Name
Next
End Sub
En el ejemplo siguiente se usa la propiedad RecordsetClone y el objeto Recordset para sincronizar un registro del conjunto de registros con el registro actual del formulario. Cuando se selecciona un nombre de compañía en un cuadro combinado, se usa el método FindFirst para buscar el registro de esa compañía y la propiedad DAO Bookmark del objeto Recordset se asigna a la propiedad Bookmark del formulario, haciendo que el formulario muestre el registro encontrado.
Sub SupplierID_AfterUpdate()
Dim rst As Recordset
Dim strSearchName As String
Set rst = Me.RecordsetClone
strSearchName = Str(Me!SupplierID)
rst.FindFirst "SupplierID = " & strSearchName
If rst.NoMatch Then
MsgBox "Record not found"
Else
Me.Bookmark = rst.Bookmark
End If
rst.Close
End Sub
Use la propiedad RecordCount para contar el número de registros de un objeto Recordset . En el ejemplo siguiente se muestra cómo puede combinar las propiedades RecordCount y RecordsetClone para contar los registros de un formulario.
Forms!Orders.RecordsetClone.MoveLast
MsgBox "My form contains " _
& Forms!Orders.RecordsetClone.RecordCount _
& " records.", vbInformation, "Record Count"
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.