2015-02-03 2 views
0

나는 밖으로 (응답하지) 내가 그것을 디버깅 할 때 다음 오류 Run time error 1004 general odbc error엑셀 2010 : 런타임 오류 1004 일반 ODBC 오류

를 얻을 중 시간이 줄 강조 작은 엑셀 2010 질문이 있습니다

Selection.QueryTable.Refresh BackgroundQuery:=False 
을 이 엑셀 2007

에서 일하는 는

나는 오류를 생략하고 다음 부분으로 이동 쿼리를 얻을 수 On Error Resume Next을 시도하지만 도움이되지 않았다.

Sub Refresh_all() 

    Application.ScreenUpdating = False 

    Application.Goto Reference:="querycell" 
    Range("A2").Select 

    Selection.QueryTable.Refresh BackgroundQuery:=False 

    Dim pt As PivotTable 
    Dim ws As Worksheet 

    For Each ws In ActiveWorkbook.Worksheets 
     For Each pt In ws.PivotTables 
      pt.RefreshTable 
     Next pt 
    Next ws 

    Application.Goto Reference:="returncell" 
    Range("A1").Select 
    Application.ScreenUpdating = True 

End Sub 
+0

어떤 라인에서 오류가 발생합니까? – Gareth

+0

@Gareth 아프다. 다시 오류가 발생하지만 대개는 시간이 초과된다 (응답하지 않는 경우). 2010 년에 호환되지 않는 구문이 있습니까? – Matt

+0

'On Error Resume Next' 문을 제거하더라도 여전히 시간이 초과됩니까? 그 외에도'ThisWorkbook'보다는'ActiveWorkbook'을 참조하고 싶습니까? – Gareth

답변

0

매우 이상한 해결책이지만, 미래의 누군가가이 난관에서 자아를 발견 할 경우 대비해 보겠습니다. 라인 중 하나가 된 명령 텍스트에서

: 어떤 이유로 이전

WHERE i.c = ? 
로 일이로 변경함으로써하지만

2010 년 Excel 2007에서 근무

WHERE i.c LIKE NVL(?, '%') 

나는 내게 더 지성있는 사람이 와서이 문제에 대해 추론 할 것이라고 확신하지만, 그때까지는 해결 된 것이있다.