设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 2516|回复: 14
打印 上一主题 下一主题

[Access本身] 如何进行字段分割?求助高手。

[复制链接]
跳转到指定楼层
1#
发表于 2009-2-11 11:38:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
工作单位公司部(处、分公司)组(科)
沙头角公司.销售一组沙头角公司 销售一组
深圳湾公司.销售五组深圳湾公司 销售五组
文锦渡公司.财务组   
蛇口公司.采购部.采购一组蛇口公司采购部采购一组
文锦渡公司.销售二组文锦渡公司 销售二组
盐田公司.财务组盐田公司 财务组
罗湖公司.监督组罗湖公司 监督组
机场公司.快件组机场公司 快件组
文锦渡公司.技术组文锦渡公司 技术组
皇岗公司.销售部.销售三组皇岗公司销售部销售三组
蛇口公司.广告部.三组蛇口公司广告部三组
皇岗公司.规划部.设计科皇岗公司规划部设计科
深圳湾公司.接待科深圳湾公司 接待科
蛇口公司.赤湾分公司.综合组蛇口公司赤湾分公司综合组
即:把左表的一个字段,分割成右表的3个字段。
说明:左表的3级单位之间是用一个点来分隔的,有的有二级单位(部),
    有的没有二级单位,直接就是三级单位(组、科)。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2009-2-11 11:58:30 | 只看该作者
当工作单位只有两个点时,根据什么判断第二个是二级部还是三级科组?
3#
发表于 2009-2-11 12:26:58 | 只看该作者
当工作单位只有两个点时,根据什么判断第二个是二级部还是三级科组?
koutx 发表于 2009-2-11 11:58


问题很清楚。你没看清题意
4#
发表于 2009-2-11 13:47:01 | 只看该作者

Public Function GetDep(strIn As String, i As Integer) As Variant
Select Case i
Case 1
    GetDep = Split(strIn, ".")(0)
Case 2
    GetDep = IIf(UBound(Split(strIn, ".")) = 1, Null, Split(strIn, ".")(1))
Case 3
    GetDep = Split(strIn, ".")(UBound(Split(strIn, ".")))
End Select
End Function
建一个自定义函数就行了

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
5#
发表于 2009-2-11 13:56:30 | 只看该作者
SELECT 表5.工作单位, Left([工作单位],InStr([工作单位],".")-1) AS 公司, IIf(InStr(Right([工作单位],Len([工作单位])-InStr([工作单位],".")),".")>0,Left(Right([工作单位],Len([工作单位])-InStr([工作单位],".")),InStr(Right([工作单位],Len([工作单位])-InStr([工作单位],".")),".")-1),Right([工作单位],Len([工作单位])-InStr([工作单位],"."))) AS 部处, IIf(InStr(Right([工作单位],Len([工作单位])-InStr([工作单位],".")),".")>0,Right(Right([工作单位],Len([工作单位])-InStr([工作单位],".")),Len(Right([工作单位],Len([工作单位])-InStr([工作单位],".")))-InStr(Right([工作单位],Len([工作单位])-InStr([工作单位],".")),"."))) AS 组科
FROM 表5;
6#
发表于 2009-2-11 14:25:41 | 只看该作者
4# Trynew
又学了一招,但是否还有点美中不足如下图:假若工作单位是“一公司.三部”则二级单位就到了三级单位去了。有请4楼续示。谢了

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
7#
发表于 2009-2-11 18:59:38 | 只看该作者
4# Trynew  
又学了一招,但是否还有点美中不足如下图:假若工作单位是“一公司.三部”则二级单位就到了三级单位去了。有请4楼续示。谢了
34999
koutx 发表于 2009-2-11 14:25


我的建议,不足之处请笑纳:
窃以为,使用数据库应精于设计规划,而非用程序代码来解决。若我设计此表,就以“。”来区分三级单位,如一级单位。二级单位。三级单位表示,若某级单位没有就空着。如‘一级单位。。三级单位’,表示没有二级单位,或‘一级单位。二级单位。’表示没有三级单位,但是“。”不能少。这样直接可用函数取值。
8#
发表于 2009-2-11 21:04:37 | 只看该作者
虽然不会,但赞同7楼,数据库设计时,精力应在规划上。
最初的表没有搞好,用代码解救,一个字[累]
9#
发表于 2009-2-11 21:05:38 | 只看该作者
本帖最后由 koutx 于 2009-2-11 21:09 编辑

7# ly
赞成,建议楼主可将一个.replace成。。
10#
发表于 2009-2-11 21:46:46 | 只看该作者
象我附件中这种结构该怎样分割呢,请赐教.

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-6-30 05:44 , Processed in 0.105032 second(s), 35 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表