• ベストアンサー

アクセスのテーブル作成クエリでプロパティに説明を書きたい

テーブル作成クエリでテーブルのプロパティにある「説明」のところに一文を入れたいのですが、どうしたらよいでしょうか? 「SQLビューで1行加えるだけでOK」という方法があれば助かります。 よろしくお願いします。

noname#18325
noname#18325

質問者が選んだベストアンサー

  • ベストアンサー
  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.2

こんなのを標準モジュールに加えて これをマクロから 呼び出すとか? プロシージャの実行 プロシージャ名には、MakeTable ("Q1","newtbl", "生まれたて") のようにする。 Qname テーブル作成クエリ名 newTblName 上記が作るテーブル名 tableDes テーブルの説明 Function MakeTable(Qname As String, newTblName As String, tableDes As String) '要参照設定 DAO3.x Object Library Dim db As DAO.Database Dim tdf As DAO.TableDef Dim prp As DAO.Property Set db = CurrentDb For Each tdf In db.TableDefs If tdf.Name = newTblName Then db.Execute ("drop table " & tdf.Name) End If Next db.Execute Qname, dbFailOnError db.TableDefs.Refresh Set prp = db.TableDefs(newTblName).CreateProperty With prp .Name = "description" .Type = dbText .Value = tableDes End With db.TableDefs(newTblName).Properties.Append prp Application.RefreshDatabaseWindow End Function

noname#18325
質問者

お礼

ご回答ありがとうございます。 残念ながら、私には難しすぎます。 頑張ってみましたが、 私の勉強不足でうまくいきません。 もう少し時間をかけて、勉強したいと思います。 そう簡単にできることではないことが分かっただけでも良かったです。 ありがとうございました。

その他の回答 (1)

  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.1

SQL 文では出来ないと思います。 VBA になりますが 参照設定で、DAO3.x にチェックを入れて 適当なモジュールに currentdb.TableDefs ("テーブル名").Properties("description").Value = "生まれたて" application.RefreshDatabaseWindow かな?

noname#18325
質問者

補足

ご回答ありがとうございます。 SQLではできないということは、クエリではできないということですか? モジュールを実行して、クエリ実行後に、説明に書き加えるということになりますでしょうか? VBAの知識がないのですが、頑張りたいと思います。 もう少し具体的に、モジュールの作り方を教えていただけないでしょうか? 多分、教えていただいた currentdb.TableDefs ("テーブル名").Properties("description").Value = "生まれたて" application.RefreshDatabaseWindow の前後に何か記述しないといけないんだと思うのですが、 どうしていいのかが分かりません。 よろしくお願いします。

