• ベストアンサー

アクセス フォームからテーブルのダイアログを出して

XPアクセス2000でフォームからテーブルのダイアログを出して テーブルを選択したいのです。 フォーム上にはテーブルを変換するイベントプロシージャーがすでにできています。 がテーブルが案件ごとに違っていて以前のテーブルや新しくインポート してきたテーブルなど複数あります、変換したいテーブルをダイアログで 選択したいのですがコマンドらしきものがなさそうなので 教えてください。

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

  • ベストアンサー
  • piroin654
  • ベストアンサー率75% (692/917)
回答No.2

質問の意図がわかりにくのですが・・・・、 テーブル一覧から特定のテーブルを取得したい ということであれば・・・・ということで。 リストボックスやコンボボックスでテーブルを 選択する方法はどうでしょうか。 たとえば、フォームにリストボックスを設定し、 リストボックスのプロパティで値集合ソースに、 SELECT MsysObjects.Name FROM MsysObjects WHERE (((Left([Name],4))<>"Msys") AND ((MsysObjects.Type)=1)) ORDER BY MsysObjects.Name; を貼り付けて、テーブル一覧を表示する方法はどうでしょうか。 リストボックスからテーブルを選択し、 選択したテーブル名を、たとえば Me!リスト0.Value (リスト0はリストボックスの名前です) などのようにして取得すればいいのでは。 このとき、取得した値はテキスト型に なることに留意してください。 コンボボックスも似たようなものです。 あるいは、別のフォームにリストボックスを 上記と同じよう設定し、ボタンクリックで フォームを呼び出し、リストボックスで テーブルを選択します。 このとき、選択したリストボックスの テーブル名の取得はリストボックスの テーブル名のダブルクリックで直接 取り込むか、あるいはテーブルを選択した 状態で、選択したテーブル名を、 Forms!別のフォーム名!リストボックス名.Value のような方法で取り出すかだと思います。 簡単なのはフォームにリストボックスを 直接設定し、そこから選択するのが いいのではと、思いますが。 なお、リストボックスのテーブル一覧は、フォームを 開いた状態でテーブルが新規に追加されたり 削除されたりすると直接反映されないので、 一旦フォームを閉じて再度開きなおすか、 あるいはボタンクリックなどで、 Me!リスト0.Requery などとして、データを更新します。

5302abc
質問者

補足

ありがとうございます。 付け加えさせていただきます。 変換するプロシージャとは 縦書きに出力するためのプロシージャで フィールドを新たに作って住所の数字を漢数字 にしたり敬称を付けたりしています。 客先から支給されるデータはおもにエクセルですが ファイル名は社長交代、移転、役員改選とか25年度 案内状などなど千差万別ですがこれをアクセスのテーブルに 取り込んで目的のフィールドを変換しますが 現在はJLISTというテーブルにリネイムしてから 変換しています。が変換後これをまたリネイムしておかないと どれがどれだかわからなくなってしまっています。ので できるだけ元のデータ名を残し変換したいのですが 他のファイルならDIRを使えるのですが 変換のボタンをクリックしたらリストボックスが出て テーブルを選ばせればその方がいいですね でもテーブルを表示するダイアログはないのですかね

その他の回答 (2)

  • piroin654
  • ベストアンサー率75% (692/917)
回答No.3

No2です。 残念ながら直接テーブルを表示するような ダイアログは無かったと思いますが。 ファイルの選択、ディレクトリの選択、色の選択などが 精一杯だと思います。

  • 007MUKADE
  • ベストアンサー率41% (286/694)
回答No.1

テーブル構造が 解りませんが・・・・ ”案件毎のテーブル”を造る・・・と云う意図が解りません。 別途 ”案件テーブル”(案件ID、案件名称、更新日 等のフィールド)  を造り 此のテーブル自体に ”案件ID”のフィールドを設けてやれば クエリーの検索絞り込みや コンボボックス の利用で お望みの 事が出来るのでは・・・? 但し 取り込むデーターは 使用中のテーブルプロパティーに合わせる 必要は ありますが・・・ >フォーム上にはテーブルを変換するイベントプロシージャーがすでにできています。 がこれに該当したプロシージャーでしょうか? 頑張って下さい。もう少し・・の感じです。

