Bir adresi e-tablodaki posta koduna dönüştürebilir misiniz?


12

Şehir ve eyalet içeren ancak e-tabloda zip olmayan bir sokak adresi sütunu verildiğinde, posta kodunu veren ikinci bir sütuna bir formül koymak istiyorum. Bunu yapmanın bir yolunu biliyor musun?

ABD adresleriyle ilgileniyorum, ancak diğer ülkelere ilişkin cevaplar da ilginç.

GÜNCELLEME: Sanırım çoğunlukla Google E-Tablolar'da bunu yapmanın bir yolu olduğunu umuyorum. Bunu yapmak için geniş bir posta kodu veritabanına erişmeniz gerektiğini anlıyorum, ancak bana öyle geliyor ki böyle bir veritabanı zaten Google Haritalar'ın içindedir. Oraya posta kodu olmadan bir adres koyarsam, posta kodu içeren bir adresi geri alırım. Haritalar bu aramayı yapabilirse, belki de E-Tablolar'da da bunu yapmanın bir yolu vardır.


@ ChrisF'in cevabı ile ilgili olarak hangi bölgede bulunuyorsunuz?
JMD

"ZIP" teriminin ABD dışında uygulandığını fark etmedim. Her neyse, şimdi belirtmiştim.
Isaac Moses