関連するQ&A

  • Accessのクエリのプロパティ

    クエリのプロパティの「最大レコード数」について教えてください!! 「ODBCデータベースからAccessデータベースにデータを返すクエリやSQLデータベースからAccessプロジェクトにデータを返すビューで返される最大レコード数を指定します。」 という説明を見たのですが、なんのことやら。。。 わかりやすく教えてほしいのです。

  • Accessのテーブル作成クエリで・・・

    Access2000で「テーブル作成クエリ」を作ろうとしておます。 デザインビューの画面では、既存テーブルの項目をクエリのフィールドへ追加していきますが、 (・・・ここまでは極普通のクエリ作成方法です) それ以外のフィールドとして、先頭に”オートナンバー”を設けることは可能なのでしょうか? また、その場合どのように設定したらよいか、教えていただけますか? 何卒、よろしくお願いいたします。

  • アクセスのクエリを開く前にマクロを実行できますか?

    フォームやレポートを開く前にマクロを実行できますが、同様のことをクエリを開く前にもする方法はないでしょうか? 具体的には、いくつかのテーブル作成クエリと追加クエリをまとめて行うマクロを実行してから、選択クエリを開きたいのです。 「SQLビューで1行加えるだけ」みたいなのができると助かります。 よろしくお願いします。

  • テーブル作成クエリで作成したテーブルに連番をふりたい

    こんにちは。 ACCESS97を利用しているのですが(OSはWin2000)、 クエリーで作成したテーブルに連番を振ることは出来ますか? テーブル作成クエリーで5フィールドのテーブルを作成するようにしているのですが、できあがったテーブルの先頭フィールドに1から連番をふりたいのです(計6フィールドのテーブルをクエリーから作成したい)。 イメージとしては、デザインビューでテーブルを作成したときに、1フィールド目にオートナンバー型を利用するのと同じ感じで。。 方法が思いつきません。。 よい方法がありましたらご協力をお願い致します

  • ACCESSのテーブル作成クエリについて

    お世話になっております。 以下の点について教えてください。 1.テーブル作成クエリで作ったテーブルの書式固定  クエリ実行後、テーブルは作成されるのですが、クエリで設定した書式が  反映されません(例:数値→標準→小数点以下3)。  クエリで設定した書式をテーブルに反映させる方法を教えてください。  現在は、テーブル作成クエリ実行後、いちいち、テーブルの書式を変更しております。 2.ユーザー設定モードでのオブジェクト移動  ・ACCESSをユーザー設定 & グループでフィルターの状態で使っています。  ・この状態でテーブル作成クエリとテーブル作成クエリ実行後に作成されるテーブルを   グループ分けして分類しておりますが、各グループにあるテーブル作成クエリを   実行すると、グループ内にあったテーブルが「割り当てられていないオブジェクト」に   移動してしまいます。  テーブルをグループ内に固定する方法を教えてください。 よろしくお願いします。 

  • accessテーブル作成クエリについて

    テストで6個のテーブルから必要なテーブルを作成するクエリを作りました。 本日新しい本番データができたのでこのDBにテストでOKだったクエリを「ファイル」-「外部データ。。。」-「インポート」しました。 クエリを実行したところレコードがゼロという結果になりました。 テストでOKだったクエリを「コピー」-「貼り付け」しても同じ結果でした。 クエリを別のDBで使用するにはどうしたらよいのでしょうか? 毎月データが更新されるためDBの名前は、「工場0906」「工場1003」のように工場+月日となります。 よろしくお願いします。

  • アクセス テーブル作成クエリ

    アクセスです。 元のテーブルには「内容」と言うフィールドがあり、データ型をメモ型にしています。 値は255文字以上入れています。 そのテーブルを元にテーブル作成クエリで新規にテーブルを作成すると、 メモ型の内容フィールドは、テキスト型になり、全ての文字が入りません。 元がメモ型のフィールドでもテーブル作成クエリでテーブルを作成しても テキスト型にならないようにする方法はありますか?

  • アクセス クロス集計クエリ→テーブル作成クエリ

    クロス集計クエリは、 そのままテーブル作成クエリを使って クロス集計クエリのままテーブルにすることはできないのでしょうか? クロス集計クエリの時は、行見出し・列見出しがあるのに、 そのままテーブルにはなりません。

  • ACCESSのクエリ(SQLビューについて)

    こんにちはtmgmです。 ACCESSのクエリ(SQLビューについて)について質問です。"INSERT INTO TBL SELECT * FROM TBL1"というようなINSERT文をSQLビューに書き込んで実行することはできるんですが、これが複数行になるとどうしてもエラーが出てしまいます。ちなみに実行したい同じような文体のSQL文は100行近くあります。どうすればよいでしょうか?

  • ACCESSのクエリで同じSQL文だが結果が異なる

    ACCESS2003にて 選択クエリAをSQLビューで開きSQL文をコピー、 新規作成したクエリBのSQLビューに貼り付けて実行したところ、 AとBで結果の件数が異なりました。 そのままBを保存して終了。 BをSQLビューで開き、 SQL文の末尾の;を削除して実行すると、 Aと同じ件数の結果になりました。 再度Bを保存して終了し、 BをSQLビューで開き、 SQL文の末尾の;を削除して実行すると、 Aと異なる件数(元の結果)になりました。 何が原因なのでしょうか。 SQL文の内容は、サブクエリを含んでいて、サブクエリのFROMは SQLSERVERのリンクテーブルです。 よろしくお願いします。

専門家に質問してみよう