• ベストアンサー

EXCELで帳票フォームをつくりそのデータをACCESSテーブルで管理する方法

失礼します。あまり説明がうまくないかもしれませんがよろしくお願いします。 まずやりたいことは障害連絡票などの帳票類をEXCELで固定フォーマットとして作りそのデータをACCESSのフォームを使ってテーブルにインポートし、どんどん貯めていくようにしたいんですがいい方法がわかりません。最終的には出力メニューから条件を指定して自由にデータを抜ける様になれば一番いいですがなにかいい方法やサンプルなどあれば教えていただきたいです。 ちなみにインポートする時に.xls形式から普通にダイアログを開きファイルを指定してインポートなども出来るのでしょうか? 稚拙な文で失礼します。 よろしくお願いします。

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

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.1

>説明がうまくないかもしれませんがよろしくお 説明が旨くないということは、勉強をしてないということです。 ーー >ACCESSのフォームを使ってテーブル なぜフォームを仲介するのか。 アクセスは少しやったことがあるのか。これだけWEBには情報があるのに調べて勉強したか。 アクセスを巻き込むなら、アクセスのフォーム入力をなぜ考えないのか。 http://www.relief.jp/itnote/archives/000543.php ーー >インポートする時に.xls形式から普通・・ Googleででも「アクセスにインポート」ででも照会すれば、たくさん記事が出る。 http://office.microsoft.com/ja-jp/excel/HP052008521041.aspx ほか多数。 やってみればよい。やって失敗しても、何処までは出来たか、質問文に書ける。その場合、回答を読んでの理解も早いはず。回答者に頼りすぎ。 ーー インポートの操作は アクセスの ファイルー外部データの取り込みーインポート あとはダイアロウグ画面の指示に従って入力する。 ーー そのテーブルに前もってレコードがあっても、そのあとに、追加してくれる。 アクセスのテーブルは閉じておく。 エクセルデータの第1行目と、アクセスのフィールド名は一致させておく。 アクセスにIDフィールドがあっても、エクセルデータ列に無くてもよい。 エクセルの項目が、アクセスのテーブルの1部しかデータが無くても インポートできるはず。 ーーー >最終的には出力メニューから条件を指定して自由にデータを抜ける様になれば・・ 出力メニューとは?抜くとは?後者は俗語だ。前者はあいまい。フォームのことか。 これはアクセス側の話でしょうが、クエリという分野で、代表的なアクセスの機能。アクセスの本も、読んでないのでは。

anman0201
質問者

お礼

アドバイスありがとうございます。 まだ初心者なのでもう少し自分で勉強してみます。

その他の回答 (1)

  • rivoisu
  • ベストアンサー率36% (97/264)
回答No.2

やれるかどうかはべつとして AccessでインポートよりExcelでプッシュ(ADOを使ってDBに入れる)ほうが素直なやり方でしょう。 Excelで入力しているのですから入力が終わったら登録ボタンみたいなものでAccessのDBに入れる。 入力した人が保存をしてAccess側からデータを取りにいく。 無駄が多くて不自然です。間違いもおきやすいでしょう。

anman0201
質問者

お礼

アドバイスありがとうございます。 参考にしてがんばってみます。

