在 OpenOffice 中将邮政编码转换为州

在 OpenOffice 中将邮政编码转换为州

我正在尝试将数据从我们的两个旧系统移到新系统。问题是,我们的数据库的“州”列在某个地方被损坏了。我有一列邮政编码,需要确定州。我找到了许多适用于 Excel 的解决方案,但它们似乎与 OpenOffice 不太兼容。我相当确定有一种方法可以使用 CSV 来实现这一点这里但我真的不知道从哪里开始。有什么想法吗?

答案1

这虽然有点绕,但满足了我的需要。希望其他人也能用到这些信息。我本可以为某些州使用额外的 OR 语句,但如果没有它,我就可以更轻松地布局数据集。

我将这一切作为一个单一的公式,但是对于 OO 的口味来说它太长了,所以我不得不将其分成 4 个公式,将公式粘贴到 4 列中,创建一个连接前 4 个公式的第 5 列,然后仅将第 5 列中的值粘贴到原始的“状态”列中。

=IF(AND(S3>=99501;S3<=99950);"AK";IF(AND(S3>=35004;S3<=36925);"AL";IF(AND(S3>=71601;S3<=72959);"AR";IF(AND(S3>=75502;S3<=75502);"AR";IF(AND(S3>=85001;S3<=86556);"AZ";IF(AND(S3>=90001;S3<=96162);"CA";IF(AND(S3>=80001;S3<=81658);"CO";IF(AND(S3>=06001;S3<=06389);"CT";IF(AND(S3>=06401;S3<=06928);"CT";IF(AND(S3>=20001;S3<=20039);"DC";IF(AND(S3>=20042;S3<=20599);"DC";IF(AND(S3>=20799;S3<=20799);"DC";IF(AND(S3>=19701;S3<=19980);"DE";IF(AND(S3>=32004;S3<=34997);"FL";IF(AND(S3>=30001;S3<=31999);"GA";IF(AND(S3>=39901;S3<=39901);"GA";IF(AND(S3>=96701;S3<=96898);"HI";IF(AND(S3>=50001;S3<=52809);"IA";IF(AND(S3>=68119;S3<=68120);"IA";IF(AND(S3>=83201;S3<=83876);"ID";0))))))))))))))))))))
=IF(AND(S3>=60001;S3<=62999);"IL";IF(AND(S3>=46001;S3<=47997);"IN";IF(AND(S3>=66002;S3<=67954);"KS";IF(AND(S3>=40003;S3<=42788);"KY";IF(AND(S3>=70001;S3<=71232);"LA";IF(AND(S3>=71234;S3<=71497);"LA";IF(AND(S3>=01001;S3<=02791);"MA";IF(AND(S3>=05501;S3<=05544);"MA";IF(AND(S3>=20331;S3<=20331);"MD";IF(AND(S3>=20335;S3<=20797);"MD";IF(AND(S3>=20812;S3<=21930);"MD";IF(AND(S3>=03901;S3<=04992);"ME";IF(AND(S3>=48001;S3<=49971);"MI";IF(AND(S3>=55001;S3<=56763);"MN";IF(AND(S3>=63001;S3<=65899);"MO";IF(AND(S3>=38601;S3<=39776);"MS";IF(AND(S3>=71233;S3<=71233);"MS";IF(AND(S3>=59001;S3<=59937);"MT";IF(AND(S3>=27006;S3<=28909);"NC";IF(AND(S3>=58001;S3<=58856);"ND";0))))))))))))))))))))
=IF(AND(S3>=68001;S3<=68118);"NE";IF(AND(S3>=68122;S3<=69367);"NE";IF(AND(S3>=03031;S3<=03897);"NH";IF(AND(S3>=07001;S3<=08989);"NJ";IF(AND(S3>=87001;S3<=88441);"NM";IF(AND(S3>=88901;S3<=89883);"NV";IF(AND(S3>=06390;S3<=06390);"NY";IF(AND(S3>=10001;S3<=14975);"NY";IF(AND(S3>=43001;S3<=45999);"OH";IF(AND(S3>=73001;S3<=73199);"OK";IF(AND(S3>=73401;S3<=74966);"OK";IF(AND(S3>=97001;S3<=97920);"OR";IF(AND(S3>=15001;S3<=19640);"PA";IF(AND(S3>=02801;S3<=02940);"RI";IF(AND(S3>=29001;S3<=29948);"SC";IF(AND(S3>=57001;S3<=57799);"SD";IF(AND(S3>=37010;S3<=38589);"TN";IF(AND(S3>=73301;S3<=73301);"TX";IF(AND(S3>=75001;S3<=75501);"TX";IF(AND(S3>=75503;S3<=79999);"TX";0))))))))))))))))))))
=IF(AND(S3>=88510;S3<=88589);"TX";IF(AND(S3>=84001;S3<=84784);"UT";IF(AND(S3>=20040;S3<=20041);"VA";IF(AND(S3>=20040;S3<=20167);"VA";IF(AND(S3>=20042;S3<=20042);"VA";IF(AND(S3>=22001;S3<=24658);"VA";IF(AND(S3>=05001;S3<=05495);"VT";IF(AND(S3>=05601;S3<=05907);"VT";IF(AND(S3>=98001;S3<=99403);"WA";IF(AND(S3>=53001;S3<=54990);"WI";IF(AND(S3>=24701;S3<=26886);"WV";IF(AND(S3>=82001;S3<=83128);"WY";0))))))))))))

连接公式很简单 =CONCATENATE(T3;U3;V3;W3)

希望这个问题可以为别人节省一些时间。

答案2

短期内,您可以使用合格来源(例如医疗保险和医疗保险服务中心)导入最新的州邮政编码列表。这面向付款人数据,并且会得到积极维护。之后,您可以使用数据透视表或通过 Open Office Base 处理工作,并使用一些 SQL 连接魔法来创建可以转储到 Calc 或 CSV 的视图。您的系统背后是什么类型的数据库?有什么类型的导入功能可用?

其他自由的最好的工具是使用 Quest TOAD for DA Freeware 来连接表格。这是一个非常用户友好的选项,学习难度不大。如果您发现自己在进行数据管道/报告,这是一个非常好的工具,值得花钱购买许可证。

浏览至https://www.cms.gov/prospmedicarefeesvcpmtgen/

下载以下 zip 档案:邮政编码至运营商所在地文件 [ZIP,4.08MB] - 已更新 8/17/11

答案3

我没有看过邮政编码 CSV,但我确信您可以使用 VLOOKUP() 公式来查看该数据。

=VLOOKUP(zipcode,csvdata,column number for state relative to zip in csvdata,FALSE)

相关内容