• ベストアンサー

Accessについて

Accessでフォームを作っているのですが、エクセルのデータをコピー&ペーストしたいと思います。 9×9の数値データを貼り付けて(数値は全部で81個ですね)、1つのレコードとすることは可能でしょうか? フォームは単票フォームです。 コピペで81個すべて貼り付けられそうですか

noname#141015
noname#141015

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

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

一般的にはレコードはExcelで言えば一つの行がAccessの一つの レコードにあたります。したがって、9x9の塊を一つのレコード とすることはできません。したがって、上記のデータを 一つのレコードとする単票フォームはつくることができません。 単票フォームに非連結のテキストボックスを81個置き、 VBAでデータを取得して、あるいは取得しながら テキストボックスにデータを表示することは可能でしょう。 ただし、VBAでグリグリ書く必要があります。 単票フォームでなく、表形式のフォームならばExcelの データを普通にAccessにインポートし、Excelの一つの 行をレコードとして処理するならば、表形式の フォームをつくればそのままデータが表示されます。 何をするのかはわかりませんが、9x9の塊を9x9の配列に入れ、 その配列をもう一つの配列に入れて複数の9x9のデータの塊を 処理をすることはできます。 しかし、VBAに熟知していることと、このような配列はメモリを 非常に圧迫することなど、かなりハードルは高いのが現実です。 また、Aceessに4つのフィールドを作り、 9x9のExcelのデータ、その列、行の位置データを同時に 取得しながらAccessにインポートし、同時に塊としての 認識データを追加し(すなわち横のものをすべて一列に 入れるという感覚で)、そののちテーブルからフォームの 非連結テキストボックスにデータを表示するVBAを作る、 という手の込んだことをすればある程度のことはできると 思いますが。

noname#141015
質問者

お礼

回答ありがとうごさいました

関連するQ&A

  • アクセスのテーブルのレコードをひとつのフォームにすべて表示ししたい

    アクセス2002を使っています。 ひとつのテーブルに登録しているレコードの値(日付順のフィールドにより数値を入力たレコードです)をひとつの単票形式のフォームにすべて表示するようにしたいのですが、できますか? よろしくお願いします。

  • AccessからWordにデータだけコピーしたい

    Accessから任意のレコードのデータだけコピーしたいと思っています。 (フィールド名は不要。) 現在は一度ExcelにペーストしてデータだけコピーしなおしてWordに貼り付けているのですが、もっと簡単な方法はないでしょうか。 よろしくおねがいします。

  • エクセルとアクセスのデータ比較(VB6.0)

    エクセルとアクセスのデータ比較ツール(VB6.0) 質問者:SSCSC アクセスからエクセルにコピペされたレコードがあるとします。 そのエクセルのレコードのあるフィールド値を変更します。(このとき、アクセスもエクセルと同様に変更します。) 上記は手作業でします。 そこで、そのエクセルのレコードがアクセスに存在するかどうかをプログラムで作成したいと思っております。 要するにエクセルとアクセスのデータ比較をして、一致していないレコードがエクセルに存在した場合は、ログを出力したいと思っています。 アクセスのデータが比較基準になります。 何か簡単にできる方法はないでしょうか。 今思いついている方法は、 エクセルの1行目はコピペ時にアクセスのフィールド名がコピーされているので、 エクセル、アクセス両方のフィールド値を全て比較対象にしてSQL文で存在するかどうかを確認する方法です。 ご回答よろしくお願い致します。

  • accessからexcelへ出力 報告書レイアウトについて

    accessのデータを基に、報告書をexcelで作成したいのですが、 単純にエクスポートしたようなデータビューの形式でなく、 規定のレイアウトに、はめ込むようにして書類を作成しなくてはならないのです。(いわば単票フォームです) この場合はどのような手順で、構築すればよいのでしょうか? ・一旦データビュー形式で出力し、excelのマクロでコピペする? ・accessから出力先のexcelのセルを指定する?

  • Accessでデータ入力時の最初のレコードの位置

    単票形式の入力フォームを作ってデータを追加をしていくときの質問です。 入力フォームを立ち上げると必ず1レコード目が表示されますが、入力がすぐ出来るように新しいレコードの位置にすることは出来ないでしょうか。 データを1回入力すると、あとの連続して追加する分にはTabキー移動の設定を「すべてのレコード」にしてあるので問題ないです。 Access2002です

  • 単票フォームと帳票フォームを連動 アクセス

    どういう構成にすればいいか教えてください。 元データはT_testのみですが T_testを元に、単票フォームと帳票フォームを作り、 この二つのフォームをサブフォームにし、1つの親フォームにはめて、 帳票フォームのレコードをクリックする(カレントレコードが変わる)度に 単票フォームは、帳票フォームのデータを表示させたいのですが どうすればいいでしょう? レコードソースは親フォームに設定すればいいのでしょうか? それとも単票フォームと帳票フォームそれぞれにT_testを設定すればいいでしょうか? 帳票フォームのレコードをクリックして単票フォームのデータを表示させる際は、 帳票フォームの値を取得して単票フォームにフィルタをかければいいのでしょうか?

  • Accessのメインフォームとサブフォームの使い方について

    Accessにてメインフォーム(単票形式)+サブフォーム(帳票形式)を使って進捗管理をするデータベースを作っており、新規にメインフォームで入力し、サブフォームで入力したデータを表示させてます。 サブフォームで更新したいレコードをクリックしたときにメインフォームでそのレコードを表示させるにはどのようにすればよろしいのでしょうか?

  • Accessのプロパティについて

    ExcelからAccessへデータをインポートしてテーブルを作り、フィールドの[データ型]を[テキスト型]から[数値型]へ変更しようとすると、保存時に「レコードが大きすぎる」と弾かれてしまいます。仕方がないのでフォーム上でテキストボックスのプロパティで書式を変更しようとすると、コンボボックスのリストが表示されないため変更できません。これはやはりレコードが大きすぎるためなのでしょうか?また、その解決法を教えていただきたいのですが…。あまりAccessは詳しい方ではないので分かりやすく御願いします。

  • EXCELの行ごとにデータを表示させる方法

    EXCEL2000のデータシート(タイトル項目20程度レコード数300程度)で、先頭行をタイトルとして用い、ACCESSのフォーム(単票形式)の様に 一行ごとに全てのタイトルを表示させ データ入力をさせたいのですが、EXCELだけを用いての方法を教えて下さい。   

  • Access(アクセス)でのインポートについて

    テーブルのインポートでエクセルファイルをインポートしたいのですが「ワークシートインポートウィザード」の画面でテーブルを指定して保存すると 「Microsoft Access」の画面で「すべてのデータをテーブルに追加できませんでした。 キー違反のため、0件のレコードのデータが失われ、0件のレコードが削除されました。」と出てきて、保存できません。 もとのテーブルのデータ型を使ってインポートするにはどうしたらいいのでしょうか。よろしくお願いします。 インポートする元のデータ(エクセル)とインポート先(アクセス)の関係は次の通りです。 エクセルファイル    アクセスのテーブル (セルの書式設定)   データ型、フィールドサイズ --------------------------------------------- 数値          数値型、長整数型 文字列         テキスト型、16 インポートする前に元のエクセルデータをアクセスのデータ型に合わせただけではダメなのでしょうか