Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Czas zapytania o połączenie danych ODBC Excel potrzebny do odświeżenia każdego zapytania

Być może coś takiego (przy założeniu, że wszystkie połączenia umieszczają swoje wyniki w tabeli arkusza roboczego, a nie w tabeli przestawnej):

Sub TimeQueries()
    Dim oSh As Worksheet
    Dim oCn As WorkbookConnection
    Dim dTime As Double
    For Each oCn In ThisWorkbook.Connections
        dTime = Timer
        oCn.Ranges(1).ListObject.QueryTable.Refresh False
        Debug.Print Timer - dTime, oCn.Name, oCn.Ranges(1).Address(external:=True)
    Next
End Sub

Aby to uruchomić:

  1. Alt +F11 aby przejść do edytora VBA.
  2. Z menu:Wstaw moduł.
  3. Wklej kod w oknie.
  4. Zamknij edytor VBA.
  5. Alt +F8 wyświetla listę makr. Wybierz nowy i kliknij biegnij.
  6. Alt +F11 ponownie do edytora VBA.
  7. Ctr l+G otwiera bezpośrednie okienko z wynikami.

Jeśli chcesz, aby kod był zapisywany w komórce, użyj tej wersji:

Sub TimeQueries()
    Dim oSh As Worksheet
    Dim oCn As WorkbookConnection
    Dim dTime As Double
    Dim lRow As Long
    Set oSh = Worksheets("Sheet4") 'Change to your sheet name!
    oSh.Cells(1,1).Value = "Name of Connection"
    oSh.Cells(1,2).Value = "Location"
    oSh.Cells(1,1).Value = "Refresh time (s)"
    For Each oCn In ThisWorkbook.Connections
        lRow = lRow + 1
        dTime = Timer
        oCn.Ranges(1).ListObject.QueryTable.Refresh False
        oSh.Cells(lRow,3).Value = Timer - dTime
        oSh.Cells(lRow,1).Value = oCn.Name
        oSh.Cells(lRow,2).Value = oCn.Ranges(1).Address(external:=True)
    Next
End Sub



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dlaczego otrzymuję numer ORA-01722 (nieprawidłowy numer)?

  2. LINQ Użyj like zamiast (( NVL(INSTR(x, y), 0) ) =1)

  3. Jak wyeksportować wyniki zapytania do pliku .txt przy użyciu SQLcl (Oracle)

  4. Oracle:konwertuj liczby na słowa w innym języku niż angielski

  5. Alternatywy dla CASE w Oracle 8i