Intelligentne linn, osariik ja Zip Excelis

Lang L: none (table-of-contents)

Nii et koostate arvutustabelit, mis nõuab, et kasutaja sisestaks sihtnumbri, linna ja osariigi … Kuidas luua nutikam arvutustabel, mis täidab automaatselt linna ja osariigi pärast seda, kui kasutaja on sisestanud ainult postiindeksi?

Olen vaadanud mõningaid põhilisi õpetusi, mida veebi arendajad kasutavad koos XMLHttpRequestiga, nagu see, ja sain inspiratsiooni selle suurepärase XMLHttpRequest õpetuse sama funktsiooni taastamiseks Excelis (kerige demo link alla).

Edu! Olen kokku pannud kiire välkfilmi, mis demonstreerib zip -i sisestamist ja linna ja riigi automaatset tagastamist Excelis.

Ja siin on arvutustabeli allalaadimine (seal pole nii palju koodi).

Kuidas see töötab

1. Teil on vaja andmebaasi, mis sisaldab postiindeksit/osariiki/linna. Hankige see siit (läksin MYSQL -iga, nagu näidatud).

2. Tagastage linn ja osariik andmebaasist pärit postiindeksipäringu põhjal, teksti tagastamiseks kasutasin PHP -d.

3. Tagasi Excelis: välja ZipCode muutmisel käivitub sündmus Worksheet_Change, saates päringu WinHTTP kaudu PHP lehele, mis tagastab taotluse linna ja osariigi tagasi Excelisse.

4. Stringi parsimiseks ja tulemuste arvutustabelisse kirjutamiseks kasutan funktsiooni Split ().

Märkused

Miks mitte XML -i tagastada?

See on ainult kahesõnaline string ja tekstiga on lihtne toime tulla, kui on ainult kaks sõna. XML võis siiski olla naiivsem, sest oleksin võinud lihtsalt kaardistada kaks tulemivälja lahtritesse ja nimetada need kohandatuks Impordi URL: iga kord.

Miks mitte ühendada otse DB -ga?

Jah, see on võimalik, kuid ma eelistaksin luua "teenust", nii et seda saab kasutada iga rakendus, mis ma teen igal platvormil.

Miks mitte lihtsalt importida ZIP -failid Excelisse ja otsida?

Võimalik, kuid kui tabelit kasutavad mitmed töövihikud, tuleb neid kõiki muuta.

Näites olevad tõmblukud võivad olla aegunud.

Testitud ainult XL2003.

wave wave wave wave wave