Takže vytvárate tabuľku, ktorá vyžaduje, aby používateľ zadal kód ZipCode, mesto a štát … Ako vytvoríte inteligentnejšiu tabuľku, ktorá automaticky vyplní mesto a štát potom, čo používateľ zadá iba kód ZipCode?
Pozrel som sa na niekoľko základných návodov, ktoré weboví vývojári používajú s XMLHttpRequest, ako je tento, a inšpiroval som sa, aby som v Exceli znova vytvoril rovnakú funkcionalitu ako tento vynikajúci tutoriál XMLHttpRequest (ukážku si posuňte na odkaz).
Úspech! Zostavil som rýchly flash film, aby som predviedol zadávanie kódu zip a automatické vrátenie mesta a štátu v programe Excel.
A tu je na zahodenie stiahnutie tabuľky (nie je toľko kódu).
Ako to funguje
1. Potrebujete databázu, ktorá obsahuje PSČ/štát/mesto. Získajte to tu (išiel som s MYSQL, ako bolo ukázané).
2. Vráťte mesto a štát na základe dotazu na PSČ z Databázy, na vrátenie textu som použil PHP.
3. Späť v Exceli: Keď sa zmení pole ZipCode, spustí sa udalosť Worksheet_Change, ktorá odošle požiadavku cez WinHTTP na stránku PHP, ktorá vráti mesto a štát pre požiadavku späť do Excelu.
4. Na analýzu reťazca použijem funkciu Split () a výsledky zapíšem do tabuľky.
Poznámky
Prečo nevrátiť XML?
Je to iba dvojslovný reťazec a s textom sa ľahko zaobchádza, ak existujú iba dve slová. XML však mohlo byť príjemnejšie, pretože som mohol práve tieto dve polia výsledkov namapovať na bunky a nazvať ich vlastnými Importovať URL: zakaždým.
Prečo sa jednoducho nepripojíte priamo k DB?
Áno, je to možné, ale radšej by som vytvoril „službu“, takto ju môže používať každá aplikácia, ktorú vytvorím, na akejkoľvek platforme.
Prečo jednoducho neimportujete zipsy do Excelu a neurobíte vyhľadávanie?
Možné, ale ak tabuľku používa viac pracovných zošitov, je potrebné zmeniť ich všetky.
Zipy v tomto prípade môžu byť zastarané.
Testované iba v XL2003.