Access交流中心

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

随机生成的值如何自动更新到表的指定字段?

依雲皓月  发表于:2017-12-21 17:04:53  
复制

点击下载此附件 按执行按钮后如何将值自动更新到acd表的key字段中,求大神指教

 

Top
仙来 发表于:2017-12-21 21:19:50

Dim K, a, b, I, Num, X, P As Integer
    Dim str, Pa As String
    str = ""
    For I = 1 To 12
        P = Int(Rnd * 2) '随机产生0,1两个随机数,使得数字与字母的顺序不同
        If P = 0 Then    '如果为0那就产生数字,反之产生字母
            Num = Int(Rnd * 10)  '随机产生0-9的随机数
            Pa = Num
        Else
            K = Int(Rnd * 1)    '1大写,2小写
            Select Case K
          
            Case 0: a = 65: b = 90
            Case 1: a = 97: b = 122
            End Select
            X = Int(Rnd * (b - a + 1) + a)    'a-b随机数
            Pa = Chr(X)    '随机对应的AscII字符
        End If
        str = str & Pa

    Next I
    str = "1006AA" & Left(str, 6) & Right(str, 6)
    Me.Text1 = str
    DoCmd.SetWarnings False
    DoCmd.RunSQL "UPDATE acd SET acd.[key] ='" & Me.Text1 & "';"
    DoCmd.SetWarnings True

 

 

 

但表中至少要一条记录



依雲皓月 发表于:2017-12-23 20:52:20
想在保存按钮把代码放进去,保存时把随机生成的值,保存到新增信息的key字段,而不是把表acd的key字段全部更新了,如何写代码?求指教!

仙来 发表于:2017-12-27 09:58:59

 Dim K, a, b, I, Num, X, P As Integer
    Dim str, Pa As String
    str = ""
    For I = 1 To 12
        P = Int(Rnd * 2) '随机产生0,1两个随机数,使得数字与字母的顺序不同
        If P = 0 Then    '如果为0那就产生数字,反之产生字母
            Num = Int(Rnd * 10)  '随机产生0-9的随机数
            Pa = Num
        Else
            K = Int(Rnd * 1)    '1大写,2小写
            Select Case K
          
            Case 0: a = 65: b = 90
            Case 1: a = 97: b = 122
            End Select
            X = Int(Rnd * (b - a + 1) + a)    'a-b随机数
            Pa = Chr(X)    '随机对应的AscII字符
        End If
        str = str & Pa

    Next I
    str = "1006AA" & Left(str, 6) & Right(str, 6)
    Me.Text1 = str
    DoCmd.SetWarnings False
    DoCmd.RunSQL "insert into acd(key) values ('" & Me.Text1 & "')"
    DoCmd.SetWarnings True



依雲皓月 发表于:2017-12-27 16:37:54
非常感谢大师的解惑!

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