Интеллектуальный город, штат и почтовый индекс в Excel

Содержание

Итак, вы создаете электронную таблицу, которая требует, чтобы пользователь вводил ZipCode, City и State … Как создать более умную электронную таблицу, которая автоматически заполняет Город и Штат после того, как пользователь вводит только ZipCode?

Я просмотрел несколько базовых руководств, которые разработчики Интернета используют с XMLHttpRequest, например этот, и был вдохновлен воссоздать те же функциональные возможности этого превосходного руководства по XMLHttpRequest в Excel (прокрутите вниз ссылку для демонстрации).

Успех! Я собрал быстрый флэш-ролик, чтобы продемонстрировать создание zip-кода и автоматическое возвращение города и штата в Excel.

А вот таблица, которую можно скачать (кода не так уж много).

Как это работает

1. Вам нужна база данных, в которой есть информация о почтовом индексе / штате / городе. Получите это здесь (я использовал MYSQL, как показано).

2. Вернуть город и штат на основе запроса почтового индекса из базы данных, я использовал PHP для возврата текста.

3. Вернуться в Excel: при изменении поля ZipCode запускается событие Worksheet_Change, отправляющее запрос через WinHTTP на страницу PHP, которая возвращает город и штат для запроса обратно в Excel.

4. Я использую функцию Split () для анализа строки и записи результатов в электронную таблицу.

Примечания

Почему бы не вернуть XML?

Это всего лишь строка из двух слов, и с текстом легко работать, когда есть только два слова. Однако XML, возможно, был более привлекательным, потому что я мог бы просто сопоставить два поля результатов с ячейками и вызвать настраиваемый URL-адрес импорта: каждый раз.

Почему бы просто не подключиться к БД напрямую?

Да, это возможно, однако я предпочел бы создать «службу», таким образом, любое приложение, которое я создаю, на любой платформе, может ее использовать.

Почему бы просто не импортировать Zip-файлы в Excel и выполнить поиск?

Возможно, однако, если таблица используется в нескольких книгах, необходимо внести изменения во все из них.

Почтовые индексы в примере могут быть устаревшими.

Проверено только в XL2003.

wave wave wave wave wave