Code mở 1 link internet (1 người xem)

  • Thread starter Thread starter pmhoang
  • Ngày gửi Ngày gửi
Liên hệ QC

Người dùng đang xem chủ đề này

pmhoang

Thành viên thường trực
Tham gia
4/7/08
Bài viết
269
Được thích
83
Mình đang cần 1 code VBA mở link internet
VD khi chạy code thì nó mở trang web VD http://www.giaiphapexcel.com
(nếu có mạng thì mở trang http://www.giaiphapexcel.com lên, còn nếu không có mạng thì thông báo phải bật mạng lên)

Xin các bạn giúp đở, rất cảm ơn các bạn GPE
 
Cái này hình như thì phải cầu cứu tới hàm API, tôi cũng đang xem cái này, sẽ trả lời bạn khi có kết quả
Thân

P/S : Các cao thủ có ý kiến gì không?
 
Mình đang cần 1 code VBA mở link internet
VD khi chạy code thì nó mở trang web VD http://www.giaiphapexcel.com
(nếu có mạng thì mở trang http://www.giaiphapexcel.com lên, còn nếu không có mạng thì thông báo phải bật mạng lên)

Xin các bạn giúp đở, rất cảm ơn các bạn GPE

Bạn dùng code sau thử:

Mã:
Sub OpenWebPage()
      On Error GoTo loi
      ActiveWorkbook.FollowHyperlink "http://www.giaiphapexcel.com/", NewWindow:=True
      Exit Sub
loi:       MsgBox "Ban co chac la da mo Internet len chua ?", vbQuestion, "Hoi"
End Sub
 
Bạn domfootwear ơi, mình có thể bẩy được cái lỗi này không?
Khi mà mở trang web lên, nếu trang đó tồn tại thì thông báo "Trang web dang hoat dong"
Nếu trang web đó đã bị xóa, không tồn tại trên mạng internet nữa thì thông báo"Trang web nay khong co"

Cảm ơn bạn và GPE rất nhiều.
 
Bạn domfootwear ơi, mình có thể bẩy được cái lỗi này không?
Khi mà mở trang web lên, nếu trang đó tồn tại thì thông báo "Trang web dang hoat dong"
Nếu trang web đó đã bị xóa, không tồn tại trên mạng internet nữa thì thông báo"Trang web nay khong co"

Cảm ơn bạn và GPE rất nhiều.
Bạn lên google, search từ khóa : Excel VBA Check if URL Exists ---> Có cả đóng
Chẳng hạn là code này:
PHP:
Function URLExists(URL As String) As Boolean
  Application.Volatile
  On Error Resume Next
  If Left(UCase(URL), 7) <> "HTTP://" Then URL = "http://" & URL
  With CreateObject("MSXML2.XMLHTTP")
    .Open "HEAD", URL, False: .send
    URLExists = .Status = 200
  End With
End Function
Đương nhiên, code chỉ cho kết quả chính xác khi máy tính có kết nối Internet
 
Xin chào

Nếu mình có 1 dãy tên miền đặt ở cột A:A, có cách nào cho nó chạy từ Range("A1") đến Range("A10") và thứ tự mở từng trang web không, thời gian mở từng trang delay khoảng 1 phút.

Cám ơn.
 
Lần chỉnh sửa cuối:
chắc không được bạn ơi. có thể bạn bạn đang tìm mấy phần mềm quảng cáo ấy. tự động lên web, tự động up nội dung quảng cáo trên diễn đàn, rao vặt ...
 
Bạn dùng code sau thử:

Mã:
Sub OpenWebPage()
      On Error GoTo loi
      ActiveWorkbook.FollowHyperlink "http://www.giaiphapexcel.com/", NewWindow:=True
      Exit Sub
loi:       MsgBox "Ban co chac la da mo Internet len chua ?", vbQuestion, "Hoi"
End Sub
Trường hợp đã liên kết rồi , muốn đến với trang đó mà không phải liên kết lại thì chỉnh thế nào vậy bạn . Cảm ơn
 
Trường hợp đã liên kết rồi , muốn đến với trang đó mà không phải liên kết lại thì chỉnh thế nào vậy bạn . Cảm ơn

Căng à nha!
- Ví code phải xác định được 1 WebPage nào đó có đang mở hay không?
- Code làm sao biết được ta đang dùng trình duyệt gì?
Không biết có làm được không nhưng phân tích sơ qua thì thấy rất.. chua
 
Trường hợp đã liên kết rồi , muốn đến với trang đó mà không phải liên kết lại thì chỉnh thế nào vậy bạn . Cảm ơn
Mới vừa google được (http://www.mrexcel.com/forum/excel-...macro-already-open-ie-window.html#post2814324)

Anh chép hàm sau vào module:
Mã:
Function NavigateTo(Link As String, Optional WaitSeconds = 5) As Long
' ZVI:2011-08-04 VBA Macro For Already Open IE Window
' Navigate (Internet)Explorer to the Link with [WaitSeconds=5] timeout.
' If (Internet)Explorer is already navigated to the Link then it's just activated,
' else the new (Internet)Explorer is navigated to the Link.
' Returns  error number (zero at success)
' Note: comment "Application.StatusBar" lines for VB & VBScript compatibility

  Dim i As Long, t As Single, Url As String, w As Object, wUrl As String
  
  ' Uniform Link string
  Url = Trim(Replace(Replace(Link, "%20", " "), "\", "/"))
  ' Find "://" prefix
  i = InStr(Url, "://")
  If i > 1 And i < 7 Then Url = Mid(Url, i + 3)
  ' Delete "/" at the end
  If Right(Url, 1) = "/" Then Url = Left(Url, Len(Url) - 1)
    
  ' Seach Link in IE windows
  Application.StatusBar = "Finding link: " & Link & " ..."
  For Each w In CreateObject("Shell.Application").Windows
    ' Uniform LocationURL string
    wUrl = Trim(Replace(Replace(w.LocationURL, "%20", " "), "\", "/"))
    ' Find "://" prefix
    i = InStr(wUrl, "://")
    If i > 1 And i < 7 Then wUrl = Mid(wUrl, i + 3)
    ' Del 3d "/" in prefix for local Link
    If Mid(wUrl, 1, 1) = "/" Then wUrl = Mid(wUrl, 2)
    ' Delete "/" at the end
    If Right(wUrl, 1) = "/" Then wUrl = Left(wUrl, Len(wUrl) - 1)
    If StrComp(Url, wUrl, 1) = 0 Then
      ' Link is found - activate it's IE window
      w.Visible = True
      Exit For
    Else
       wUrl = ""
    End If
  Next
  
  ' If Link is not found then create new IE and navigate to the Link
  On Error Resume Next
  If Len(wUrl) = 0 Then
    With CreateObject("InternetExplorer.Application")
      ' Disable pop-up msgs
      .Silent = True
      ' Navigate
      Application.StatusBar = "Navigating to: " & Link & " ..."
      .Navigate Link
      ' Charge the timeout
      t = Timer + WaitSeconds
      ' Wait for "IE is ready" state
      Application.StatusBar = "Waiting for IE's complete state..."
      While .ReadyState <> 4 And Timer < t: DoEvents: Wend
      ' Wait for "IE.Document is completely downloaded" state
      If Timer < t Then
        Application.StatusBar = "Waiting for Document's downloaded state..."
        While .Document Is Nothing And Timer < t: DoEvents: Wend
      Else
        Err.Raise vbObjectError + 513, , "Timeout happens: " & WaitSeconds & " seconds"
      End If
      ' Activate IE
      Application.StatusBar = False
      If Err Then .Quit Else .Visible = True
    End With
  End If
  
  ' Release the memory of object variable
  Set w = Nothing
  
  ' Return error number (zero if successful)
  NavigateTo = Err.Number
  
  ' Show error message
  If Err.Number <> 0 Then
    Application.StatusBar = "NavigateTo: " & Replace(Err.Description, vbLf, " - ")
    ' Uncomment the line below to show error message
    'MsgBox Err.Description, vbExclamation, "NavigateTo"
  End If
  
End Function

Rồi chạy code sau:

Mã:
Sub Test_NavigateTo()
 NavigateTo "http://giaiphapexcel.com/forum/content.php"
  
End Sub
 
Cảm ơn các bạn , nhưng vẫn chưa được,thậm chí bị treo luôn .
Giả sử trình duyệt là Fire Fox và đã biết liên kêt với trang chủ GPE . Vậy chỉ cần code để cửa sổ .
 
Web KT

Bài viết mới nhất

Back
Top Bottom