Office中国论坛/Access中国论坛

标题: tmtony 再帮我一把! [打印本页]

作者: cjf78    时间: 2008-11-2 21:48
标题: tmtony 再帮我一把!
tmtony管理员,您好!
        我很感谢您的指点,但因我的程度十分有限,不会编程。我把原程序传上来请您帮助加上,我再仔细体会。不甚感激!
我希望在计算库存时大小写要区分开,不是现在这个样子,它不分大小写,都合并在一起了。请老师给于指导!
作者: Henry D. Sy    时间: 2008-11-3 00:40
这种小事还要麻烦老大,简直就是杀鸡用牛刀 :):)

Public Function GetAscii(strName As String) As String
    Dim strTemp As String
    Dim I As Integer
    For I = 1 To Len(strName)
        strTemp = strTemp & Asc(Mid(strName, I, 1))
    Next
    GetAscii = strTemp
End Function

SELECT [quetext5-1].品名, Sum([quetext5-1].库存) AS 库存之总计
FROM [quetext5-1]
GROUP BY [quetext5-1].品名, GetAscii([品名]);
作者: tmtony    时间: 2008-11-3 00:59
好办法, Access本身不分大小写,只能用Ascii码来区分. 楼上D兄的方法可解决你要求的按大小写分组的功能.
如果要排序的话, 因为转成Ascii码后串成字符串,可能 9 与 11 排序 可能11排在9的后面,如果品名是字母的话,应该不成问题,如果有其它字符的话,则还可改进一下 将取得的Ascii码变成定长,如format( Asc(Mid(strName, I, 1)),"000")
作者: cjf78    时间: 2008-11-3 12:18
标题: 拜谢
一上班就看到二位老师的指点,非常感谢!
不好意思,D老师的二段语句我应放到哪里,请再指点。
如果我要对“规格”一项分出大小写,程序有变化吗?

[ 本帖最后由 cjf78 于 2008-11-3 13:41 编辑 ]
作者: Henry D. Sy    时间: 2008-11-3 16:11
1, 放到模块里
2. 复制查询语句到查询的sql视图中保存
3。如果我要对“规格”一项分出大小写,程序有变化吗?
   GetAscii([规格])
作者: cjf78    时间: 2008-11-3 19:59
谢谢D大哥:真好用,我总算可以舒口气了。
作者: ycxchen    时间: 2008-11-5 15:33
谢谢,我也增长知识了!




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3