设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
楼主: paradisewait
打印 上一主题 下一主题

[查询] 继续关注!!如何在查询中加上序号!支持动态!

[复制链接]
11#
发表于 2004-2-8 23:30:00 | 只看该作者
查询中加上序号的方法!支持动态!

http://www.erpbus.net/access/topic.asp?topic_id=11110&forum_id=84

本方法使用 ADO 而且必須使用KEYVALUE (INDEXED)


12#
发表于 2004-2-9 03:07:00 | 只看该作者
10条记录怎么没有1,而是从2到11?
13#
发表于 2004-2-9 03:51:00 | 只看该作者
不好意思 加錯了
            Case DB_DATE
               rs.Find "[" & KeyName & "] = #" & KeyValue & "#"
            ' Find text type key value
            Case DB_TEXT
               rs.Find "[" & KeyName & "] = '" & KeyValue & "'"
            Case Else
               MsgBox "Errer ;   Invalid KeyName or KeyValue  "
         End Select

        SerializeAdo = Nz(rs.AbsolutePosition, 0)
        rs.Close
        Set rs = Nothing
       Exit Function




[此贴子已经被作者于2004-2-8 22:00:27编辑过]

本帖子中包含更多资源

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

x
14#
发表于 2006-10-20 23:24:00 | 只看该作者
以下是引用hi-wzj在2004-2-7 12:29:00的发言:
在窗体中完成不是很简单吗?= Me.CurrentRecord

再用表视图显示就是了。

正在找解决方法。在文本框里写= Me.CurrentRecord吗?
15#
发表于 2006-10-21 00:19:00 | 只看该作者
来自微软KB的例子,在表和查询中动态增加编号


本帖子中包含更多资源

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

x
16#
发表于 2006-10-21 03:40:00 | 只看该作者
cg1给的911里的例子,在代码里执行,跟直接打开一个查询不太一样。而且最后一句runsql不对。

在模块里建立下面这个函数。
Public Function Balance(d As Double, DomainName As String) As Currency
    Dim a As Currency
    Dim b As Currency
    a = Nz(DSum(DomainName & "![收入金额]", DomainName, "[余额条件] <= " & d))
    b = Nz(DSum(DomainName & "![支出金额]", DomainName, "[余额条件] <= " & d))
    Balance = a - b
    If IsNull(Balance = True) Then Balance = 0

End Function


在写查询的时候这样写
dim strsql as string
strsql="select 收入,支出,排列id,balance([排列id],'[C1]') as 余额 from c1 order by 排列id"
docmd.runsql strsql

我搜索论坛的结果是用子查询,再试试数据多有没有速度问题。
17#
发表于 2006-10-22 23:02:00 | 只看该作者
以下是引用andymark在2006-10-20 16:19:00的发言:


来自微软KB的例子,在表和查询中动态增加编号








这个例子好像也没有解决8楼提出的问题。
18#
发表于 2006-10-22 23:12:00 | 只看该作者
以下是引用LucasLynn在2006-10-22 15:02:00的发言:





这个例子好像也没有解决8楼提出的问题。

       可以的,在查询1中试试改变CustomerID的升降序,再看看结果
19#
发表于 2006-10-22 23:20:00 | 只看该作者
以下是引用andymark在2006-10-22 15:12:00的发言:



       可以的,在查询1中试试改变CustomerID的升降序,再看看结果



但是在打开后使用列排序或者筛选,就没有任何效果了。

这个问题如果一定要从表和查询的角度而言,应该是个无解的问题,但是可以通过窗体或报表来实现。主要是M$并没有提供完整的Access内对象访问接口。

我想,zhengjialon所提出的问题,应该是指用户在数据访问的过程中,多次通过筛选或排序,多次改变数据的排列规则所需要作出的序号上的实时相应。



[此贴子已经被作者于2006-10-22 15:24:26编辑过]

20#
发表于 2006-10-22 23:35:00 | 只看该作者
以下是引用zhengjialon在2004-2-7 8:12:00的发言:
这样的结果是符合楼主的要求,
不过不能是完全的动态,如果按姓名进行排序后,那么序号就倒过来了,不能保证第一行永远是1



如果一定要在查询上进行,完全的动态应该是无法实现的。

动态从技术角度而言的基本要求,是动态事件的捕捉和响应,在Access中查询的事件是无法捕捉到的(例如筛选和排序),所以也无从谈起如何响应。

同样的问题使用窗体或报表,就是可以解决的了。

[此贴子已经被作者于2006-10-22 15:35:55编辑过]

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

本版积分规则

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

GMT+8, 2024-6-1 22:11 , Processed in 0.087509 second(s), 32 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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