私は2つのモジュールを持っています。 1つはプロシージャー(さまざまな照会など)を実行し、もう1つはユーザー名、変更などの表に書き込むことになっています。アクセスVBAモジュール間で変数を渡す
テーブルに書き込むスクリプトを正常に作成しました。テーブルから読み込みます。しかし、私はその変数を一方から他方に渡すことはできません。
例えば、ここではサブ/機能ReadSystemTbl()
Sub Testing()
Dim x As String
x = ReadSystemTbl("User")
MsgBox x
End Sub
から「ユーザー」の値を読み取ろうとすると、ここで値を見つけて、それを返すコードですコードです:
は、Public Function ReadSystemTbl(FindField As String)
Dim db As Database
Dim rs As Recordset
Dim SystemField As Field, SystemValue As Field
Dim results As String
Set db = CurrentDb()
Set rs = db.OpenRecordset("SystemTbl")
Set SystemField = rs.Fields("SystemField")
Set SystemValue = rs.Fields("SystemValue")
Do Until rs.EOF
If SystemField = FindField Then
results = SystemValue
End If
rs.MoveNext
Loop
End Function
「End If」の前に「Exit Function」を追加することをお勧めします。必要がない場合は、レコードセット全体を反復処理しないでください。実際にはしないでください。コードを正しく動作させて、[codereview.se]に載せて、リソースを適切に整理する方法についてフィードバックを得てください。 –