Microsoft Access 掲示板

コンボボックスの値を、連結したテーブルの列の他に、もう1か所に保存したい

7 コメント
views
4 フォロー

コンボボックスを使って代入したところとは別の列にもう一つ数値を代入したいです。なぜ2か所に入れるかというと、コンボボックスを使って代入した値を使って計算します。そのため、コンボボックスと連動しているテーブルの列の値が変わってしまいます。しかし、先に何を入れたかが後で確認したいので、コンボボックスを使って代入したところとは別の列にもう一つ数値を代入したいのです。ufterpudateのイベントを使って、VBAでできると思いますが、やり方をすっかり忘れてしまいました。申し訳ないですが教えてください。なお、テーブルに直接代入するのではなく、フォーム内の別のテキストボックスに入れるのでもいいですが、そっちのほうが難しかったようなきがします。よろしくお願いします。

ちばまもる
作成: 2024/03/07 (木) 21:42:35
通報 ...
1
りんご 2024/03/07 (木) 22:00:34 修正 935bc@0e907

具体的に数値のデータを示して説明しないと、伝わらないでしょう。

>先に何を入れたかが後で確認したいので、コンボボックスを使って代入したところとは別の列にもう一つ数値を代入したいのです。

「先に入れた数値がテーブルに保持されている状況を作って、別の列に計算したもう一つの数値を代入したいのです」、という流れになるのが普通だと思います。限られた情報からですが、あべこべな仕組みを実装しようとしているのかしら?

2
ちばまもる 2024/03/07 (木) 23:42:10 0bf9d@6f372

メッセージありがとうございます。昔の参考書を引っ張り出して調べたら、ADDまたはDAOを使う方法、SQLを使う方法があるようです。そんなに難しくなかったような気がするのですが。ただデータの追加の仕方は書いてあるのですが、そのデータをどのテーブルのどこに入れるかが、SQLの場合はWHERE句を使った指定ができるかどうかが参考書には書いてないので、ちょっと不安です。明日か明後日書いてみて、具体例をお示し出来たらと思います。

3
ちばまもる 2024/03/08 (金) 00:22:58 0bf9d@6f372

>「先に入れた数値がテーブルに保持されている状況を作って、別の列に計算したもう一つの数値を代入したいのです」、とい>う流れになるのが普通だと思います。

おっしゃる通りです。たとえば株の場合、為替が上がるかどうかは重要な要素だと思うのですが、個人的に為替が上がるという予想をして、それを他のデータと合わせて機械学習して、日経平均があがるかどうかを調べようとする場合、為替が上がるという個人的な予想と、実際に為替があがったかどうかのデータは両方持っておかねばならないと思うのです。というのは、為替が上がったかどうかは事前に判断できないので、その代わりに一つの要素として個人的な予想を入れているので、訓練のためには実際にどうだったかを使うことになるからです。あるいは個人的な予想をそのまま使ったほうがいいかもしれないですけど。いずれにしても、為替が上がるかどうかという個人的な予想と、実際に上がったかどうかのデータはひとつは同じところにおいておき、もう一つはそのままの状態で保持したいということです。

別に機械学習の専門家ではなく、個人的な楽しみでやっていますので、そんなのダメやん、みたいなことはあると思いますが、とりあえずそういうニーズで言っているということです。

4
りんご 2024/03/08 (金) 08:12:24 935bc@0e907 >> 3

やり方をすっかり忘れてしまいました。

思い出すきっかけになれば。T‘sWare AccessTips
テーブル構造、フォーム情報(連結コントロールソースなど)があれば、みんなの回答が増えると思います。

5
hiroton 2024/03/08 (金) 09:00:40 f7b56@f966d

もうちょっと具体的に説明できたほうがいいと思いますが

Private Sub コンボボックス_AfterUpdate()
    Me!別の列 = Me!コンボボックス
End Sub

ってことですかね

6

フォームが連結フォームなら、この方法でいいですね。

ADDやらDAO、SQLを使う必要はまたっくないです。

フォームを開いたときに、テーブルもレコードセットとして開かれているので。

7
ちばまもる 2024/03/08 (金) 21:39:56 0bf9d@6f372

明日勉強して頑張ってみようと思ってましたが、回答していただけてました! ありがとうございます。
これ絶対ADOを使う案件だと思ってました。

いつものことながら、ありがとうございます。