Access交流中心

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

追加的月份前面加不了一个0

马山杨梅  发表于:2011-12-28 11:08:56  
复制

想把表1追加一个月份,但1--9月需要存储为01--09。表1的月份字段是文本型。

 

 

在窗体中执行如下代码

Private Sub 新增_Click()
    Dim yf As String
    yf0 = DLookup("月份", "表1", " [ID] = " & DMax("ID", "表1", "")) '提取最后一条记录的月份
    yf1 = IIf(yf0 = 12, 1, yf0 + 1) '如果最后月份为12,则为1否则就+1个月
    yf = IIf(yf1 < 10, ("0" & yf1), yf1) '如果1--9月就前面添加一个0
    DoCmd.RunSQL "INSERT INTO 表1 ( 月份 ) SELECT " & yf & " as 月份;" '开始追加
End Sub

可是新增加的月份前面没有一个0,用格式化函数试过也好像不行,请教老师帮忙看看。谢谢!

 

点击下载此附件

 

Top
煮茶论道 发表于:2011-12-28 11:20:36

Dim yf As String
    yf0 = DLookup("月份", "表1", " [ID] = " & DMax("ID", "表1", "")) '提取最后一条记录的月份
    yf1 = IIf(yf0 = 12, 1, yf0 + 1) '如果最后月份为12,则为1否则就+1个月
    yf = IIf(yf1 < 10, ("0" & yf1), yf1) '如果1--9月就前面添加一个0
    DoCmd.RunSQL "INSERT INTO 表1 ( 月份 ) SELECT '" & yf & "' as 月份;" '开始追加

复制以上代码即可!



马山杨梅 发表于:2011-12-28 17:14:08
哦,原来要加一对单引号啊,谢谢煮茶论道老师,谢谢您!

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