Partager via


Méthode Application.SysCmd (Access)

Utilisez la méthode SysCmd pour afficher une mesure de progression ou un texte spécifié facultatif dans la barre d’état, renvoyer des informations sur Microsoft Access et ses fichiers associés, ou renvoyer l’état d’un objet de base de données spécifié (pour indiquer si l’objet est ouvert, s’il s’agit d’un nouvel objet ou a été modifié mais pas enregistré). Variante.

Syntaxe

expression.SysCmd (Action, Argument2, Argument3)

expressionUne variable qui représente un objetApplication.

Paramètres

Nom Requis/Facultatif Type de données Description
Action Requis AcSysCmdAction Constante AcSysCmdAction qui identifie le type d’action à entreprendre. Cet ensemble de constantes s’applique à une jauge de progression. La méthode SysCmd retourne une valeur Null si ces actions réussissent. Sinon, Access génère une erreur d’exécution.
Argument2 Facultatif Variante Le texte à afficher aligné à gauche dans la barre d’état. Cet argument est requis lorsque l’argument Action est acSysCmdInitMeter, acSysCmdUpdateMeter ou acSysCmdSetStatus ; cet argument n’est pas valide pour les autres valeurs d’argument Action .

REMARQUE : lorsque vous spécifiez la valeur acSysCmdGetObjectState pour le paramètre Action , vous devez spécifier la constante AcObjectType appropriée.
Argument3 Facultatif Variante Expression numérique qui contrôle l’affichage de la jauge de progression. Cet argument est requis lorsque l’argument Action est acSysCmdInitMeter ; cet argument n’est pas valide pour les autres valeurs d’argument Action .

REMARQUE : lorsque vous spécifiez la valeur acSysCmdGetObjectState pour le paramètre Action , vous devez spécifier le nom de l’objet de base de données.

Valeur renvoyée

Variant

Remarques

Par exemple, si vous créez un Assistant personnalisé qui crée un nouveau formulaire, vous pouvez utiliser la méthode SysCmd pour afficher une jauge d’avancement indiquant la progression de votre Assistant dans la construction du formulaire.

Lorsque vous utilisez les diverses actions de la jauge d’avancement avec la méthode SysCmd, vous pouvez afficher la jauge d’avancement dans la barre d’état pour une opération dont la durée ou le nombre d’étapes est déterminé, et la mettre à jour pour suivre la progression de l’opération.

Pour afficher une mesure de progression dans la barre d’état, vous devez d’abord appeler la méthode SysCmd avec l’argument Action acSysCmdInitMeter et les arguments Text et Value. Lorsque l’argument Action est acSysCmdInitMeter, l’argument Value est la valeur maximale du compteur, ou 100 %.

Pour mettre à jour le compteur afin d’afficher la progression de l’opération, appelez la méthode SysCmd avec l’argument AcSysCmdUpdateMeterAction et l’argument Value . Lorsque l’argument Action est acSysCmdUpdateMeter, la méthode SysCmd utilise l’argument Value pour calculer le pourcentage affiché par le compteur. Par exemple, si vous définissez la valeur maximale à 200, puis mettez à jour la jauge avec une valeur de 100, la jauge de progression sera à moitié remplie.

Vous pouvez également modifier le texte affiché dans la barre d’état en appelant la méthode SysCmd avec l’argument ActionacSysCmdSetStatus et l’argument Text. Par exemple, pendant un tri vous pouvez modifier le texte en « Trier... ». Lorsque le tri est terminé, vous devez réinitialiser la barre d’état en supprimant le texte. L’argument Text peut contenir environ 80 caractères. Étant donné que le texte de la barre d’état est affiché à l’aide d’une police proportionnelle, le nombre réel de caractères que vous pouvez afficher est déterminé par la largeur totale de tous les caractères spécifiés par l’argument Texte .

Si vous augmentez la largeur du texte de la barre d’état, vous diminuez la longueur de la jauge. Si le texte est plus long que la barre d’état et que l’argument Action est acSysCmdInitMeter, la méthode SysCmd ignore le texte et n’affiche rien dans la barre d’état. Si le texte est plus long que la barre d’état et que l’argument Action est acSysCmdSetStatus, la méthode SysCmd tronque le texte pour l’adapter à la barre d’état.

Vous ne pouvez pas définir le texte de la barre d’état à une chaîne de longueur nulle (« »). Si vous souhaitez supprimer le texte existant de la barre d’état, définissez l’argument Texte sur un espace unique. L’exemple suivant illustre comment supprimer le texte de la barre d’état :

varReturn = SysCmd(acSysCmdInitMeter, " ", 100) 
varReturn = SysCmd(acSysCmdSetStatus, " ")

Si le compteur de progression s’affiche déjà lorsque vous définissez le texte en appelant la méthode SysCmd avec l’argument ActionacSysCmdSetStatus, la méthode SysCmd supprime automatiquement le compteur.

Appelez la méthode SysCmd avec d’autres actions pour déterminer les informations système sur Access, notamment le numéro de version d’Access en cours d’exécution, s’il s’agit d’une version d’exécution, l’emplacement du fichier exécutable Access, le paramètre de l’argument /profile spécifié dans la ligne de commande et le nom d’un fichier .ini associé à Access.

Remarque

Les paramètres généraux et personnalisés pour Access étant désormais stockés dans le Registre Windows, vous n’aurez probablement pas besoin d’un fichier .ini avec votre application Access. L’argument ActionacSysCmdIniFile existe pour la compatibilité avec les versions antérieures d’Access.

Appelez la méthode SysCmd avec l’argument AcSysCmdGetObjectStateAction et les arguments ObjectType et ObjectName pour renvoyer l’état d’un objet de base de données spécifié. Un objet peut être dans un des quatre états possibles : non ouvert ou inexistant, ouvert, nouveau, ou modifié mais pas enregistré.

Par exemple, supposons que vous construisiez un assistant qui insère un nouveau champ dans un tableau. Pour ceci, vous devez savoir si la structure du tableau a été modifiée mais non sauvegardée, afin de pouvoir l’enregistrer avant sa modification. Vous pouvez vérifier la valeur renvoyée par la méthode SysCmdpour déterminer l’état du tableau.

La méthode SysCmd avec l’argument acSysCmdGetObjectStateAction peut retourner n’importe quelle combinaison des constantes suivantes.

Constante État de l'objet de base de données Valeur
acObjStateOpen Ouvert 1
acObjStateDirty Conception modifiée, mais non enregistrée 2
acObjStateNew Nouveau 4

Remarque

Si l’objet référencé par l’argument ObjectName n’est pas ouvert ou n’existe pas, la méthode SysCmd retourne la valeur zéro.

Le code suivant peut être utilisé pour activer l’utilisation de votre contrôle ActiveX dans des expressions lorsque le contrôle ActiveX a été ajouté à un formulaire.

SysCmd 14, "<ActiveX Control GUID>" 

Remarque

  • Remplacez <ActiveX Control GUID> par l'identificateur unique global (GUID) qui identifie le contrôle ActiveX que vous voulez activer dans des expressions.
  • Vous ne pouvez pas supprimer un contrôle ActiveX une fois qu’il a été ajouté à la liste des contrôles autorisés.

Assistance et commentaires

Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.