En savoir plus sur le code VBA Microsoft Access

Résumé:

Ce tutoriel vous aide à vous orienter vers les outils de programmation, parexemple, le code VBA dans Microsoft Access et vous diriger vers des ressources où vous pouvez en apprendre davantage sur la programmation.

Vous devez avoir utilisé des macros Access et très bien savoir combien il est complexe à utiliser . … .. est – ce pas? Mais savez-vous comment simplifier cette complexité en utilisant simplement les codes VBA dans Access.

Maintenant vous allez demander ce qu’est ce code VBA et comment l’utiliser? Eh bien, pour obtenir des réponses à de telles questions, il vous suffit de vous en tenir à ce message et d’obtenir toutes les informations et de simplifier votre style de travail dans MS Access.

Introduction à l’ accès VBA

VBA est un langage de programmation que vous pouvez utiliser pour créer une application puissante dans Access. VBA inclut de nombreuses commandes qui vous permettent d’effectuer de nombreuses opérations complexes et silencieuses en utilisant les macros Access.

Non seulement cela, vous pouvez étendre la puissance de VBA en utilisant les contrôles tiers et en écrivant vos propres fonctions / procédures pour des besoins spécifiques spécifiques. Vous pouvez également utiliser le code VBA pour intégrer votre accès avec d’autres programmes.

La programmation de Microsoft Access avec VBA peut être beaucoup plus facile si vous connaissez les raccourcis clavier pour les commandes les plus courantes et les bits de code les plus courants que vous utiliserez dans l’éditeur après le débogage de votre application Access.

[ cta-fr-729 ]

Comment faire pour activer les fonctions intégrées dans Access VBA

Savez-vous que vous pouvez activer les fonctions VBA intégrées dans votre application Access 2013/2016?   Veut savoir comment ensuite suivre ces instructions étape par étape.

Pour utiliser les fonctions VBA intégrées à votre accès   données de base, vous devrez activer la référence visuelle de base appelée “Visual Basic For Applications”.

  • Pour cela, il suffit d’ouvrir la base de données.Presse   Alt + F11 pour ouvrir le   Microsoft Visual Basic   Lorsque la fenêtre Microsoft Visual Basics’affiche, sélectionnez Références dans le menu Outils .
  • Lorsque lafenêtre Références apparaît, recherchez la référence appelée   Visual Basic pour applications   et assurez-vous qu’il est vérifié.
  • Ensuite, cliquez sur le bouton OK.
  • Maintenant, votre base de données d’accès est capable d’utiliser les fonctions VBA intégrées.

Code de programmation et de débogage VBA Common Access

Voici la liste des codes VBA courants qui vous aident à effectuer les tâches VBA, alors gardez-les à portée de main.

Pour ouvrir au formulaire en mode Formulaire:

DoCmd.OpenForm “formname“,acNormal

Pour apporter des modifications à la propriété de formulaire sur un formulaire ouvert:

Forms![formName].propertyName = newValue

Obtenir de la valeur à partir d’un contrôle sur un formulaire ouvert:

Forms![formName]![controlName].Value

Modifier la valeur d’un contrôle sur un formulaire ouvert:

Forms![formName]![controlName].Value = newValue

Changer pour contrôler la propriété sur un formulaire ouvert:

Forms![formName]![controlName].propertyName = newValue

Fermer un formulaire, enregistrer les modifications:

DoCmd.Close acForm, “formName“, acSaveYes

Imprimer un rapport:

DoCmd.OpenReport “reportName“, acViewNormal

Exécuter une requête d’action:

DoCmd.RunSQL “SQLstatement

Pour afficher un message simple

MsgBox “yourMessage

Pour demander oui / non question à l’écran.

variable = MsgBox(“yourMessage“, vbQuestion + vbYesNo)

AUSSI LIRE:

[Résolu] Microsoft Access ne peut pas ouvrir le formulaire ou le rapport

Navigation et sélection de code dans Vba

Vous pouvez utiliser ces raccourcis VBA dans la fenêtre de code et la fenêtre immédiate (qui vous permet d’exécuter du code à tout moment, directement sur place) pour simplifier votre style de travail.

