投稿者 さすが  (社会人) 投稿日時 2019/8/22 10:18:13
当初の質問につき、引き続きよろしくお願いします。

実は、DataGridViewのフォームとは別に、レコードの追加・編集用フォームを設けたいのです。
レコードを追加・編集をすれば、瞬時にDataGridViewの表示内容も更新されるようにです。
表示させる順序も決めていまして、Columns("決算日")の降順です。
ここでDataGridViewのDataSourceはDs、
DataMenberは"クエリ1"というDataTableとします。

まずは、レコードの追加から取り掛かっています。

自分で調べ、コードを書き、試行錯誤の末、ついに
データベース(Accessファイル)へのレコード追加ができました。

次に、更新後の内容をDataGridViewに表示させるところに取り掛かっています。
頭を冷やす時間がなく、昨晩は、わざわざDataSetから"クエリ1"をRemoveしたり、
そのためにRelationやForeingKeyConstraintのRemoveをしたりして
再度"クエリ1"を生成する方法をとりました。

あとで、直接"クエリ1"にRowsをAddするコードに書き直した方がいいですかね?

本題に戻りますと、
ところがその後、DataGridViewが更新されません。
DataSetビジュアライザーを覗くと、"クエリ1"は更新されていますのに。

実は、今回の質問をさせていただく前は、Access側のTable(正規化に問題あり)で、
レコード追加後に瞬時にDataGridViewは更新されました。

その時のコードは、

Rs = New ADODB.Recordset
(中略)
Da.Fill(Ds, Rs, "クエリ1")

でした。つまりRecordsetがありました。

現在は、正規化に伴い必要となったコードの書き換え作業ということで、
教えていただいたコードを用い、

Ds.Fill(dt1)

としています。

ここから、Recordsetがないのが原因では?と推測しているのですが、
かといって、どう書き直せば良いかも分かりません。

以上、改めましてよろしくお願いします。