関連するQ&A

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

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

  • 帳票から単票フォームへの表示がうまくいきません

    ACCESSを始めたばかりです。 帳票表示されているレコードを単票フォームで表示させたいです。 テーブル「売上データ」がありこのテーブルを使って帳票用と単票用のクエリを作成、それぞれに対してフォームを作っています。 「売上データ」には、オートナンバーで No があり、これを主キーにしてあります。 クエリ Q帳票   フォーム F帳票 クエリ Q単票   フォーム F単票 フォームF帳票には、レコード内にボタンをおきました。 ボタンには、下記のマクロをつくって イベント クリック時 のところにいれました。 マクロ フォームを開く  フォーム名 :F単票  ビュー   :フォームビュー  フィルタ名 :  Where条件式 :[No]=[Forms]![F帳票]![No]  データモード:  ウィンドウモード:ダイアログ フォームF帳票 で、検索窓を作って検索した一覧の中から単票表示したいレコードのボタンをクリックして単票フォームをダイアログで開かせたいです。 上記のようにやってみたのですが、単票フォームは開くもののデータは空白になってしまいます。 ちなみに、作ったマクロを実行してみると Forms!F帳票!No とパラメータの入力を求められるので適当な数字をいれるとその数字に該当した単票フォームが開きます。 WEBで探して同じような感じで作ってみたのですがうまくいきません。 どこが間違っているのでしょうか? ちなみにクエリ Q単票 の Noの抽出条件に[Forms]![F帳票]![No]をいれてみたりもしましたがうまくいきませんでした(空白で単票が開く) 何卒よろしくお願いします。

  • Accessにエクセルからデータをインポートしたい(VBA)

    Access(2000)のVBAでExcel(2000)からデータをインポートしたいと思います。 詳細は以下の通りです。 フォームでコマンドボタンをクリック時にダイアログボックスが開き、ファイルを指定し、該当のシート(シート名はどのファイルも固定)のデータをアクセスのテーブルにインポートしたい。 どうしたらできるのかここ数日悩んでいます。 よい方法がありましたら教えてください。

  • vbaで帳票フォームで開きたい アクセス

    vbaでフォームを開くときに 既定のビューを指定してるのですが 指定したとおりになりません。 Private Sub Form_Load() Me.DefaultView = 1 '帳票フォーム End Sub としてもデータシートビューで開かれてしまいます。 Private Sub Form_Load() Me.DefaultView = 1 '帳票フォーム MsgBox Me.DefaultView End Sub とすると、1が返るのに やっぱりデータシートビューになってしまいます。 なぜでしょうか? エラーにもなりません。

  • アクセス データの競合を非表示にしたい

    帳票フォームを開いてる状態で 現在選択しているレコードを 新たなフォームで単票フォームとして開いて、 データを変更して保存しようとすると データの競合と言うダイアログが毎回出てしまいうっとうしいのですが これを非表示にする方法はありますか? 多分、帳票フォームを開くことで、テーブルを使っている状態にしているのに、 さらに単表フォームでデータの変更をしようとしてるからこのようなダイアログが出るのだと思います。 このダイアログを非表示にできないのなら、何か対策はありますか? 一覧で表示されるデータを選択し、そのデータの詳細を開き、詳細画面でデータの更新が終了したら もとの一覧の画面に戻りたいです。

  • ACCESS 帳票フォーム 表示件数

    ACCESSの帳票フォームに表示させる件数を指定することは可能なのでしょうか。 全部で1000件のデータが入っているテーブルがあります。 それを最初オープンした時には最初の500件を表示。次へボタンを押したら501から500件を表示するイメージです。戻るボタンもつけようと思っています。 どなたか分かる方いらっしゃいましたらお願いします。

  • Accessの帳票形式のフォームについて

    いつも楽しく勉強させていただいております。 OSはWindows7。 フロントエンドがAccess2013でSQLServer2012がバックエンドです。 複数レコードを一度に表示するいわゆる帳票形式のフォームを作ります。 [保存]ボタンで変更を保存、[キャンセル]ボタンで保存しないでフォームを閉じます。 このようなフォームを作る際、私はこれまでこの方法でやってきました。 1.本物テーブルの内容をテンポラリのテーブルにコピー 2.テンポラリのテーブルと連結したフォームで編集 3.[保存]ボタンのクリックでテンポラリのテーブルで本物を上書き この方法の弱点は本物のテーブルにロックがかからないことです。 かといって本物のテーブルに連結したフォームにすると編集した内容をキャンセル することができません。 これを解決する根本的な方法はないものでしょうか。 たとえば帳票形式にする代わりにデータグリッドのようなコントロールを使用して 本物のテーブルにロックをかけつつ複数レコードの変更のキャンセルも可能という フォームは作れますか。 フォームをデザインビューで開いたときに見られるActiveXコントロールには データグリッドに類するコントロールはないようです。 ネットで調べるとVB6.0のDataGridコントロールを使用できるとか、 操作がうまくいかないとかAccessでVBのコントロールを使用するのはそもそも 許されないとか書いてあるのでデータグリッドを使う方法は無理でしょうか。 もう一度問題を整理すると、以下のようになります。 1.複数レコードを一度に表示して編集したい。 2.そのレコードにロックをかけたい。 3.編集のキャンセル(ロールバック)も可能にしたい。 帳票フォームでもデータグリッドでも方法は問いません。 あるいは「Accessでは実現できない」という情報でもいいです。 お詳しい方、どうかよろしくお願いいたします。

  • アクセスのフォームビューの帳票フォームではレコード

    アクセスのフォームビューの帳票フォームではレコードを削除する事は出来ないのでしょうか? データシートビューではレコードセレクタを選択し右クリックをすると 「レコードの削除(R)」という項目が出てきますが 帳票フォームでは出てきません。 帳票フォームでレコードを削除する方法を教えてください。 よろしくお願いいたします。

  • ACCESS 帳票フォームとデータシートをトグルボタンで切り替え

    フォーム上でサブフォームの帳票フォームとデータシートをトグルボタンかコマンドボタンで切り替えることはできないでしょうか? 現在、抽出したデータをサブフォーム(帳票フォーム)に表示させており、そのデータにある金額の合計を表示させています。 帳票フォームは見やすいのですが、データシートですと抽出したデータの一部をコピーしEXCELで使用したりできます。見やすさを諦めてデータシートに変更すると抽出したデータの合計が計算できません。 できれば、帳票フォームとデータシートどちらも使用したいのですが、いちいちデザインからサブフォームのプロパティで規定のビューから変更するのが面倒です。 上記にありますようにトグルボタンかコマンドボタンで切り替えることができれば便利なのですが・・・。 良い方法がありましたらお知恵を貸して下さい

  • 入力フォームからエクセルデータをアクセスにインポートしたい

    入力フォームからエクセルデータをアクセスにインポートしたいと考えています。 入力フォームに、参照ボタンをつけて対象となるエクセルファイルを指定することはできましたが、その後、そのデータをアクセスのテーブルにインポートしたいと考えています。可能でしょうか。 宜しくお願い致します。 *********入力フォーム***************** <form method="POST" action="test.asp"> <input type="file" name="excel"> <input type="submit" value="送信"> </form> *********test.asp***************************************** *******ACCESSに接続まではできるが、エクセルのデータを testテーブルにインポートする方法がわからない。 また、インポートする前にtestテーブルのデータを 全て削除したいと考えています。****** Set db=Server.CreateObject("ADODB.Connection") db.Provider = "Microsoft.Jet.OLEDB.4.0" db.ConnectionString = Server.MapPath("test.mdb") db.open

専門家に質問してみよう