Action Touche de raccourci
Déplace le curseur d’un caractère vers la droite
Sélectionnez le personnage à droite Maj + →
Déplace le curseur juste un mot Ctrl + →
Sélectionnez à la fin du mot Ctrl + Maj + →
Déplacer le curseur à gauche d’un caractère
Sélectionnez le caractère à gauche du curseur Maj + ←
Déplace le curseur à gauche d’un mot Ctrl + ←
Déplace le curseur au début de la ligne Accueil
Sélectionnez le texte au début de la ligne Maj + Accueil
Déplace le curseur jusqu’à la fin de la ligne Fin
Sélectionnez le texte jusqu’à la fin de la ligne Maj + Fin
Déplacer le curseur jusqu’à la ligne
Déplace le curseur sur la ligne
Déplace le curseur sur la procédure suivante Ctrl + ↓
Déplace le curseur sur la procédure précédente Ctrl + ↑
Faites défiler un écran vers le haut PgUp
Faites défiler vers le bas d’un écran PgDn
Aller en haut du module Ctrl + Accueil
Sélectionnez tout le texte en haut du module Ctrl + Maj + Accueil
Aller au bas du module Ctrl + Fin
Sélectionnez tout le texte en bas du module Ctrl + Maj + Fin
Couper la sélection Ctrl + X
Copier la sélection Ctrl + C
Coller la sélection Ctrl + V
Couper la ligne courante dans le presse-papiers Ctrl + Y
Supprimer à la fin du mot Ctrl + Supprimer
Supprimer le caractère ou le texte sélectionné Supprimer (Del)
Supprimer le caractère à gauche du curseur Retour arrière
Supprimer à la fin du mot Ctrl + Supprimer
Supprimer au début du mot Ctrl + Retour arrière
Annuler Ctrl + Z
Ligne de retrait Onglet
Ligne de sortie Maj + Tab
Trouver Ctrl + F
Remplacer Ctrl + H
Trouver Suivant F3
Rechercher Précédent Maj + F3
Obtenir de l’aide pour le mot actuellement sélectionné F1
Infos rapides Ctrl + I

Clés de raccourci générales de l’éditeur VBA

Le tableau suivant vous donnera la connaissance des touches de raccourci et de leurs fonctions disponibles dans l’éditeur Visual Basic, où vous allezécrire, modifier et exécuter votre code VBA.

Action Touche de raccourci
Basculer entre Access et l’éditeur VBA Alt + F11
Aide F1
Afficher le navigateur d’objets F2
Afficher les propriétés / événements F4
Afficher la fenêtre de code F7
Afficher la fenêtre Immédiat Ctrl + G
Afficher le menu contextuel Maj + F10 (ou clic droit)
Exécuter vers Sub / UserForm F5
Arrêter l’exécution du code Ctrl + Pause
Fermez l’éditeur VBA et revenez à Access Alt + Q

Touches de raccourci de débogage VBA

Le code dans le langage de programmation doit être écrit exactement, il ne peut y avoir aucune erreur ou bogue. S’il y a une erreur ou des bugs alors il montrera le problème de compilation. Heureusement, vous pouvez déboguer le code dans VBA rapidement avec ces raccourcis de débogage.

Action Touche de raccourci
Basculer le point d’arrêt F9
Entrez dans F8
Survoler Maj + F8
Sortir Ctrl + Maj + F8
Exécuter au curseur Ctrl + F8
Effacer tous les points d’arrêt Ctrl + F9

Important code VBA d’accès avec les exemples

ChangeLinkPath

Cette fonction est utilisée pour changer l’ancien chemin des tables liées en un nouveau chemin. La fonction le fait en supprimant les tables liées, puis en les reliant à la même table dans la base de données spécifiée dans le nouveau chemin.

Fonction publique ChangeLinkPath ( strNewPath As String) As String  

Dim dbs Comme DAO.Database  
Dim strTblName As String  
Dim ColTbl As Collection  
Dim intblbl As Integer  

Si strNewPath <> “” et Dir ( strNewPath ) <> “” Alors

      Définir colTbl = Nouvelle collection  
      Définir dbs = CurrentDb  

      Pour intTbl = dbs.TableDefs.Count – 1 à 0 Étape -1  
            Si dbs.TableDefs ( intTbl ) .Connect <> “” Et _  
                  Pas dbs.TableDefs (intTbl) .Connect Comme “*” & strNewPath Ensuite  
                  colTbl.Add dbs.TableDefs ( intTbl ) .Name  
                  dbs.TableDefs.Delete dbs.TableDefs ( intTbl ) .Name  
            Fin Si  
      Next intTbl  

      Pour intTbl = colTbl.Count à 1 étape -1  
            strTblName = colTbl ( intTbl )  
            DoCmd.TransferDatabase acLink , “Microsoft Access”, _  
                  strNewPath , acTable , strTblName , strTblName  
            Debug.Print “connexion faite à” “& strTblName &” ‘”  
      Next intTbl  

      Définir dbs = Nothing  
      Définir colTbl = Nothing  
      Debug.Print “FAIT!”  
      ChangeLinkPath = “FAIT!”  

Else
      Debug.Print “Nouveau chemin non fourni. Aucun changement effectué!”
      ChangeLinkPath = “Nouveau chemin non fourni. Aucune modification effectuée!”

Fin Si

Fonction de sortie  
Fonction de fin

ImportExportSpecification

Cette section de l’accès VBA contient la documentation pour tous les objets, propriétés, méthodes et événements contenus dans le modèle d’objet d’accès.

