次の方法で共有

フォームのレコードが更新できず困っています。

Anonymous
2015-11-05T05:28:30+00:00

初めて質問させて頂きます。

宜しくお願い致します。

現在、アクセスADP(OLE DB)をaccdb(ODBC)へ移行作業しています。

ADPではフォームのプロパティ画面で

「レコードソース」に(SQL Serverの)ストアドプロシージャ名を、

「入力パラメータ」欄に入力パラメータを入力し、

開いた画面で更新も出来ました。

ちなみにここで指定しているストアドプロシージャは

社員情報テーブルから社員ID等を指定する

単純なSELECT文です。

accdbではフォームの開く時にストアドを呼出し

レコードセットにSETするところまではでき、(←★の部分)

フォームにもデータが表示されるのですが、更新ができません。

自己流で開発して来ましたので、的を得ない部分もあるかと思います。

更新できるようにしたいのです。

ご教示ください。

Dim cnn As New ADODB.Connection

Dim cmd As New ADODB.Command

Dim rst As New ADODB.Recordset

cnn.ConnectionString = "Driver={SQLServer};Server=サーバーのIPアドレス;Database=データベース名"

cnn.Open

cnn.CursorLocation = adUseClient

Set cmd.ActiveConnection = cnn

With cmd

  .CommandText = "ストアドプロシージャ名"

  .CommandType = adCmdStoredProc

  .Parameters.Refresh

  .Parameters(1) = 入力パラメータ_1

  .Parameters(2) = 入力パラメータ_2

End With

Set rst = cmd.Execute

Set Me.Recordset = rst ←★

Set rst = Nothing

Set cmd = Nothing

Set cnn = Nothing

Microsoft 365 と Office | アクセス | 家庭向け | Windows

ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。

0 件のコメント コメントはありません

質問作成者が受け入れた回答

Anonymous
2015-11-06T02:16:35+00:00

ky9095 さん、こんにちは。

マイクロソフト コミュニティへの投稿ありがとうございます。

adp から accdb への移行作業で、データの更新が上手く動作しないのですね。

VBA を使用した処理については、おもに開発者の方々が情報交換を行っている MSDN に専門のフォーラムがあるので、そちらに投稿していただいた方がより情報やアドバイスが得られやすいかと思います。

MSDN の VBA フォーラムせっかくこちらに投稿していただいたのにお手数をおかけいたしますが、MSDN フォーラムをご利用になってみてくださいね。

この回答は役に立ちましたか?

0 件のコメント コメントはありません

1 件の追加の回答

並べ替え方法: 最も役に立つ
  1. Anonymous
    2015-11-06T02:26:53+00:00

    近藤様

    アドバイスありがとうございます。

    改めてVBAフォーラムの方に投稿させて頂きます。

    ありがとうございました。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません