【发布时间】:2021-04-24 19:25:53
【问题描述】:
我在一列中得到以下类型的输入,并希望得到下面的输出
输入:
01212/001231412/0123123
04654/000009846/9015684
输出:
01212/1231412/0123123
04654/9846/9015684
所以我需要删除中间部分的前导零。我的假设是
- 我需要拆分字符串
- 检测第二部分是否有前导零
- 将所有内容合并在一起
这可以在 Access via SQL 中实现,还是我需要编写 VBA 脚本? 第二部分如何自动检测前导零?
【问题讨论】:
-
是否可以删除所有前导零,或者您是否希望这只是倒数第二个数字?
-
替换前导零的原因是什么? “001231412”和“000009846”都失去了前导0,但“0123123 04654”没有。
-
@Albert 和 Applecore:由于转移到另一个系统,我只需要删除第二部分中的前导零。
-
好吧,正如代码所示,您可以选择 0 到任何数字 - 最后一次编辑显示转换 1 和 3(它基于零),以便将 1 和 4 转换为数字并删除零。如果您只想删除第二个元素-那么只需使用 buf(1) = clng(buf(1) 就可以了。如上所述,您甚至可以在 sql 查询中使用该函数-然后您可以创建一个追加查询到新表,甚至直接针对该查询而不是表导出。不清楚您的示例如何或为什么说第 4 个元素用于删除前导零 - 但代码允许您选择要转换的任何元素。