Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

[5分]如何选择前10条记录(在子窗体里)

fresun  发表于:2016-07-09 15:22:28  
复制

   要弄一个东西,  就是选择子窗体里的前10条记录, 批量打勾.


如图    

   不知道怎么弄了. 请大家指教.  


我的想法就是做一个按钮, 单击后, 就自动前10条打勾.   然后通过查询打印这选中的10条记录.

 

Top
yuhong 发表于:2016-07-10 09:20:41
http://www.access2016.com/blog/article-show.asp?userid=15631&Id=10950

yuhong 发表于:2016-07-10 09:59:36
如果就是固定的前面的行数,可参考如下:
按钮代码:

    Dim rst As DAO.Recordset
    Dim i As Integer    
    Set rst = Me.你的子窗体.Form.RecordsetClone
    rst.MoveFirst
    For i = 0 To rst.RecordCount - 1
        If i >= 0 And i <=me.输入行数文本框 Then
           CurrentDb.Execute "update  你的数据源表 set 本次打印 = -1"
        End If
        rst.MoveNext
    Next i
      Me.你的子窗体.Form.Requery

如不固定位置及行数,请参考实例

http://www.access2016.com/blog/article-show.asp?userid=15631&Id=10950



朱先生 发表于:2016-07-12 21:52:59

单纯用UPDATE好象行不通

要用到循环



zhaoyoulong 发表于:2016-07-13 10:25:40
Dim rst As DAO.Recordset

    Dim i As Integer

    dim j as integer    

    Set rst = Me.你的子窗体.Form.RecordsetClone

    rst.Movelast

    rst.MoveFirst

   if me.输入行数文本框>rst.recordcount then

       j=rst.recordcount

    else

       j=me.输入行数文本框

   end if


rst.edit

    For i = 0 To j-1
       rst("本次打印") = -1

       rst.update

        rst.MoveNext
       Next i
      Me.Requery

zhaoyoulong 发表于:2016-07-13 10:35:17

还有一种办法:

DoCmd.SetWarnings False

DoCmd.RunSQL "UPDATE (SELECT TOP 10 * FROM 表1)   SET 表1.本次打印 = -1"
Me.Recalc





总记录:5篇  页次:1/1 9 1 :