Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à : Access 2013, Office 2013
Met à jour les objets dans la collection spécifiée pour refléter le schéma actuel de la base de données.
Syntaxe
expression . Actualiser
expression Variable qui représente un objet Fields.
Remarques
Pour déterminer la position utilisée par le moteur de base de données Microsoft Access pour les objets Field dans la collection Fields d'un objet QueryDef, Recordset ou TableDef, utilisez la propriété OrdinalPosition de chaque objet Field. La modification de la propriété OrdinalPosition d'un objet Field ne peut pas modifier l'ordre des objets Field dans la collection tant que vous n'utilisez pas la méthode Refresh.
Utilisez la méthode Refresh dans les environnements multi-utilisateurs dans lesquels les autres utilisateurs peuvent modifier la base de données. Vous avez peut-être besoin également de l'utiliser dans des collections concernées indirectement par les modifications apportées à la base de données. Par exemple, si vous modifiez une collection Users, il est peut-être nécessaire d'actualiser une collection Groups avant d'utiliser cette collection Groups.
Une collection est remplie d'objets lors de son premier référencement et ne reflète pas automatiquement les modifications que les autres utilisateurs apportent par la suite. Si vous pensez qu'une collection a pu être modifiée, appelez la méthode Refresh sur la collection juste avant d'effectuer, dans votre application, une tâche quelconque qui exige la présence ou l'absence d'un objet particulier de la collection. De cette façon, vous êtes assuré que la collection est aussi à jour que possible. En revanche, il faut savoir que l'utilisation de Refresh peut ralentir inutilement les performances.
Exemple
Dans cet exemple, la méthode Refresh est utilisée pour mettre à jour la collection Fields de la table Catégories à l'aide des modifications des données OrdinalPosition. L'ordre de la collection Fields ne change qu'après utilisation de la méthode Refresh.
Sub RefreshX()
Dim dbsNorthwind As Database
Dim tdfEmployees As TableDef
Dim aintPosition() As Integer
Dim astrFieldName() As String
Dim intTemp As Integer
Dim fldLoop As Field
Set dbsNorthwind = OpenDatabase("Northwind.mdb")
Set tdfEmployees = dbsNorthwind.TableDefs("Categories")
With tdfEmployees
' Display original OrdinalPosition data and store it
' in an array.
Debug.Print _
"Original OrdinalPosition data in TableDef."
ReDim aintPosition(0 To .Fields.Count - 1) As Integer
ReDim astrFieldName(0 To .Fields.Count - 1) As String
For intTemp = 0 To .Fields.Count - 1
aintPosition(intTemp) = _
.Fields(intTemp).OrdinalPosition
astrFieldName(intTemp) = .Fields(intTemp).Name
Debug.Print , aintPosition(intTemp), _
astrFieldName(intTemp)
Next intTemp
' Change OrdinalPosition data.
For Each fldLoop In .Fields
fldLoop.OrdinalPosition = _
100 - fldLoop.OrdinalPosition
Next fldLoop
Set fldLoop = Nothing
' Print new data.
Debug.Print "New OrdinalPosition data before Refresh."
For Each fldLoop In .Fields
Debug.Print , fldLoop.OrdinalPosition, fldLoop.Name
Next fldLoop
.Fields.Refresh
' Print new data, showing how the field order has been
' changed.
Debug.Print "New OrdinalPosition data after Refresh."
For Each fldLoop In .Fields
Debug.Print , fldLoop.OrdinalPosition, fldLoop.Name
Next fldLoop
' Restore original OrdinalPosition data.
For intTemp = 0 To .Fields.Count - 1
.Fields(astrFieldName(intTemp)).OrdinalPosition = _
aintPosition(intTemp)
Next intTemp
End With
dbsNorthwind.Close
End Sub