Hi all,
Pls find the code:
Const INTERNET_OPEN_TYPE_DIRECT = 1
Const INTERNET_OPEN_TYPE_PROXY = 3
Const INTERNET_FLAG_RELOAD = &H80000000
Private Declare Function InternetOpen Lib "wininet" Alias "InternetOpenA"
(ByVal sAgent As String, ByVal lAccessType As Long, ByVal sProxyName As
String, ByVal sProxyBypass As String, ByVal lFlags As Long) As Long
Private Declare Function InternetCloseHandle Lib "wininet" (ByVal hInet As
Long) As Integer
Private Declare Function InternetReadFile Lib "wininet" (ByVal hFile As
Long, ByVal sBuffer As String, ByVal lNumBytesToRead As Long,
lNumberOfBytesRead As Long) As Integer
Private Declare Function InternetOpenUrl Lib "wininet" Alias
"InternetOpenUrlA" (ByVal hInternetSession As Long, ByVal lpszUrl As String,
ByVal lpszHeaders As String, ByVal dwHeadersLength As Long, ByVal dwFlagsAs
Long, ByVal dwContext As Long) As Long
Private Declare Function InternetAttemptConnect Lib "wininet" (ByVal
dwReserved As Long) As Long
Sub Fetch()
Dim tTxt As String
tTxt = DownloadPage(Range("URL"))
End Sub
Function DownloadPage(sURL As String, Optional Length As Long) As String
Dim hOpen As Long, hFile As Long, sBuffer As String, Ret As Long
If Length = 0 Then Length = 10000
sBuffer = Space(Length)
hOpen = InternetOpen("", INTERNET_OPEN_TYPE_DIRECT, vbNullString,
vbNullString, 0)
hFile = InternetOpenUrl(hOpen, sURL, "", 0, INTERNET_FLAG_RELOAD, ByVal
0&)
InternetReadFile hFile, sBuffer, Length, Ret
InternetCloseHandle hFile
InternetCloseHandle hOpen
DownloadPage = Left$(sBuffer, Ret)
End Function
- Show quoted text -