Bu dosya, bağlı olunan internet çıkışının IP adresine göre yaklaşık enlem ve boylam bilgisini Excel hücrelerine getiren GetRealLocationArray adlı özel bir VBA fonksiyonunu içerir. Elde edilen değerler harita çalışmaları, konum bazlı raporlar ve veri analizi için kullanılabilir.
Dosya makro içerir (.xlsm), açarken makroları etkinleştirmeniz gerekir.
Fonksiyon sonuç olarak üst satırda "Latitude (Enlem)" ve "Longitude (Boylam)" başlıklarını, alt satırda ilgili değerleri verir. Ondalık ayırıcı virgül ise noktaya çevrilir.
Dosya makro içerir (.xlsm), açarken makroları etkinleştirmeniz gerekir.
Dosyanın içeriği
- Sayfa1: B2 hücresinde fonksiyon çağrısı bulunur; sonuç B2:C3 aralığına dizi olarak yazılır. B2 başlık olarak "Latitude (Enlem)", B3 ise enlem değerini gösterir (örnekte 41.0082376). Boylam başlığı ve değeri yanındaki C sütununda yer alır.
- Module1: Konum bilgisini alan GetRealLocationArray fonksiyonunu barındırır.
- JsonConverter: JSON verisini ayrıştırmak için kullanılan hazır bir yardımcı modüldür. Konum fonksiyonu bu modülü çağırmaz; metin işlemlerini kendi içinde yapar.
Kullanılan formüller
Sayfadaki tek formül, özel fonksiyonu çağırır ve 2x2 boyutunda bir dizi döndürür:=GetRealLocationArray()
Makrolar
- GetRealLocationArray: Arka planda PowerShell komutu çalıştırır. Komut, IP tabanlı bir konum servisine internet üzerinden istek gönderir ve yanıttaki latitude ile longitude alanlarını okur. Yanıt boş gelirse hücreye "Konum alınamadı!" yazılır. Fonksiyon hücre formülü olarak çalışır, ayrıca makro çalıştırmaya gerek yoktur.
- JsonConverter: ParseJson ve ConvertToJson gibi prosedürlerle JSON ayrıştırma ve üretme işlemlerini sağlar.
Nasıl kullanılır
- Dosyayı açın ve makroları etkinleştirin.
- Bilgisayarın internete bağlı olduğundan emin olun.
- Sayfa1'deki B2 hücresindeki formülün sonucunun B2:C3 aralığına yayıldığını kontrol edin; gerekirse hücreyi yeniden hesaplatmak için F9 tuşuna basın.
- Fonksiyonu başka bir çalışma kitabında kullanmak için Module1 modülünü o dosyaya aktarın.