2

我有一个包含文本框的 Powerpoint 幻灯片。我想将这些文本框与 Access 中数据表的过滤视图链接起来。

例如,如果我在 Access 中有一个 TaskList 应用程序,它显示具有不同优先级和影响的任务;有没有办法打开该文件,选择该视图,并根据我的 Powerpoint 演示文稿触发的 vba(或其他)onclick 按钮事件对其进行过滤?

4

1 回答 1

5

当然可以从 Powerpoint 获取 Access 数据。

您需要确保Microsoft DAO Object Library在您的 VBA 项目中设置了正确的引用。

然后,要在 PowerPoint 演示文稿中填充文本框,您可以调用类似于以下函数的内容,例如,返回包含与给定 TaskPriority 匹配的任务列表的字符串。

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
于 2008-12-11T14:28:42.103 回答