• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

IP sorgulama

Katılım
8 Eylül 2008
Mesajlar
950
Excel Vers. ve Dili
2016 İngilizce
Merhabalar

biliyorsunuz bir takı IP ler nerede hangi lokasyonda ülke bölge şehir falan siteler var. ip bilgisini yazıp o ip bilgisinin hangi ülkede hangi şehirde olduğunu gösteriyor.

ama bunu tek tek ip girerek sorguluyorsunuz.

Excel de hazırda buna benzer bir şey yapılmışmıdır bilmiyorum ama alt alta ip bilgilerini yazsam a sütununa bana b sütununa hangi ülke c sütununa hangi şehirde olan ip bilgileri olduğunu yazacak bir makro düzeneği excel var mıdır acaba bilgilerinizi ve yardımlarınızı rica ederim
 
Excel'de bunun için Reverse Geocoding API sunan bir sunucu üzerinden bu iş yapılabilir. Sanırım Google'ın böyle bir API'sı vardı ve kullanım miktarına göre ücretlendiriliyordu.

Bu API'yi kullanarak Excel'de bir ara yüz hazırlanabilir.

.
 
Haluk Bey yine karşılaştık ;)

Aşağıdaki adres apisiyle json, xml, csv, newline olarak alınabilir.

Adreste bulunan son kısım yani 24.48.0.1 ip adresidir. Siz farklı ip adresleriyle test edebilirsiniz.

Not: This endpoint is limited to 45 requests per minute from an IP address.

diyor yani dakikada 45 sorgulama yapılabilir aynı başvuru ip adresinden.

Kod:
http://ip-api.com/json/24.48.0.1

http://ip-api.com/xml/24.48.0.1

http://ip-api.com/csv/24.48.0.1

http://ip-api.com/line/24.48.0.1
 
Son düzenleme:
@beab05 ;

Bu sefer konuyu uzatmayalım bari ..... :LOL:

.
 
@Haluk ;

Bence de ;)

Verdiğim adres fena değil aslında.. Elbette başka free apiler de bulunabilir.. Bu konuyla aklıma bişey geldi onu yeni konu açarak sorayım..
 
Bu durumda; ekli dosya ile Excel makrosunun çalıştırıldığı bilgisayarın harici IP adresi ve bilgisayarın lokasyonu bulunabilir.....

.
 

Ekli dosyalar

Kodun çalıştırıldığı PC'ye ait harici IP adresi ve lokasyon için aşağıdaki kodu kullanın .... Farklı bir IP adresi için, 3 No'lu mesajda verilen örnekteki gibi URL'e parametre olarak söz konusu IP adresini ekleyin.

Kod:
Sub Test()
    'Haluk - 15/11/2019
    'E-posta: sa4truss@gmail.com
    '
    Dim XDoc As Object
    Dim strURL As String, myIP As String, myCountry As String, myRegion As String, myCity As String

    Set XDoc = CreateObject("MSXML2.DOMDocument")
    XDoc.async = False
    XDoc.validateOnParse = False

    strURL = "http://ip-api.com/xml/"
    XDoc.Load strURL
 
    myIP = XDoc.SelectSingleNode("query/query").Text
    myCountry = XDoc.SelectSingleNode("query/country").Text
    myRegion = XDoc.SelectSingleNode("query/regionName").Text
    myCity = XDoc.SelectSingleNode("query/city").Text

    MsgBox "IP " & vbTab & ": " & myIP & vbCrLf & _
           "Country " & vbTab & ": " & myCountry & vbCrLf & _
           "Region " & vbTab & ": " & myRegion & vbCrLf & _
           "City " & vbTab & ": " & myCity

    Set XDoc = Nothing
End Sub
 
Son düzenleme:
Haluk Bey'in kodunu fonksiyona çevirseniz ilk mesajda tam istediğiniz gibi olacaktır.

Kod tamamen Haluk Beye aittir. Sadece fonksiyona çevirdim.

Kullanımı: =Haluk_Ip("adres hücresi")

