返回列表 上一主題 發帖

[發問] 下載中斷問題

[發問] 下載中斷問題

大家好:

      想請問個問題,因為我下載會中斷,如圖所示。
      不知道有沒有辦法加個程式碼,可以直接判斷,而不造成下載過程有無法開啟的狀況。
     謝謝。

問題.jpg (14.98 KB)

問題.jpg

Desktop.rar (276.97 KB)

回復 2# luhpro

您好:
      不知道如何加入您給我的程式碼,但是更新的時候會再.Refresh這一行出現錯誤。
可以再請多指教一些嗎? 謝謝。

Sub 下載基本資料()


    Range("P" & 23).Formula = "更新開始..." '.改
    Application.ScreenUpdating = False

    Sheets("DDE").Select
    x = Application.WorksheetFunction.CountA(Range("A:A")) '欄位有值範圍計算
   
    With ThisWorkbook


    For Each a In .Sheets("DDE").Range("A" & 1418, "A" & x - 1).SpecialCells(xlCellTypeConstants).Offset(1) '設定範圍  '==========要減1============

    更新資料 a '執行12檔案更新

    Workbooks("風險評估.xlsx").Sheets(Array("IS", "ISQ", "BS", "BSQ", "BASIC", "YrPrice", "FR", "CFS", "ISQT")).Copy '複製工作表

    ActiveWorkbook.SaveAs ThisWorkbook.Path & "\Base\" & CStr(a) & ".xlsx" '另存新檔

    關檔

    Next

    End With
   
    Sheets("DDE").Select
    Range("P" & 23).Formula = "更新結束" '.改
    Application.ScreenUpdating = True
End Sub

Sub 更新資料(a)

    Dim Sh As Worksheet, MyURL$, MyQy As QueryTable

    With ThisWorkbook

    fd = .Path & "\基本面\風險評估\"

    fs = Dir(fd & "*.xlsx")

    Do Until fs = ""

    With Workbooks.Open(fd & fs)
   
    For Each Sh In .Sheets

        With Sh

        If .QueryTables.Count > 0 Then

            Set MyQy = .QueryTables(1)

            With .QueryTables(1)

            MyURL = .Connection

            If InStr(MyURL, "StockID") > 0 Then

                k = Val(Split(MyURL, "=")(UBound(Split(MyURL, "="))))

                Else

                k = Val(Split(MyURL, "_")(1))

            End If

            MyURL = Replace(MyURL, k, a)

            .Connection = MyURL '更改查詢

            .BackgroundQuery = False '幕前更新
            
            .Refresh '更新

            End With

        End If

        End With

    Next

    End With

    fs = Dir()

    Loop

    End With

End Sub

Sub 關檔()

    For Each w In Windows

    If w.Caption <> ThisWorkbook.Name Then w.Close 1

    Next

End Sub

TOP

回復 4# luhpro

     完全可以跑,不會有中斷現象,真是十分感謝^^

TOP

        靜思自在 : 一個人不怕錯,就怕不改過,改過並不難。
返回列表 上一主題