重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

1つのAccessファイルを複数人で利用するため、排他テーブルを作成しています。
フォームを開いた時に、入力フォームに記載されている伝票番号を、排他テーブルに入力し、ほかの人が見た場合、編集できないようにしています。
現在、排他テーブルには伝票番号の項目しかありません。あわせてどのマシンがその伝票番号を取得しているかを確認したいのですが、VBAでマシンIDを取得するにはどうすればよいでしょうか。
もし何か方法があればお教えください。

A 回答 (1件)

マシンIDとして、どのような物を望んでいるか分かりませんが


OS が2000以上?なら、Environ("ComputerName") でコンピュータ名が取得できます。
ネットワーク上で一意の名前ですから使えませんかね?

なお、コマンドプロンプトで、Set で
そのマシンで用意されている環境変数が分かります。

この回答への補足

回答ありがとうございます。
Environ("ComputerName")で取得することができましたが、更新しようとするとエラーになってしまいます。

Public Function HAITA_ADD(ByVal zNo As String) As Boolean

Dim comName As String
comName = Trim(Environ("ComputerName"))

Dim cnc As New ADODB.Connection
Dim rst As New ADODB.Recordset
Dim cmd As New ADODB.Command

Set cnc = CurrentProject.Connection
Set cmd.ActiveConnection = cnc

cmd.CommandText = "INSERT INTO 排他テーブル(受注番号,コンピュータ名)" & _
" VALUES(" & zNo & "," & comName & ")"
Set rst = cmd.Execute

End Function

上記コードで実行すると「一つ以上の必要なパラメータが設定されていません。」とエラーが表示されてしまいます。
テーブル、フィールド名は間違いありません。(またデバッグ時、comNameはちゃんと取れています。)

原因がわかりましたらお教えくださいませ(><)!

補足日時:2006/09/25 16:09
    • good
    • 0
この回答へのお礼

下記の件ですが自己解決しました。

cmd.CommandText = "INSERT INTO wk_メモデータ排他チェック(受注番号,コンピュータ名)" & _
" VALUES(" & zNo & "," & "'" & comName & "'" & ")"

でした…。すみませんでした。

素早いご回答本当にありがとうございました!また何かありましたらよろしくお願いいたしますm(_ _)m

お礼日時:2006/09/25 16:20

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す