Makro internet bağlantısı yoksa çalışmasın

Katılım
10 Haziran 2017
Mesajlar
7
Excel Vers. ve Dili
Excel 2010 x64 Türkçe
Altın Üyelik Bitiş Tarihi
13/03/2019
Merhabalar,

Şirket server'ından bir kaç excel'den çekilen formülleri hesaplayan bi makro kullanıyorum.

Server bağlantısı ve/veya internet bağlantısı olmadığında makroyu atadığım butona tıkladığımda hesaplama yapmak yerine "internet bağlantısı yoktur" tarzı bir msgbox açılmasını istiyorum.

Yardımcı olabilirseniz sevinirim.
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Merhaba;

Aşağıdaki kodu bir modüle yerleştirip, MyMacro isimli makroyu çalıştırın ....

Kod:
'
'Haluk - 04/04/2018
'
Declare Function InternetGetConnectedStateEx Lib "wininet.dll" _
       (ByRef lpdwFlags As Long, ByVal lpszConnectionName As String, _
        ByVal dwNameLen As Integer, ByVal dwReserved As Long) As Long

Dim strConn As String * 255

'
Function Test_Internet_Connection() As Boolean
    Dim RetVal As Long
    RetVal = InternetGetConnectedStateEx(RetVal, strConn, 254, 0)
    If RetVal = 1 Then
        Test_Internet_Connection = True
    Else
        Test_Internet_Connection = False
    End If
End Function
'
Sub MyMacro()
    If Test_Internet_Connection = True Then
        MsgBox "İnternet erişimi var, programa devam edilecek...."
        '
        '
        'Esas makro kodları buraya yazılacak .....
        '.......
        '....
        '...
    Else
        MsgBox "İnternet erişimi yok, program sonlandırılacak !"
        Exit Sub
    End If
End Sub

.
 
Son düzenleme:
Katılım
10 Haziran 2017
Mesajlar
7
Excel Vers. ve Dili
Excel 2010 x64 Türkçe
Altın Üyelik Bitiş Tarihi
13/03/2019
Merhaba;

Aşağıdaki kodu bir modüle yerleştirip, MyMacro isimli makroyu çalıştırın ....

Kod:
'
'Haluk - 04/04/2018
'
Declare Function InternetGetConnectedStateEx Lib "wininet.dll" _
       (ByRef lpdwFlags As Long, ByVal lpszConnectionName As String, _
        ByVal dwNameLen As Integer, ByVal dwReserved As Long) As Long

Dim strConn As String * 255

'
Function Test_Internet_Connection() As Boolean
    Dim RetVal As Long
    RetVal = InternetGetConnectedStateEx(RetVal, strConn, 254, 0)
    If RetVal = 1 Then
        Test_Internet_Connection = True
    Else
        Test_Internet_Connection = False
    End If
End Function
'
Sub MyMacro()
    If Test_Internet_Connection = True Then
        MsgBox "İnternet erişimi var, programa devam edilecek...."
        '
        '
        'Esas makro kodları buraya yazılacak .....
        '.......
        '....
        '...
    Else
        MsgBox "İnternet erişimi yok, program sonlandırılacak !"
        Exit Sub
    End If
End Sub

.

Hocam çok teşekkür ederim, kod muazzam oldu benim için.
Ek olarak 64bit kullandığımı belirtmediğimden dolayı koda
Declare PtrSafe Function
ekledim, sorunsuz çalışıyor.
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Kolay gelsin ...

.
 
Katılım
1 Ağustos 2006
Mesajlar
179
Altın Üyelik Bitiş Tarihi
22-08-2024
merhaba bu kodu Workbook_Open() içine nasıl alırım



Merhaba;

Aşağıdaki kodu bir modüle yerleştirip, MyMacro isimli makroyu çalıştırın ....

Kod:
'
'Haluk - 04/04/2018
'
Declare Function InternetGetConnectedStateEx Lib "wininet.dll" _
       (ByRef lpdwFlags As Long, ByVal lpszConnectionName As String, _
        ByVal dwNameLen As Integer, ByVal dwReserved As Long) As Long

Dim strConn As String * 255

'
Function Test_Internet_Connection() As Boolean
    Dim RetVal As Long
    RetVal = InternetGetConnectedStateEx(RetVal, strConn, 254, 0)
    If RetVal = 1 Then
        Test_Internet_Connection = True
    Else
        Test_Internet_Connection = False
    End If
End Function
'
Sub MyMacro()
    If Test_Internet_Connection = True Then
        MsgBox "İnternet erişimi var, programa devam edilecek...."
        '
        '
        'Esas makro kodları buraya yazılacak .....
        '.......
        '....
        '...
    Else
        MsgBox "İnternet erişimi yok, program sonlandırılacak !"
        Exit Sub
    End If
End Sub

.
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
C++:
Private Sub Workbook_Open()
    Call MyMacro
End Sub

.
 
Üst