Az bilinen bir gerçek olan posta kodları, yalnızca posta teslimatınızı hızlandırmak için gereklidir. Bu kullanım bugün ilk kullanıma sunulduğundan (1968'de) daha az uygulanabilir çünkü USPS şimdi yazılan adresleri tarar ve eksikse sizin için ZIP'i arar. Birini sağlamazsanız, USPS sistemlerini sağlamak için kullanır (ve en iyisi bununla ekstra bir maliyet değildir). Ayrıca, posta kodları ABD'ye özeldir. Çoğu yerde bunlara sahiptir, ancak başka yerlerde posta kodları denir.
krowe

Yanıtlar:


8

Google e-tablolarında harici veriler için bir dizi işlev vardır . Parametreleri ileterek aramayı yapan bir site bulabilir (veya oluşturabilirseniz), aşağıdakine benzer bir formül koyabilirsiniz :

Cell A1 (Address): 123 Main St
Cell B1 (City): Springfield
Cell C1 (State): MO

Cell D1 (combined address): =concatenate(A1,B1,C1)

Cell E1 (imported zip code): 
   =importData(concatenate("http://zipfinder.com/search?addr=",D1))

Bu varsayımsal bir fikirdir. Birleştirme, importData ve harici veriler için diğer işlevler Google E-Tablolar'da bulunur. "zipfinder.com" mevcut değil. Orada sitelerinin çoğunda bir adresten posta kodu bulmasına yardımcı olacaktır. Zor kısım, URL'deki adres verilerini kabul eden ve Google E-Tablolar'ın kullanması için yeterince basit bir şey döndüren bir parçayı bulmaktır.


4

Doğrulanmış adres veritabanları çok pahalı olduğu için elektronik tabloya yerleşik bir şey olmayacak.

Bunu sizin için yapacak bir çevrimiçi hizmet bulabilirsiniz. Örneğin, Birleşik Krallık'ta Royal Mail web sitesi posta kodlarını (İngiltere posta kodlarına eşdeğer) aramanıza izin verir , ancak günde 15 arama ile sınırlandırılırsınız. Bu kişisel kullanım içindir. İşletmeler daha fazlasını alacak - ancak bunun için kayıt olmanız ve ödeme yapmanız gerekiyor.

Benzer hizmetler diğer ülkelerde de olacaktır.


4

Bu yanıta benzer bir yaklaşım kullanarak Google Haritalar hizmetiyle özel bir Apps Komut Dosyası işlevi yazabilirsiniz . Bunu yapmak için Araçlar ... Komut Dosyası düzenleyicisi ... 'ni açın ve bu işlevi şuraya yapıştırın:

function getZIP(address) {
  var geo = Maps.newGeocoder().geocode(address);
  var resultComponents = geo.results[0].address_components;
  for (var i = 0; i < resultComponents.length; i++) {
     if (resultComponents[i].types.indexOf('postal_code') > -1) {
       return resultComponents[i].long_name;
    }
  }
}

Daha sonra bunu bir e-tablo hücresinde çağırabilirsiniz, örneğin, Beyaz Saray için doğru 20500 döndürür:

=getZIP("1600 Pennsylvania Ave. NW, Washington, DC")

Diğer bazı yaklaşımların aksine, ABD dışındaki yerler için de çalışır, örneğin Eyfel Kulesi için 75007'yi doğru bir şekilde döndürür:

=getZIP("Champ de Mars, 5 Avenue Anatole France, Paris, France")

1
Google API, coğrafi kodlayıcıyı ne sıklıkta kullanabileceğinizi sınırlıyor mu? Eğer öyleyse, burada bahsetmeye değer.
Excellll

1
Kotalar sayfası Haritalar'ı özel olarak listelemez, bu nedenle en iyi tahminim 20k / gün (URL getirme sınırı) olacaktır: developers.google.com/apps-script/guides/services/…
Max Ghenis

3

Bir çeşit harici adres arama aracına veya hizmetine ihtiyacınız var. Sadece Şehir / Eyalet ile, çoğu şehrin birden fazla posta koduna sahip olduğu ve birçok şehrin birden fazla posta kodunu kapsayan sokakları olduğu için doğru posta kodunu belirlemenin bir yolu yoktur, böylece sadece sokağı ekleyip bir şehir / eyalet kullanamazsınız. / zip formülü veya arama. Adresler için posta kodları bulmanız gerekiyorsa, bir hizmet veya araç için ayrılıp ödeme yapmanız gerekecektir. Bunun iyi bir yolu yok.


Evet, bunu yaşayan bir veriyi bir formattan diğerine dönüştürmek için yapıyorum. Belirtildiği gibi, bazı şehirlerin birkaç posta kodu olabilir, bu nedenle Dünya Ticaret Merkezi binalarının kendi posta kodları vardı, bu yüzden şehir / eyalet yeterli değil. USPS, bunu yapabilen çok büyük bir veritabanına sahiptir, ancak sokak adresini de gerektirir ve nispeten pahalıdır.
Blackbeagle

2000 yılındaki ABD nüfus sayımı verilerini kullanamaz mısınız? Kullanımının ücretsiz olduğuna inanıyorum.
Chris

1
Buna aşina değilim, ama öyle olsa bile, büyük miktarda veri hakkında konuşuyorsunuz ve bu, bir Excel elektronik tablosunda kolayca yapabileceğiniz bir şey değil.
BBlake

3

Excel'de yapmak zor. SOAP araç setini kullanarak bir Web Hizmetini aramanız veya Visual Studio'yu kullanmanız gerekir. Microsoft'un ne düşündüğünü merak etmek gerekir.

Bir Google Dokümanlar Elektronik Tablosunda yapmak, ardından Excel'e dışa aktarmak çok daha kolaydır:

Posta kodunu adrese göre aramak için GeoCoder.ca'nın XML web hizmetini kullanabilirsiniz. Google Dokümanlar'da şu işlevi kullanırsınız:

=importXML("http://geocoder.ca/?geoit=xml&showpostal=1&locate=" & A2,"//postal")

(burada A2 sokak adresidir.)

Enlem ve boylamı şu şekilde de alabilirsiniz:

=importXML("http://geocoder.ca/?geoit=xml&showpostal=1&locate=" & A2,"//geodata")

GeoCoder'ün ücretsiz hizmetleri için günlük isteklerde bir gaz kelebeği olduğunu unutmayın.


3

Evet - Artık Posta Kodlarını Google Dokümanlar sayfanızda aşağıdaki URL'yi kullanarak bulabilirsiniz:

Adım 1: In Bu açılış sayfası , arama yapmak istediğiniz adresi girin.

Adım 2: Washington, DC'de "1245 5TH ST" adresini aradım ve URL şöyle görünüyordu:

https://tools.usps.com/go/ZipLookupResultsAction!input.action?resultMode=0&companyName=&address1=1245+5TH+ST&address2=&city=Washington&state=DC&urbanCode=&postalCode=&zip=

Adım 3: Aşağıdaki formülü kopyalayıp yapıştırın ve HÜCRE, ŞEHİR, DURUMU değiştirin:

=Mid(importHTML(CONCATENATE("https://tools.usps.com/go/ZipLookupResultsAction!input.action?resultMode=0&companyName=&address1=",CELL,"&address2=&city=CITY&state=STATE&urbanCode=&postalCode=&zip="),"list",15),Find("DC",importHTML(CONCATENATE("https://tools.usps.com/go/ZipLookupResultsAction!input.action?resultMode=0&companyName=&address1=",CELL,"&address2=&city=CITY&state=STATE&urbanCode=&postalCode=&zip="),"list",15))+2,11)

3. Adımdaki URL'nin 2. Adımdaki URL ile eşleşmesi gerektiğini unutmayın. Hücre, hedef Hücre Değerinize göre dinamik olacaktır.

3. Adımdaki işlev, STATE değerinden sonra 11 karakter ayıklar. Bu nedenle, doğru değerleri elde etmek için MID işlevini değiştirmeniz gerekecektir. Bu benim için mükemmel çalıştı.

Son bir şey: Google, yaprak başına yalnızca 50 İçe Aktarma işlevine izin verir. Yani, yukarıdaki yöntemle bir kerede sadece 25 Posta Kodu bulabilirsiniz.


Bu sabah benim için işe yaramadı.
14'te demirleyen

1

Kanada'da, Kanada Post web sitesi posta kodlarının adrese göre aranmasına izin verir (ve günlük sınırın farkında değilim), ancak maalesef e-tablonuzda entegrasyon konusunda size yardımcı olmaz. Bunun için potansiyel çözümler de görmek istiyorum. Bilmediğim kişiler için her zaman manuel posta kodu araması yaptım.


0

İngiltere'de, ülkedeki tüm adresleri listeleyen posta kodu adres dosyasına (PAF) erişmeniz gerekir. PAF'a doğrudan erişim de önemsiz bir miktar değil, maliyetlidir. Güncellenmiş PAF verilerine sınırsız erişim için yılda koltuk başına £ 200 gibi bir ödeme yapıyoruz, ancak daha sonra her ay 10 bin istek yukarı atıyoruz.

Diğer bölgelerin çoğu bu konuda benzerdir, bu yüzden zip verilerine istediğiniz şekilde erişmenin meşru bir yolunu bulamayacağınızı hayal ediyorum.

Verilerinin RESTful olarak sorgulanmasını doğrudan bir e-tabloya zip eklemesine izin verecek bir site bulabilseniz bile, şüphesiz herhangi bir belirli dönemde yapılabilecek sorgu sayısı üzerinde katı sınırlar uygularlardı.


0

Bir Excel elektronik tablosunu (veya CSV / sekmeyle ayrılmış dosyayı) işleyecek ve eksik Posta Kodlarını ekleyecek birkaç çevrimiçi hizmet vardır. Fiyat, bazıları kurulum ücretleri, işlem ücretleri ve acele sipariş ücretleri olan servis sağlayıcıya bağlı olarak birkaç dolar ila 100 $ + arasında değişebilir.

Bazı servis sağlayıcılar işlenmiş dosyayı birkaç dakika içinde size geri gönderirken, "acele işleme" iddiasında bulunanlar 3 iş günü sürebilir. Sorunuza dayanarak, yazılım satın almak ve yerinde bir yazılım çözümü için binlerce doları düşürmek için yatırım yapmak istemezsiniz. Bu durumda, bir çevrimiçi sağlayıcı en iyi bahistir.

Tam açıklama amacıyla, SmartyStreets'in kurucusuyum. Tam otomatik, çevrimiçi adres doğrulaması sunuyoruz . Excel dosyanızı web sitemize sürükleyip bırakabilirsiniz ve boyutuna bağlı olarak bir veya iki dakika içinde işlenip size geri gönderilecektir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.