関連するQ&A

  • ACCESS2000 フォームからデータのインポートを起動するには

    お世話になります。 フォーム内にコマンドボタンを配置し、そのボタンをクリックしたら、ファイルからテーブルへデータのインポートを起動するようにしたいのですが、イベントプロシージャで、どのように記述すればよいでしょうか。 あるいは、そんなことはできないのでしょうか。

  • Access フォームからの入力結果をテーブルにすることはできない?

    Access フォームからの入力結果をテーブルにすることはできない? 使用しているのはWindows XP、Access 2003です。 とある調査結果をデータベース化する仕事を与えられています。 データ1件あたりの構成要素を一目で見れるようにするために「こういうレイアウトのフォームを作って」と上司からリクエストが出ています。 まず、今手元に集まっているデータについては、 Excelで一覧表作成 → Accessにインポートしてテーブル作成 → オートフォームでフォーム作成し、デザインビューでレイアウト変更 というふうにして、上司から言われたフォームは作りました。 今後、データは増えていくので、作ったフォームから新たにデータの追加をしていくことになるのですが・・・。 フォームからデータを追加しても、元となったテーブルにはリンクしませんよね? とすると、データを追加した結果をテーブルにしたい場合はどうしたらいいのでしょうか? 今度は、そこからクエリを組む必要も出てくるため、テーブルにしたいのですが・・・。 Accessについては、以前勤めていた会社の研修で習っただけで詳しい使い方をずいぶん忘れてしまっています。今回、自分なりにいろいろ調べてはみたのですが、よくわかりませんでした。 もしかしたら、Accessの使い方を基本的に間違っているでしょうか・・・ よろしくお願いします。

  • フォームからのレコード削除について

    access超超初心者です。 フォームのコマンドボタンをクリックすると テーブルのレコードを追加または削除する方法を教えてください。 [イベントプロシージャ]を使用して、どのようなプログラムを書けば いいのでしょうか? ど素人の質問ですいません。

  • Acccessで2つのテーブルから1つのフォームをつくりたい

    お世話になります。 初心者です。Access2002を使っています。 AとBの2つのテーブルから1つのフォームをつくることはできますか? フォームウィザードでAとBのテーブルのフィールドを指定してフォームを作成しようとすると、「A.Bテーブルのフィールドを選択しましたが、このうち1つまたは複数のテーブルが他と関連ありません...」というエラーメッセージが出ます。 解決策がありましたらよろしくお願いします。

  • access フォームのコマンドボタンをマクロ実行

    access97 フォームの中のコマンドボタンをひとつのマクロで実行したい お世話になります 上記表題のように現在access97をwindowsXP sp3で使用しています ここで例えば フォーム Aというフォームのなかに コマンドボタンBが 設置されているとします コマンドボタンBをワンクリックするとイベントプロシージャーCが実行されるとします お尋ねしたいのは ひとつのマクロDによって 上記 一連の操作をしたいのですが マクロをデザインビューで開きますと まず アクションにおいて フォームを開く 下左のダイアログに フォームの名称に コンボリストから Aを選択します 次に このコマンドボタンBを実行するために このマクロDのデザインビューにおいて 以下の行のアクションに どのように 入力したら よいものか 御教示願いたいです コマンドの実行 から できるかなと 思ったのですが 適切な項目がリストから 表示されません 御存じの方 宜しくお願い致します access97以降の新しいバージョンでのご解説でも参考になりますので 宜しくお願い致します

  • Accessでパラメータークエリのパラメータを、フォームのリストボックスから選択することってできませんか?

    Accessで パラメータークエリのパラメータを、フォームのリストボックスから選択することってできませんか? あと、抽出されたテーブルの最後のリストの値を、テキストボックスに表示させるような、イベントプロシージャってどうのように書きますか? 以上、よろしくお願いします。

  • ACCESSのフォームとテーブルの連携について

    ACCESSのフォームとテーブルの連携について 説明がややこしくて大変申し訳ないのですが、教えてください テーブルが1つあります。 そのテーブルを元にフォームが作成されています。 そおフォームの一つのフィールド((コンボボックス)→[テスト]フィールド名とします)でOK と NG と選択できるように値集合ソースを設定しています。 そしてここからが本題なのですが、 そのフォーム上では使用しない(見せたくない)フィールド([いろは]フィールド名とします。)がテーブルに1つあるのですが 例えばフォームの[テスト]に仮に OK と選択して保存したら、 テーブルの[いろは]に 快調 と自動反映させることは可能でしょうか?

  • access フォーム1からレコードコピー

    access2003 Win-XP フォーム1   データ1  コマンドボタン   データ2  コマンドボタン フォーム2   テキスト  フォーム1のデータを選択してコマンドボタンをクリックし、次のデータも選択クリックして  フォーム2のテキストへ書き出す。ここへは追加され、複数のデータが書き込まれるように  したいと考えています。 1つのデータを選択書き出しなら  Private Sub コマンドボタン_Click() forms![フォーム2]![データ項目] = Me.データ項目  End Sub  これでできますが、テキストにどんどん追加するにはどうすればいいでしょうか? VBの未熟者です。宜しくお願いします。  

  • アクセスのフォーム画面で入力

    アクセス2002のフォームで文字を入力(選択)させてボタンを押すと 別の画面でその入力(選択)した文字が表示させるイベントプロシージャをつくりたいのですがPub sub~End sub内にどういう記述が必要なのでしょうか?

  • ACCESSでファイル指定のダイアログを表示し、指定されたアドレスをテ

    ACCESSでファイル指定のダイアログを表示し、指定されたアドレスをテーブルに持ちたい。 ・フォームにボタンを配して、ボタンクリックでダイアログが表示 ・ダイアログより選択されたファイルアドレス(ファイル)が、フォーム上に表示 ・フォームを閉じる際に、レコードに更新したい。 ・再度(変更)フォームを開いた場合は、ダイアログのデフォルト表示は、テーブルの内容を考慮したい。 回答履歴を拝見し、いろいろ試したのですが、うまくいきません。 よろしく、お願いします。 バージョンACCESS 2010

専門家に質問してみよう