Kod:
Public Function Haluk_Ip(ipAddress)
    'Haluk - 15/11/2019
    'E-posta: sa4truss@gmail.com
    '
    Dim strURL As String, XDoc As Object
 
    Set XDoc = CreateObject("MSXML2.DOMDocument")
    XDoc.async = False
    XDoc.validateOnParse = False
 
    strURL = "http://ip-api.com/xml/" & ipAddress
    XDoc.Load strURL
 
    myIP = XDoc.SelectSingleNode("query/query").Text
    myCountry = XDoc.SelectSingleNode("query/country").Text
    myRegion = XDoc.SelectSingleNode("query/regionName").Text
    myCity = XDoc.SelectSingleNode("query/city").Text
 
    
 Haluk_Ip = myRegion
 
    Set XDoc = Nothing
End Function

Adsız.png
 
bir msgbox içerisinde pc me ait şu anki ıp hostname bilgisi falan çıkıyor sanırım bu kodla.

ama diğer türlü a sütununda bulunan tüm ip bilgilerinin b sütununa falan hangi ülke hangi şehir olduğunu getirtmek için farklı kodlara ihtiyaç var sanırım
 
Fonksiyonda en son satırı aşağıdaki gibi değiştirip, sayfada kullanırken dizi formülü (CTRL+Shift+Enter) olarak girerseniz, diğer bilgileri de alırsınız....

Kod:
Haluk_Ip = Array(myCountry, myRegion, myCity)




.
 
ben bu kodu excel de nereye yerleştireceğim peki ve nasıl çalışacak. şu an sheet1 sayfasına ait kod düzeneğine koydum. ama makro kod düzeneği gibi algılamıyor. f5 yani run sub yaptığımda karşıma hangi macroyu çalıştıracağıma dair diyalog penceresi geliyor ama tabi boş bi pencere geliyor.

Kod:
Public Function Haluk_Ip(ipAddress)
    'Haluk - 15/11/2019
    'E-posta: sa4truss@gmail.com
    '
    Dim strURL As String, XDoc As Object
 
    Set XDoc = CreateObject("MSXML2.DOMDocument")
    XDoc.async = False
    XDoc.validateOnParse = False
 
    strURL = "http://ip-api.com/xml/" & ipAddress
    XDoc.Load strURL
 
    myIP = XDoc.SelectSingleNode("query/query").Text
    myCountry = XDoc.SelectSingleNode("query/country").Text
    myRegion = XDoc.SelectSingleNode("query/regionName").Text
    myCity = XDoc.SelectSingleNode("query/city").Text
 
    
Haluk_Ip = Array(myCountry, myRegion, myCity)
 
    Set XDoc = Nothing
End Function
 
Yeni bir modül oluşturarak verilen kodları oraya yapıştırın ama makrolarınız arasında yine gözükmeyecektir , çünkü verilen kodlar bir Function (Fonksiyon) bunu excelde formül oluşturur gibi kullanacaksınız .Haluk hocamın son mesajındaki ekran görüntüsünde de görüleceği gibi kullanabilirsiniz , hocam aynı zamanda dizi formülü olduğunu belirtmiş bunu da gözden kaçırmayın.
 
evet dediğiniz gibi yaptım. B sütununa country yansıyor ama c ve de sütununa yine country yansıyor

 
Birader; aynı satırdaki B2, C2, D2 hücrelerinin hepsini fare ile seç, Ctrl+Shift+Enter yap...... Ondan sonra, seçilmiş olan bu hücreleri alt satırlara doğru sürükle......

.
 
şu an gösterdiğiniz gibi yaptım ve oldu. Çok teşekkürler üstadım. emin olun bildiğim bir şey olmayınca yapamadım. takdir edersiniz ki sizin kadar bilgi sahibi değilim. ordan burdan bişeyler birleştirerek birşeyler yapıyorum. emeğiniz bilginiz ve her türlü sabrınız için teşekkür ederim. sert tavır takınmanıza sebebiyet verdiğim için nolur mazur görün beni.
 
Estağfurullah, mazur görülecek bir şey yok .... normaldir.

Benim mizacım biraz ters ve gıcıktır, sizinle bir ilgisi yok yani....

Kolay gelsin,

.
 
Geri
Üst