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 IntegerSi strNewPath <> “” et Dir ( strNewPath ) <> “” Alors
Définir colTbl = Nouvelle collection
Définir dbs = CurrentDbPour 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 intTblPour intTbl = colTbl.Count à 1 étape -1
strTblName = colTbl ( intTbl )
DoCmd.TransferDatabase acLink , “Microsoft Access”, _
strNewPath , acTable , strTblName , strTblName
Debug.Print “connexion faite à” “& strTblName &” ‘”
Next intTblDé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:
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 StringDim 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 SiDé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 finCopiez 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 ]