- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
回復 1# s13983037
試試看- Option Explicit
- Private Sub CommandButton1_Click()
- Dim E As Object, i As Integer, ii As Integer, k As Integer
- Dim StockArr(), A As Variant, Sh As Worksheet
- StockArr = Array(9946, 2330, 2317, 5522) '等等的股票
- Set Sh = ActiveSheet
- Sh.UsedRange.Clear
- With CreateObject("InternetExplorer.Application")
- .Visible = True
- k = 1
- For Each A In StockArr
- .Navigate "http://www.cnyes.com/twstock/intro/" & A & ".htm"
- Do While .Busy Or .ReadyState <> 4: DoEvents: Loop
- Sh.Cells(k, 1) = Split(.document.Title, "_")(0) '股票:名稱代號
- Set E = .document.getElementsByTAGName("TABLE")(4)
- For i = 0 To E.Rows.Length - 1
- k = k + 1
- For ii = 0 To E.Rows(i).Cells.Length - 1
- Sh.Cells(k, ii + 1) = E.Rows(i).Cells(ii).INNERTEXT
- Next
- Next
- '**************************************************************
- .Navigate "http://pchome.megatime.com.tw/stock/sid" & A & ".html"
- Do While .Busy Or .ReadyState <> 4: DoEvents: Loop
- Set E = .document.getElementsByTAGName("TABLE")(4)
- For i = 0 To E.Rows.Length - 1
- k = k + 1
- For ii = 0 To E.Rows(i).Cells.Length - 1
- Sh.Cells(k, ii + 1) = E.Rows(i).Cells(ii).INNERTEXT
- Next
- Next
- k = k + 2
- Next
- .Quit '關閉網頁
- End With
- With Sh.Range("a:a")
- .Replace "相關權証", "=500/0" '產生錯誤的公式
- If Not .Find("#DIV/0!", LookIn:=xlValues) Is Nothing Then
- .SpecialCells(xlCellTypeFormulas, xlErrors).EntireRow.Delete
- End If
- End With
- End Sub
複製代碼 |
|