小组会议MS ACCESS

时间:2015-01-30 01:23:30

标签: ms-access-2007

我有一个监控员工休假和培训的数据库,每8周一个小组会聚集然后进行培训,我所追求的是一种方式而不是单独为每个成员分配一个培训活动ID,而不是打开活动并选择参与者,从这里,每个工作人员将针对他们记录这种特定的培训 到目前为止,我已经通过ID识别每个员工和GID的每次培训,但是在参加此培训活动时遇到了所有ID?

1 个答案:

答案 0 :(得分:0)

可以使用未绑定表单完成此 BULK INSERT 。最小控件可以是一个Listbox,ComboBox,一个TextBox和一个Button。

ListBox staffList ),应该允许选择多个项目;将从Staff表中获取其RowSource,类似于

SELECT 
    staffID, 
    staffName
FROM 
    staffTable;

属性为Bound Column : 1Column Count : 2Column Widths : 0cm;2.542cm

ComboBox eventCombo ),将从Event表中获取其RowSource,类似于

SELECT 
    eventID, 
    eventName
FROM 
    eventTable;

属性为Bound Column : 1Column Count : 2Column Widths : 0cm;2.542cm

然后 TextBox dateTxt )只有一个Date控件(对于事件的日期)。

按钮 addEventBtn )点击后面的代码就是,

Private Sub addEventBtn_Click()
    Dim varItem As Variant

    If Me.staffList.ListIndex = -1 Then
        MsgBox "No Staff selected. You have to select at least one staff before you can proceed !", vbCritical
        Me.dateTxt.SetFocus
        Exit Sub
    End If

    If Me.eventCombo.ListIndex = -1 Then
        MsgBox "No Event selected. You have to select at least one staff before you can proceed !", vbCritical
        Me.dateTxt.SetFocus
        Exit Sub
    End If

    If IsNull(Me.dateTxt) Then
        MsgBox "No Date selected. You have to select Date before you can proceed !", vbCritical
        Me.dateTxt.SetFocus
        Exit Sub
    End If

    For Each varItem In Me.staffList.ItemsSelected
        CurrentDB.Execute "INSERT INTO tbl_EventList (eventID_FK, staffID_FK, eventDate) VALUES (" & _
                          Me.eventCombo & ", " & Me.staffList.ItemData(varItem) & ", " & Format(Me.dateTxt, "\#mm\/dd\/yyyy\#") & ")"
    Next
End Sub

这应该可行。请根据您的设计进行更改!如果您有任何疑问,请将其添加到评论中。