Lier Powerpoint et l'accès par VBA?
-
21-08-2019 - |
Question
J'ai une diapositive Powerpoint qui contient des zones de texte. Je voudrais relier ces zones de texte avec une vue filtrée d'une table de données dans Access.
Ex, si j'avais une application TaskList dans Access qui affiche les tâches avec les priorités et Affectations différentes; est-il un moyen d'ouvrir ce fichier, sélectionnez ce point de vue, et filtrer selon un ABV (ou autre) onclick événement bouton déclenché à partir de ma présentation Powerpoint?
La solution
Il est certainement possible d'obtenir des données d'accès de Powerpoint.
Vous devez vous assurer que vous avez les références correctes réglées sur le projet dans votre Microsoft DAO Object Library
VBA.
Ensuite, pour remplir votre zone de texte dans votre présentation PowerPoint, vous pouvez appeler quelque chose comme la fonction suivante, par exemple, pour retourner une chaîne contenant une liste des tâches correspondant à la TaskPriority donnée.
Function GetTaskListFromAccess(taskPriority as Integer) as String
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim listOfTasks as String
Set db = DBEngine.OpenDatabase(“C:\my_database.accdb”)
Set rs = db.OpenRecordset("SELECT * FROM TaskTable WHERE TaskPriority=" & _
taskPriority, dbOpenSnapshot)
If not rs is nothing then
If rs.RecordCount > 0 then
With rs
While Not .EOF
if listOfTask = "" then
listOfTasks = !TaskName
Else
listOfTasks = listOfTasks & vbCrLf & !TaskName
End If
.MoveNext
Loop
.Close
End With
End If
Set rs = nothing
End If
Set db = nothing
GetTaskListFromAccess = listOfTasks
End Function