- 帖子
- 161
- 主題
- 26
- 精華
- 0
- 積分
- 187
- 點名
- 0
- 作業系統
- xp
- 軟體版本
- office 2010
- 閱讀權限
- 20
- 性別
- 男
- 來自
- TW
- 註冊時間
- 2011-1-2
- 最後登錄
- 2022-2-16
|
24#
發表於 2022-2-12 20:07
| 只看該作者
回復 1# wufonna
改了程式內容
請教程式沒加入這段 On Error Resume Next '下行會出錯,加入這行,未知原因。 會錯誤是網頁有空格的關溪嗎?
請教大大如何修改 謝謝- Option Explicit
- Dim ie As Object '模組最頂端 Dim 供這模組的程序使用的變數
- Sub AllFile()
- Dim i As Integer, v, Y As Integer, S As String
- Dim z As Integer
- With 工作表1
- Dim AR
- AR = .Range("C1:J1")
- .Range("C:J") = ""
- .Range("C1:J1") = AR
- z = 0
- For i = 2 To .Range("A" & .Rows.Count).End(xlUp).Row
-
- v = .Cells(i, 1).Value
- GetDividend (v)
- .Cells(i, 3).Resize(1, 7).Value = 工作表2.Cells(7, 1).Resize(1, 7).Value
- If 工作表2.Cells(7, 5).Value > 0 Then
- .Cells(i, 10).Value = 1
- z = z + 1
- Else
- .Cells(i, 10).Value = 0
- End If
- If 工作表2.Cells(7, 5).Value > 0 And 工作表2.Cells(8, 5).Value > 0 And 工作表2.Cells(9, 5).Value > 0 Then 'K(營收連3個月正成長)
- .Cells(i, 11).Value = 1
- Else
- .Cells(i, 11).Value = 0
- End If
- Next
- ' MsgBox "共有" & z & "家正成長"
- .Cells(1, 10).Value = "去年同期年增率" & Split(Date, "/")(1) - 1 & "月份" & .Range("A" & .Rows.Count).End(xlUp).Row & "家共有" & z & "家正成長"
-
- End With
- End Sub
- Public Function MyFile(v As Integer, i As Integer)
- ' Dim i As Integer, v, Y As Integer, S As String
- With 工作表1
- .Range("C" & v & ":J" & v) = "" '清除工作表1,年度範圍
- v = .Cells(i, 1).Value
- GetDividend (v)
- .Cells(i, 3).Resize(1, 7).Value = 工作表2.Cells(7, 1).Resize(1, 7).Value
- If 工作表2.Cells(7, 5).Value > 0 Then
- .Cells(i, 10).Value = 1
- Else
- .Cells(i, 10).Value = 0
- End If
- If 工作表2.Cells(7, 5).Value > 0 And 工作表2.Cells(8, 5).Value > 0 And 工作表2.Cells(9, 5).Value > 0 Then 'k (營收連3個月正成長)
- .Cells(i, 11).Value = 1
- Else
- .Cells(i, 11).Value = 0
- End If
-
- End With
- End Function
- Private Sub GetDividend(ByVal ss As String) '取股利網頁 '2022/2/22 換這段程式碼 在 https://www.mobile01.com/topicdetail.php?f=511&t=4737630&p=3 的21樓
- Dim URL, HTMLsourcecode, GetXml, Table
- Dim i As Integer, j As Integer
- Set HTMLsourcecode = CreateObject("htmlfile")
- Set GetXml = CreateObject("msxml2.xmlhttp")
- URL = "http://pscnetinvest.moneydj.com.tw/z/zc/zch/zch_" & ss & ".djhtm"
- With GetXml
- .Open "GET", URL, False
- .setRequestHeader "Cache-Control", "no-cache"
- .setRequestHeader "Pragma", "no-cache"
- .setRequestHeader "If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT"
- .send
- HTMLsourcecode.body.innerhtml = .responsetext
- On Error Resume Next '下行會出錯,加入這行,未知原因。
- Set Table = HTMLsourcecode.all.tags("table")(2).Rows
- For i = 0 To Table.Length - 1
- For j = 0 To Table(i).Cells.Length - 1
- 工作表2.Cells(i + 1, j + 1) = Table(i).Cells(j).innertext
- Next j
- Next i
- End With
- Set HTMLsourcecode = Nothing
- Set GetXml = Nothing
- End Sub
複製代碼 |
|