Связывание Powerpoint и доступа через VBA? - PullRequest
2 голосов
/ 11 декабря 2008

У меня есть слайд Powerpoint, который содержит текстовые поля. Я хотел бы связать эти текстовые поля с фильтрованным представлением таблицы данных в Access.

Например, если бы у меня было приложение TaskList в Access, которое отображало задачи с разными приоритетами и влиянием; Есть ли способ открыть этот файл, выбрать это представление и отфильтровать его в соответствии с событием кнопки vba (или другой) кнопки onclick, запущенным из моей презентации Powerpoint?

1 Ответ

5 голосов
/ 11 декабря 2008

Конечно, можно получить данные Access из Powerpoint.

Вам необходимо убедиться, что в вашем проекте VBA установлены правильные ссылки на Microsoft DAO Object Library.

Затем, чтобы заполнить текстовое поле в презентации 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
...