DBではセキュリティーからのPC名取得や、あいまい検索などはお手の物である。
*
以下SQL(参考までに全くの素人考えです)
(「候補名」でのあいまい検索と研究室IDがわかる場合の検索)
If IsNull([候補名]) Then
If IsNull([研究室]) Then
MsgBox ("研究室を選択してください")
[学部].SetFocus
Exit Sub
End If
stDocName = "F_研究室履歴"
stLinkCriteria = "Q_研究室履歴.研究室ID =" & [Forms]![F_研究室選択]![研究室]
suu = DCount("*", "Q_研究室履歴", "Q_研究室履歴.研究室ID =" & [Forms]![F_研究室選択]![研究室])
If suu > 0 Then
DoCmd.OpenForm stDocName, acFormDS, "", stLinkCriteria
Else
MsgBox ("この研究室では履歴がありません")
If MsgBox("候補名から検索しますか?", vbYesNo, "候補名検索") = vbYes Then
MsgBox ("候補名を入力してください")
[候補名].SetFocus
End If
End If
Else
stDocName = "F_研究室履歴"
stLinkCriteria = "Q_研究室履歴.研究室名 Like'" & "*" & [Forms]![F_研究室選択]![候補名] & "*" & "'"
DoCmd.OpenForm stDocName, acFormDS, "", stLinkCriteria
End If
*
(PC名の取得)
Public Function usGetComputerName() As String
Static sStrComputerName As String
If Len(sStrComputerName) = 0 Then
sStrComputerName = CreateObject("Wscript.Network").ComputerName
End If
usGetComputerName = sStrComputerName
End Function
*
以下SQL(参考までに全くの素人考えです)
(「候補名」でのあいまい検索と研究室IDがわかる場合の検索)
If IsNull([候補名]) Then
If IsNull([研究室]) Then
MsgBox ("研究室を選択してください")
[学部].SetFocus
Exit Sub
End If
stDocName = "F_研究室履歴"
stLinkCriteria = "Q_研究室履歴.研究室ID =" & [Forms]![F_研究室選択]![研究室]
suu = DCount("*", "Q_研究室履歴", "Q_研究室履歴.研究室ID =" & [Forms]![F_研究室選択]![研究室])
If suu > 0 Then
DoCmd.OpenForm stDocName, acFormDS, "", stLinkCriteria
Else
MsgBox ("この研究室では履歴がありません")
If MsgBox("候補名から検索しますか?", vbYesNo, "候補名検索") = vbYes Then
MsgBox ("候補名を入力してください")
[候補名].SetFocus
End If
End If
Else
stDocName = "F_研究室履歴"
stLinkCriteria = "Q_研究室履歴.研究室名 Like'" & "*" & [Forms]![F_研究室選択]![候補名] & "*" & "'"
DoCmd.OpenForm stDocName, acFormDS, "", stLinkCriteria
End If
*
(PC名の取得)
Public Function usGetComputerName() As String
Static sStrComputerName As String
If Len(sStrComputerName) = 0 Then
sStrComputerName = CreateObject("Wscript.Network").ComputerName
End If
usGetComputerName = sStrComputerName
End Function