返回列表 上一主題 發帖

[發問] 活頁簿連線

[發問] 活頁簿連線

想請教各位 我自己參考版上資料寫了幾個簡單的查詢股票程式,
問題來了,我每按查詢一次,如圖的活頁簿連線就會多一筆,
等差不多10幾筆的時候,每次最後按儲存離開時,excel就當機
,
所以我每次儲存前都要手動刪除所有連線,
不知有無語法可以每查詢一次就刪除該活頁簿連線? 謝謝各位 :Q

  1. Sub 財務比率()
  2.    
  3.     Call StockNo
  4.     Dim URL As String
  5.    
  6.    
  7.     'X As String
  8.     'X = Worksheets("營收").Range("A2")
  9.    
  10.     URL = "URL;http://dj.mybank.com.tw/z/zc/zcq/zcra_" & 股票代號 & ".djhtm"
  11.    
  12.     With ActiveSheet.QueryTables.Add(Connection:=URL, Destination:=ActiveSheet.Range("K68"))
  13.         .TablesOnlyFromHTML = True
  14.         .RefreshStyle = xlOverwriteCells
  15.         .WebSelectionType = xlSpecifiedTables
  16.         .WebFormatting = xlWebFormattingNone
  17.         .AdjustColumnWidth = False
  18.         .WebTables = "1"
  19.         .WebPreFormattedTextToColumns = True
  20.         .WebConsecutiveDelimitersAsOne = True
  21.         .WebSingleBlockTextImport = False
  22.         .WebDisableDateRecognition = False
  23.         .WebDisableRedirections = False
  24.         .Refresh BackgroundQuery:=False
  25.         Cells.Hyperlinks.Delete
  26.     End With
  27.     'Cells.Hyperlinks.Delete
  28. End Sub

  29. Private Sub CommandButton1_Click()
  30. 'StockNo
  31. 財務比率
  32. End Sub
複製代碼

回復 2# stillfish00

還是不行耶..每執行連線還是持續增加中...

TOP

終於找到了 謝謝,方法如下:
  1. Sub 刪除連線()

  2. For i = 1 To ActiveWorkbook.Connections.Count
  3. If ActiveWorkbook.Connections.Count = 0 Then Exit Sub
  4. ActiveWorkbook.Connections.Item(i).Delete
  5. i = i - 1
  6. Next i

  7. End Sub
複製代碼
執行Button Click時再加入下語法就搞定了:
  1. Private Sub CommandButton1_Click()

  2. 財務比率
  3. 刪除連線
  4. End Sub
複製代碼

TOP

回復 5# stillfish00


    是的 我手動全部刪除連線後測試,執行後還是有跑出來....對了我的是2010版本的 感恩中...

  1. Sub 財務比率()
  2.    
  3.     Call StockNo
  4.     Dim URL As String
  5.    
  6.    
  7.     'X As String
  8.     'X = Worksheets("營收").Range("A2")
  9.    
  10.     URL = "URL;http://dj.mybank.com.tw/z/zc/zcq/zcra_" & 股票代號 & ".djhtm"
  11.    
  12.     With ActiveSheet.QueryTables.Add(Connection:=URL, Destination:=ActiveSheet.Range("K68"))
  13.         .TablesOnlyFromHTML = True
  14.         .RefreshStyle = xlOverwriteCells
  15.         .WebSelectionType = xlSpecifiedTables
  16.         .WebFormatting = xlWebFormattingNone
  17.         .AdjustColumnWidth = False
  18.         .WebTables = "1"
  19.         .WebPreFormattedTextToColumns = True
  20.         .WebConsecutiveDelimitersAsOne = True
  21.         .WebSingleBlockTextImport = False
  22.         .WebDisableDateRecognition = False
  23.         .WebDisableRedirections = False
  24.         .Refresh BackgroundQuery:=False
  25.          Cells.Hyperlinks.Delete
  26.         .Delete
  27.       
  28.     End With
  29.     'Cells.Hyperlinks.Delete
  30. End Sub
複製代碼

TOP

回復 7# stillfish00

我把"股票代號"拿掉 StockNO也拿掉 直接放入股票的代號 連線還是有耶:'(   謝謝
  1. Sub 財務比率()
  2.    
  3.     'Call StockNo
  4.     Dim URL As String
  5.    
  6.    
  7.     'X As String
  8.     'X = Worksheets("營收").Range("A2")
  9.    
  10.     URL = "URL;http://dj.mybank.com.tw/z/zc/zcq/zcra_" & 1101 & ".djhtm"
  11.    
  12.     With ActiveSheet.QueryTables.Add(Connection:=URL, Destination:=ActiveSheet.Range("K68"))
  13.         .TablesOnlyFromHTML = True
  14.         .RefreshStyle = xlOverwriteCells
  15.         .WebSelectionType = xlSpecifiedTables
  16.         .WebFormatting = xlWebFormattingNone
  17.         .AdjustColumnWidth = False
  18.         .WebTables = "1"
  19.         .WebPreFormattedTextToColumns = True
  20.         .WebConsecutiveDelimitersAsOne = True
  21.         .WebSingleBlockTextImport = False
  22.         .WebDisableDateRecognition = False
  23.         .WebDisableRedirections = False
  24.         .Refresh BackgroundQuery:=False
  25.         Cells.Hyperlinks.Delete
  26.         .Delete
  27.         
  28.     End With
複製代碼

TOP

回復 9# stillfish00


    是的 會不會是我的excel有問題要重灌阿 ?

TOP

小弟是新手 語法東湊西湊的 我要謝謝你才是

TOP

        靜思自在 : 布施如播種,以歡喜心滋潤種子,才會發芽。
返回列表 上一主題