Office中国论坛/Access中国论坛

标题: 怎么把输入的数据固定在最后一行? [打印本页]

作者: snowmoonzzb    时间: 2007-9-28 09:29
标题: 怎么把输入的数据固定在最后一行?
要怎么才可以把这个窗体打开是时候直接就在这个窗体的最后一行?就是在我黑的那一行~~
作者: hi-wzj    时间: 2007-9-28 10:45
将此代码贴到窗体的代码设计视图中即可:
Private Sub Form_Open(Cancel As Integer)
DoCmd.GoToRecord , , acLast
End Sub
作者: snowmoonzzb    时间: 2007-9-28 12:29
原帖由 hi-wzj 于 2007-9-28 10:45 发表
将此代码贴到窗体的代码设计视图中即可:
Private Sub Form_Open(Cancel As Integer)
DoCmd.GoToRecord , , acLast
End Sub

窗体的代码设计视图这个在哪里?呵呵菜鸟哦
作者: snowmoonzzb    时间: 2007-9-28 12:30
原帖由 cuxun 于 2007-9-28 10:47 发表
主窗体,在加载事件中加入以下代码:
    DoCmd.GoToRecord , , acLast
子窗体:
    Me.子窗体名.SetFocus
    DoCmd.GoToRecord , , acLast

加载事件这个在哪里?谢谢哦
作者: Henry D. Sy    时间: 2007-9-28 12:34
vbe里      .
作者: 静儿    时间: 2007-9-28 14:00
贴个图赚个分。
作者: snowmoonzzb    时间: 2007-9-28 14:15
谢谢了,呵呵特别是静儿,呵呵有图就是方便呀
作者: snowmoonzzb    时间: 2007-9-28 14:54
原帖由 hi-wzj 于 2007-9-28 10:45 发表
将此代码贴到窗体的代码设计视图中即可:
Private Sub Form_Open(Cancel As Integer)
DoCmd.GoToRecord , , acLast
End Sub

这个段代码加到哪里?是不是下面图里面的最后一行?
作者: snowmoonzzb    时间: 2007-9-28 16:29
原帖由 cuxun 于 2007-9-28 15:31 发表
你的应该是子窗体吧,你应该多看看我们这个论坛里的示例了。
private sub 雇员id_click()
  Me.工时卡片子窗体.SetFocus
    DoCmd.GoToRecord , , acLast
end sub

呵呵放到最后一段,保存完了出来,再打开就出来这个提示了
作者: snowmoonzzb    时间: 2007-9-28 17:11
原帖由 cuxun 于 2007-9-28 16:46 发表
你加的时候把这个去掉:
   private sub 雇员id_click()
      end sub
直接加这个:
      Me.工时卡片子窗体.SetFocus
      DoCmd.GoToRecord , , acLast

没有反应,我后面加了个END SUB 都没有用,全是没有改变,就是把原来的哪个提示消掉了,其他的都没有反应
作者: snowmoonzzb    时间: 2007-9-29 07:50
原帖由 cuxun 于 2007-9-28 19:13 发表
把库传上来帮你看看.

DoCmd.GoToControl "雇员ID"
    End If
End Sub
Private Sub Form_Activate()
On Error GoTo Err_Form_Activate
    DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
    Me![工时卡片子窗体].Form![项目ID].Requery
    Me![工时卡片开支子窗体].Form![项目ID].Requery
Exit_Form_Activate:
    Exit Sub
Err_Form_Activate:
    MsgBox Err.Description
    Resume Exit_Form_Activate
End Sub
Private Sub 雇员ID_NotInList(NewData As String, Response As Integer)
    MsgBox "双击此字段将增加一个入口到此列表。"
    Response = acDataErrContinue
End Sub
Private Sub 雇员ID_DblClick(Cancel As Integer)
On Error GoTo Err_雇员ID_DblClick
    Dim lngEmployeeID As Long
    If IsNull(Me![雇员ID]) Then
        Me![雇员ID].Text = ""
    Else
        lngEmployeeID = Me![雇员ID]
        Me![雇员ID] = Null
    End If
    DoCmd.OpenForm "雇员", , , , , acDialog, "GotoNew"
    Me![雇员ID].Requery
    If lngEmployeeID <> 0 Then Me![雇员ID] = lngEmployeeID
Exit_雇员ID_DblClick:
    Exit Sub
Err_雇员ID_DblClick:
    MsgBox Err.Description
    Resume Exit_雇员ID_DblClick
End Sub
Private Sub 工时卡片子窗体_Enter()
    If IsNull(Me![雇员ID]) Then
        MsgBox "请在输入工时或开支之前输入雇员。"
        DoCmd.GoToControl "雇员ID"
    End If
End Sub
Private Sub 工时卡片开支子窗体_Enter()
    If IsNull(Me![雇员ID]) Then
        MsgBox "请在输入工时或开支之前输入雇员。"
        DoCmd.GoToControl "雇员ID"
    End If
End Sub
Private Sub 预览时间卡片_Click()
    On Error GoTo 预览时间卡片_Err
    If IsNull(Me![时间卡片ID]) Then
        MsgBox "请在预览工时卡报表之前输入工时卡片信息。"
    Else
        DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
        DoCmd.OpenReport "时间表", acPreview, , "[时间卡片ID]=" & [时间卡片ID]
    End If
预览时间卡片_Exit:
    Exit Sub
预览时间卡片_Err:
    MsgBox Err.Description
    Resume 预览时间卡片_Exit

End Sub
Me.工时卡片.SetFocus
DoCmd.GoToRecord , , acLast
End Sub
这个就是了
作者: snowmoonzzb    时间: 2007-9-29 10:51
原帖由 cuxun 于 2007-9-29 08:56 发表
从你现在的语句上来看,肯定是错的:

End Sub
....这里少了函数或过程名定义呀。
Me.工时卡片.SetFocus
DoCmd.GoToRecord , , acLast
End Sub

呵呵那要怎么改?能不能把改好的发上来我复制过去?谢谢了哦辛苦辛苦
作者: snowmoonzzb    时间: 2007-9-29 13:30
原帖由 cuxun 于 2007-9-29 12:32 发表
做了个例子,其实在论坛里就有的,你多看看论坛吧.

谢谢哦,就是不知道怎么在论坛上搜索~~还有就是我用你的那些代码都不是我不是我要的效果,不是人物名字跑到最后一个就是其他的不是我要的录入结果跑到最后一个,我把我的放上来,你帮我改一下了哦,辛苦辛苦谢谢哦,国庆节快乐
作者: snowmoonzzb    时间: 2007-9-29 13:32
晕,太大了不能上传,郁闷了
作者: 小宜    时间: 2007-9-29 21:19
学习学习学习学习学习
作者: yjs_ks    时间: 2007-9-29 21:21
路过,学习学习,好好学习,天天向上。




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