ImportExportSpecification   objet contient toutes les informations dont l’accès a besoin pour répéter une opération d’importation / exportation sans fournir d’entrée.

Vous devez utiliser le   Ajouter   méthode de   ImportExportSpecifications   collection pour créer une nouvelle   ImportExportSpecification   objetUtilisez l’ Execute   méthode pour exécuter une opération d’importation ou d’exportation enregistrée.

AUSSI LIRE:

Comment faire pour convertir des projets de données Access (fichier .Adp) au format de fichier de base de données Microsoft Access (.Accdb ou .Mdb)

ConcatenateFieldValues

Eh bien, cette fonction est basée sur un nom de fonction concaténer. Il est utilisé pour créer une chaîne concaténée à partir d’un seul champ de valeurs à partir des enregistrements entiers que vous souhaitez inclure dans la chaîne concaténée.

Les enregistrements à inclure, plus le champ à utiliser pour créer la chaîne concaténée, sont donnés par l’instruction SQL transmise à la fonction.

L’instruction SQL transmise doit renvoyer un seul champ pour que cette fonction fonctionne correctement. La valeur de la chaîne concaténée est donnée par la chaîne fournie à la fonction en tant que chaîne de délimitation.

Fonction publique ConcatenateFieldValues ( pstrSQL As String, _
      En option pstrDelim String = “”) As String

Dim strConcat Comme chaîne

‘====== Pour les commentaires ADO les 2 prochaines lignes et =======
‘====== décommenter les lignes ADO ci-dessous =======
Dim db As DAO.Database
Dim rs As DAO.Recordset
Sur l’erreur CV suivant
strConcat = “”
‘====== Pour ADO commenter les 2 prochaines lignes DAO et =======
‘====== décommenter les lignes ADO ci-dessous =======
Définir db = CurrentDb
Définissez rs = db.OpenRecordset ( pstrSQL )

‘====== Pour ADO décommenter les deux lignes suivantes et =====
‘====== commenter les lignes DAO ci-dessus et ci-dessous ======
‘Dim rs comme nouvel ADODB.Recordset
 rs.Open pstrSQL , CurrentProject.Connection , _
        adOpenKeyset , adLockOptimistic
Avec rs
      Si non .EOF Then
            . MoveFirst
            Ne faites pas .EOF
                  strConcat = strConcat & .Fields (0) & pstrDelim
                  . MoveNext
            Boucle
      Fin Si
      .Fermer
Fin avec
Set rs = Rien
‘====== Commenter les 2 lignes suivantes pour ADO ========
db.Fermer
Définir db = Nothing
Si Len ( strConcat )> 0 Alors strConcat = _
      Gauche ( strConcat , Len ( strConcat ) – Len ( pstrDelim ))
ConcatenateFieldValues = strConcat
Fonction de sortie
Fonction de fin

DeleteAllRelationships ()

DeleteAllRelationships () fonction   code est essentiellement utilisé pour supprimer toutes les relations dans la base de données en cours.

Dans certaines circonstances, la base de données d’accès ne parvient pas à afficher les relations entre les tables dans la fenêtre de relation. Puisque vous ne pouviez pas voir la relation ni vous   Impossible de les supprimer, ce qui prendra votre base de données à un état incohérent. Donc, pour de tels cas, ce code est fourni comme un correctif.

Fonction DeleteAllRelationships ( ) As String
‘AVERTISSEMENT: supprime toutes les relations dans la base de données en cours.
Dim db As Database ‘Current DB
Dim rex As Relations ‘Relations de currentDB .
Dim rel As Relation ‘Relation en cours de suppression.
Dim iKt As Integer ‘Nombre de relations supprimées.
Dim sMsg As String Chaîne MsgBox .

sMsg = “À propos de la suppression de TOUTES les relations entre les tables de la base de données en cours.” & vbCrLf & “Continuer?”
Si MsgBox ( sMsg , vbQuestion + vbYesNo + vbDefaultButton2, “Êtes-vous sûr?”) = VbNo Then
DeleteAllRelationships = “Opération annulée”
Fonction de sortie
Fin Si

Définir db = CurrentDb ( )
Définir rex = db.Relations
IKt = rex.Count
Do While rex.Count > 0
Debug.Print rex (0) .Name
rex.Delete rex (0) .Name
Boucle
DeleteAllRelationships = iKt & “relation (s) supprimée”
Fonction de fin

Copiez et collez simplement cette fonction dans un module. Appuyez sur Ctrl + G pour ouvrir la fenêtre d’exécution. Entrez:

? DeleteAllRelationships ()

Conclusion:

Heureusement, vous avez tous acquis beaucoup de connaissances sur le code Access VBA. EXPLOREZ VOS IDÉES SUR LA PROGRAMMATION AVEC ACCÈS ….!

[ cta-fr-729 ]

En savoir plus sur le code VBA Microsoft Access – Fonctions VBA, raccourcis et bien plus encore …!