
フィールドに数式セットをしようとして以下のように書きましたが
「データベースまたはオブジェクトは読み取り専用なので、更新できません」との
エラーが出ます。アクセスは初心者なので宜しくお願いします。
Dim db As DAO.Database
Dim rst As DAO.Recordset
Set db = CurrentDb
Set rst = db.OpenRecordset("Q02_5_見込み案件数") Q02_5_見込み案件数はクエリ
With rst
Do Until .EOF
.Edit →ここで上記のエラーが発生します。
!件数 = !件数 * Me.SP予測掛け率
.Update
.MoveNext
Loop
.Close
End With
No.3ベストアンサー
- 回答日時:
クエリというのはSQL文をわかりやすく表示したものです。
(ので、クエリでできないものをSQLであればできるという可能性は少ないのですが、クエリというのはGUIですから、何を具体的にやっているのかなどを文章で説明するのは非常に困難ですので、ドキュメント化しにくいという欠点があります。 また、将来的に他のデータベースに変更する際など、手間がかかるのも問題です。)データベース上ではテーブルの個々のデータの更新はできますが、クエリなどで集計したものや計算したものについては、テーブル上のどのレコードのどの値を変えるかがわからないため更新することができないのが普通です。
質問者様がやりたいことがはっきり見えていないので、正しい回答になるかがよくわからいのですが、
・件数というのがレコード数なら、集計する前のクエリで掛け率を表示する列を作りそれを合計させる
・件数というのが個々のレコードに入っている何らかの値なら、補正件数みたいな列を作りそこに件数と予想掛け率を掛けた値を入れて置き集計させる
などの方法が思いつきます。
詳しく説明してくださってありがとうございます。
「T02_見込案件」テーブルの「案件番号」フィールドのレコード数をカウントする
クエリを作って、その件数にユーザーフォームから入力した掛け率係数をかける機能を作ろうとしましたが、
それがうまく行かなくて質問を出しました。
件数を数えるクエリ削除して他の方法で件数を数えなければならないですね!
下手な説明ですみませんでした。
とても役に立ちました。
No.2
- 回答日時:
No.1
- 回答日時:
テーブル(か関連しているクエリ)が(連結フォーム上などで)開いた状態になっているとか。
あと、クエリを更新しようとしている場合は、連結状態によっては(1:1でない場合は)レコード単位での更新はできないこともあると思います。(集計クエリとかだと、そもそも更新はできないような気がします。)
何をされようとしておられるのかが、はっきりとは理解できませんが、アクセスを利用されているなら、まずは更新クエリなどで実行できるようにするとよいと思います。 VBAを使う場合は、クエリをSQLにして、それをコネクションで実行するのが個人的には良いと思います。
回答ありがとうございます。
おっしゃった通り集計クエリです。
集計クエリで今更新出来ないです。
SQL文だったら更新できますか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) アクセス レポートを開いたときにパラメーターの自動入力がしたい 4 2022/11/30 11:21
- Visual Basic(VBA) ACCESS DAO で不要なテーブルのフィールド(列)の削除 4 2022/06/23 12:13
- Access(アクセス) アクセス テーブルの空白を変数に置換するボタンが作りたい 4 2022/07/08 11:19
- Visual Basic(VBA) Excelで下記のようにマクロを作ったところ、一回目は実行できたのですが、二回目以降「実行時エラー1 1 2022/03/25 08:08
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- Access(アクセス) 実行時エラー3131 FROM 句の構文エラーです について 7 2022/06/13 15:45
- Access(アクセス) DoCmd.SearchForRecord が動かない時の解決方法 3 2022/07/22 15:31
- Visual Basic(VBA) VBAでWorkbook.addの使い方 3 2023/02/01 11:58
- Visual Basic(VBA) ExcelVBAに関する質問 3 2023/02/17 10:47
- Excel(エクセル) 【マクロ】スクショ印刷がうまく動かない件 5 2022/12/06 17:37
このQ&Aを見た人はこんなQ&Aも見ています
-
ACCESSでデータ読み取り専用を解除する方法
その他(データベース)
-
Access2000 で読み取り専用のエラー
その他(データベース)
-
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
-
4
Accessのクエリで、replace関数を使い、データの中にある”をブランクに置き換えたいのですが
Access(アクセス)
-
5
Access VBAから使用したExcelプロセスを閉じる方法について
Visual Basic(VBA)
-
6
AccessからExcelにエクスポートする時に常に上書きしたい
Excel(エクセル)
-
7
Access サブフォームでの選択行の取得
その他(データベース)
-
8
ACCESSで値を代入できないとは?
Visual Basic(VBA)
-
9
アクセスVBAで既に開いているエクセルを閉じたい
Yahoo!ショッピング
-
10
Accessのマクロでモジュールを実行させたい。
Access(アクセス)
-
11
Access 最後のレコードに到達するまでループ処理を行う方法
Access(アクセス)
-
12
ODBCリンクの際にACCESSでは読み取り専用にしたい!
Oracle
-
13
ACCESS 複数のフォームから同一テーブル参照
Access(アクセス)
-
14
Access2010 「演算子がありません」エラー
その他(データベース)
-
15
accessでクエリをExcelにエクスポートする時にファイル名に日付を追加したい
Access(アクセス)
-
16
Access レポート印刷するときに1ページに収める方法
Access(アクセス)
-
17
アクセスVBAのMe!と[ ]
Access(アクセス)
-
18
Access 複数フォームを開き、画面の最上面にしたいフォームをコント
その他(データベース)
-
19
アクセスのエラー「クエリには出力フィールドが1つ以上必要です。」
その他(Microsoft Office)
-
20
レコードを保存するコード アクセスvba
その他(Microsoft Office)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ACCESS クエリで重複データを最...
-
「データベースまたはオブジェ...
-
ACCESSでクエリを作成したら「...
-
accessで選択クエリで得た全レ...
-
ACCESS クエリで、グループ化...
-
ACCESSにてフィールド間の最小...
-
階層データのあるテーブルで親...
-
access SQLの抽出結果をFilter...
-
ExcelのマクロをAccessで動かす...
-
access・カウント結果がゼロで...
-
AccessのクエリをSqlサーバーの...
-
Accessで複数のクエリを1つのCS...
-
追加先の発見方法(SQL以外)
-
Accessのパラメータクエリを他...
-
ACCESSでデータ削除すると「読...
-
テーブルに主キーを作らないデ...
-
ACCESSのフォームに関して質問...
-
Access2000 2番目に大きい数値...
-
Accessで Bテーブルのフィー...
-
Access 別フォームへの再クエ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ACCESS クエリで重複データを最...
-
「データベースまたはオブジェ...
-
ACCESSでクエリを作成したら「...
-
ACCESS クエリで、グループ化...
-
ACCESSにてフィールド間の最小...
-
access・カウント結果がゼロで...
-
追加先の発見方法(SQL以外)
-
ACCESS のクエリー実行に異常に...
-
クエリで「データ型が一致しま...
-
アクセスでフォームが更新でき...
-
Access あるクエリを利用して...
-
SqlServer2012 ビューとクエリ
-
access:連続データ入力
-
アクセスのスナップショット
-
Accessのクロス集計クエリから...
-
accessで選択クエリで得た全レ...
-
ACCESSで2つのテーブル比較で...
-
AccessでのDISTINCTROW 、DISTI...
-
選択クエリで偶数月しか表示し...
-
SQLで優先順位が高いレコードを...
おすすめ情報