• 締切済み

関連がある複数のテキストファイルの扱い方

chayamatiの回答

  • chayamati
  • ベストアンサー率41% (257/615)
回答No.20

回答No.19のフォーム作成で作成に誤りがありました。 フォームはこちらで作成して下さい。 情報の全てはテキストデータですから登録用のフォームは必要ないと思いますが テキストデータのインストール後のテーブル内容を参照するためです。 登録用:データの追加、更新、削除が可能 参照用:データの追加、更新、削除が不可能 フォームのプロパティーのデータタグに追加の許可、削除の許可、更新の許可の項目があります。 ここを変更することで、登録用にも参照用にもなりますが、フォームの規定値が登録用になっています。 1.フォームを開くボックスに絞り込み検索機能を付けるための商品名検索ボックスを配置 2-1. コンボボックス用のクエリ作成 【メニュー画面で空白部分を右クリック】⇒【デザインビュー】⇒【テキストボックス】⇒【メニュー画面】 ⇒【次へ】⇒【次へ】⇒【商品名検索】⇒【OK】⇒【商品名検索を右クリック】⇒【コントロール種類の変更】 ⇒【コンボボックッス】⇒【商品名検索右クリック】⇒【プロパティー】⇒【データータグ】 ⇒【値集合ソースの右端の…】⇒【商品マスタ】⇒【追加】⇒【閉じる】 ⇒【商品名をフィールドへドラッグ】⇒【並び替え昇順】 ⇒【抽出条件に Forms!メニュー!商品名検索 と入力】⇒【クエリを閉める】⇒【はい】 2.フォームの作成 2-1.各テーブル毎にフォームを作成 2-2.フォームは全て表形式   フォーム名をテーブル名に "登録" を付加して、例えば "説明登録" 2-3.商品登録フォーム作成 【フォームウィザード起動】⇒【商品マスタ】⇒【全て選択移動】⇒【次へ】⇒【表形式】 ⇒【次へ】⇒【商品登録と入力】⇒【フォームのデザインを編集する】⇒【完了】 ⇒【データタグ】⇒【レコードソースの右端の…】⇒【全ての項目をフィールドに移動】 ⇒【はい】⇒【商品名の並び換え行を昇順】⇒【商品名の検索行の右端を右クリック】 ⇒【ビルド】⇒【式の要素のaccess印の左の+】⇒【Formsの左の+】 ⇒【読み込まれたフォーム左の+】⇒【メニュー】⇒【式のカテゴリのの商品名検索】 ⇒【式の値の値をダブルクリック】 ⇒【上枠の Forms![メニュー]![商品名検索] 左端に >= と入力】⇒【OK】 ⇒【クエリビルダを閉じる】⇒【はい】⇒【デザイン画面を閉じる】⇒【はい】 2-4.長文のメモ型フィールドのある説明登録フォーム作成 手順は商品登録と同じだが途中長文のフィールドの処理とテーブル内にない商品名の追加が入る 【フォームウィザード起動】⇒【説明】⇒【全て選択移動】⇒【次へ】⇒【表形式】 ⇒【次へ】⇒【説明登録と入力】⇒【フォームのデザインを編集する】⇒【完了】 ⇒【項目の説明をフォームフッタへ移動し左右に拡げる】 ⇒【この見出しラベルもここへ移動しテキストボックスとに並べる】 ⇒【見出しラベルを縦書きにしてテキストボックスの左に配置するにはその他タグの縦書きを はい】 ⇒【データタグ】⇒【レコードソースの右端の…】⇒【はい】⇒【全ての項目をフィールドに移動】 ⇒【説明の項目名のある枠で右クリック】⇒【商品マスタ】⇒【追加】⇒【閉じる】 ⇒【二つのテーブルが ∞:1 出つながっていることを確認】⇒【商品名を下のフィールドに移動】 ⇒【商品名の並び換え行を昇順】⇒【商品名の検索行の右端を右クリック】 ⇒【ビルド】⇒【式の要素のaccess印の左の+】⇒【Formsの左の+】 ⇒【読み込まれたフォーム左の+】⇒【メニュー】⇒【式のカテゴリのの商品名検索】 ⇒【式の値の値をダブルクリック】 ⇒【上枠の Forms![メニュー]![商品名検索] 左端に >= と入力】⇒【OK】 ⇒【クエリビルダを閉じる】⇒【はい】⇒【デザイン画面を閉じる】⇒【はい】 2-5.説明登録を商品登録のサブホームとする ※サブフォーム/サブレポートツールは隠れています。デザインモードのメニューバー中央付近の▼より見つけて下さい。 【左のナビゲーションウィンドで説明登録をコピペしてフォーム名を説明サブとする】 ⇒【説明サブ を右クリック】⇒【デザインビュー】⇒【ホームヘッダー内を項目見出しのみとして】 ⇒【ホームヘッダーを項目見出しの高さに縮小する】⇒【編集画面を閉じる】⇒【はい】 ⇒【商品登録を右クリック】⇒【デザインビュー】⇒【サブフォーム/サブレポートツール】 ⇒【フォームフッター】⇒【はい (単票に変更する)】⇒【説明サブ】⇒【次へ】 ⇒【独自に設定】⇒【商品コード(メインフォーム)】⇒【商品コード(サブフォーム)】 ⇒【商品登録説明サブ】⇒【デザインビューを閉じる】⇒【はい】 最初の目的であるデータの横並びににはお答えできなくて心苦しいですが 自分のお伝えできることはここまでです。 テキストデータが無いので十分な動作チェックは出来ませんが、 BVAを添えます、 VBA文中 DoCmd.SetWarnings True という文がありますが、処理途中の警告を有効にして処理が一時停止して 警告時のコードをひょうじします。 ここでF8押下するとプログラムは一つづつ進みF5押下継続して通常に戻ります。、 エラー修正が終り、実用に移るとこの警告が煩わしくなります。 実用に移るときは DoCmd.SetWarnings False とし、処理途中の警告を無効にします。 Private Sub 終了_Click() DoCmd.Quit End Sub はシステムを終るときのものですが右肩の閉じるボタンが不要とはおもいますが また各フォームにも、閉じるボタンをラベルで配置しクリックで テキストデータは1回切りならば Private Sub テーブル初期化_Click() を Private Sub テーブル初期化RTN() テキストインポートの最初に初期化をを実行するようにするとよいでしょう Private Sub txtインポート_Click() テーブル初期化RTN DoCmd.SetWarnings True 'シングルクォーテーションより右はメモです。 警告表示 True 非表示 False DoCmd.TransferText acImportDelim, , "メーカー", "D:\okwave\テキスト\メーカー.txt", True DoCmd.TransferText acImportDelim, , "ブランド", "D:\okwave\テキスト\ブランド.txt", True DoCmd.TransferText acImportDelim, , "商品マスタ", "D:\okwave\テキスト\商品マスタ.txt", True 以下略 Private Sub 閉じる_Click() DoCmd.Close End Sub でフォームが閉じます。 テーブルのルックアップ、コンボボックスのリスト行数はコそれぞれののプロパティーに設定項目があります。 大量のデータを扱ったことがありません。 差し障りなければ、データ件数とインポート時間、エクスポート時間を補足頂けませんませんか ミスが多発する回答でしたが、よく付き合って下さいいましてありがとうございます。 -------------------------------------------------------------------------------------- 文字数オーバです。 VBAは次に回答します。

関連するQ&A

  • 複数のテキストファイルを1つにまとめる

    同一フォルダ内にある複数のテキストファイルの内容を1つにまとめる方法を探しております。 例えば、 a.txt, b.txt, c.txt が同一フォルダにあり、 それぞれの内容が AAA BBB CCC である時に、これらをまとめて matome.txtとして、その内容が AAA BBB CCC となるようなプログラムを書きたいのですが、どの様な方法が考えられますでしょうか。 上の例では3つのテキストファイルですが、実際に処理したいファイルは数百個になる為、一つ一つファイル名を入力する作業が大変で困っております。 同一フォルダ内のファイルをファイル名順に一度に読み込み、まとめる方法がありましたらお教え下さい。

  • バッチファイルで複数のテキストファイルの置換

    バッチファイルで以下のような処理を行うことはできないでしょうか? フォルダ1以下の全てのテキストファイル内の abcde という文字列を あいうえお に置換して、上書き保存ではなく 元のファイル名+(編集済み).txt というファイル名で同じ場所に保存できないでしょうか。 バッチファイルで出来ない場合他の物でも構いません。 ――――――――――――――――――――――――――――― 処理前 フォルダ1   │   ├フォルダ2   │  └ファイル1.txt (内容:123abcde)   │   ├フォルダ3   │  └フォルダ4   │     └ファイル2.txt (内容:abcde123abcde123)   │   └フォルダ5      └ファイル3.txt (内容:456fghij) ――――――――――――――――――――――――――――― ↓ ――――――――――――――――――――――――――――― 処理後 フォルダ1   │   ├フォルダ2   │  └ファイル1.txt (内容:123abcde)   │  └ファイル1(編集済).txt (内容:123あいうえお)   │   ├フォルダ3   │  └フォルダ4   │     ├ファイル2.txt (内容:abcde123abcde123)   │     └ファイル2(編集済).txt (内容:あいうえお123あいうえお123)   │   └フォルダ5      └ファイル3.txt (内容:456fghij) ――――――――――――――――――――――――――――― こんな感じで出来ないでしょうか。 よろしくお願いします。

  • 沢山のテキストファイルを一つに

    下のように、Testフォルダに Area1、Area2・・・とフォルダがあり、 その中に、Sample.txtがあります。 C:\Test\Area1\Sample.txt C:\Test\Area2\Sample.txt C:\Test\Area3\Sample.txt ・ ・ ・ C:\Test\Area30\Sample.txt それぞのフォルダのSample.txtは "1234567890.123" "2345678901.234" "3456789012.345" . . . のように、数桁の数字が数百行並んでいます。 例えば、 Area1\Sample.txt に100行、 Area2\Sample.txt に200行、 Area3\Sample.txt に150行あるとします。 これを、 1~100行にArea1\Sample.txtの内容を、 101~300行にArea2\Sample.txtの内容を、 301~450行にArea3\Sample.txtの内容を、 として、Area30までのSample.txtを並べた 一つのテイストファイルに書き直したいのですが、 何しろ沢山あるので、一つ一つ開いてコピぺでは、 書き落としなども心配ですし、毎回大変時間が掛かります。 簡単に並べて書き出す方法はないでしょうか。 Excel等を使ってできないでしょうか。 宜しくお願いします。

  • バッチファイルでテキストファイルを分割したい

    テキストファイルを、指定した数値の倍数の行を、指定した個数に分割するバッチファイルを作成しようとしています。 例えば、以下の様な内容の「in.txt」というテキストファイルを3分割したい場合、 ----- in.txtの内容 ----- 1 2 3 4 5 6 7 8 9 10 ------------------------ 以下の様な内容で、 「out1.txt」「out2.txt」「out3.txt」として出力したいのです。 ----- out1.txtの内容 ----- 1 4 7 10 -------------------------- ----- out2.txtの内容 ----- 2 5 8 -------------------------- ----- out3.txtの内容 ----- 3 6 9 -------------------------- 自分はプログラミングの知識がないので、WEBに書かれている構文を少し書き換えたりして試しているのですが、うまく行きません。 AWKを使い、以下のようなバッチファイルを作成して実行してみましたが、「out3.txt」だけがうまく行きませんでした。構文の意味も分からないので修正も出来ません。 awk "NR%%3==1" "in.txt" > "out1.txt" awk "NR%%3==2" "in.txt" > "out2.txt" awk "NR%%3==3" "in.txt" > "out3.txt" AWKの解説ページを読み始めたのですが、時間的な猶予があまり無く、今回質問させて頂いた処理が出来るようになるまでまだ時間が掛かりそうなので、どなたかお分かりの方がおられましたお教え頂けないでしょうか。 AWKでなくとも、sedでもPerlでもその他のコマンドでも構いませんし、スクリプトファイルを読み込めるコマンドでしたらスクリプトでの書き方でも結構ですので、ご存知の方がおられましたらお教え頂けないでしょうか。

  • 複数テキストを一行ずつファイル名を付けて結合する方法

    複数テキストを一行ずつファイル名を付けて結合する方法 フォルダにある複数のテキストデータを1つのテキストデータに結合する際、テキスト1行毎の先頭にファイル名を付けたいのですが。具体的には以下の通りです。 最終的にはexcelに取込み処理するので、excelのマクロかDOS系でできるとあり難いです。 [file1.txt] 1111111111 2222 33333333 [file2.txt] 123 1234 ↓ [all.txt] file1.txt 1111111111 file1.txt 2222 file1.txt 33333333 file2.txt 123 file2.txt 1234

  • テキストファイルを一つにまとめる

    一つののフォルダ内に複数のテキストファイルがあります a.txt b.txt c.txt があり内容はそれぞれ 日付 商品名 数量と同一項目にしてあります これを同じフォルダに自動で一つのファイルにまとめる方法はありませんか 超初心者です よろしくお願いします

  • Excel VBAで列ごとのデータをテキストファイルへ書くには?

    エクセルのシート(たとえばSheet1)が以下のようになっているとします。 A B C D E F 1 商品A 11111111 あいうえお 3 1000 2 商品B 22222222 かくくけこ 1 2500 3 商品C 33333333 さしすせそ 2 3500 ・ ・ これを決まった列ごとにテキストファイル(固定ファイル名)に書き出すということは、エクセルのVBAで可能でしょうか? テキストファイルの内容は以下のようにしたいのです。 E列を数量として、その分だけのテキスト行を書き出したいのですが… <<bbb.txt>> 商品A 商品A 商品A 商品B 商品C 商品C ・ ・ <<ccc.txt>> 11111111 11111111 11111111 22222222 33333333 33333333 ・ ・ <<fff.txt>> 1000 1000 1000 2500 3500 3500 ・ ・ また、このようなことが参考になるHPがあればお教え願いたいのですが。 以上よろしくお願いします。

  • テキストファイルを1行ずつ別のファイルに分割する

    400行ぐらいのテキストファイルを、1行ずつ別のファイルに分割したいと思います。 ファイル名は**001.txtのように、(**は任意の文字列、数字は連番)なってくれれば嬉しいです。 どなたかこのような処理のできる簡単な方法をご存じないでしょうか? よろしくお願いします。

  • エクセルの各シートに複数のtxtファイルを取り込む

    Excel2013を用いたデータ整理をしているのですが,複数のファイルを扱う上でマクロを用いた効率化をしたいと思い,質問させていただきました. いま,Folder1 というフォルダに,text1 から text40 までの 40個のtxtファイルがあります. これらのファイルを,エクセル上であらかじめ作成してある Sheet1 から Sheet40 にそれぞれ貼り付けたいと考えています. txtファイルは,4列で構成されており,タブでそれぞれ区切られています. 行数は20,481行です. txtの中には,0 の値が入った箇所もあるため,その情報が消えないで貼り付けられると望ましいです. また,タブのところでしっかり区切られ,違うセルに貼り付けられると,ありがたいです. 質問は以上です. お手数ですが,よろしくお願いします.

  • 外部テキストファイルの書き換えと作成について

    外部テキストファイルの操作について悩んでおります。 アドバイスお願いします。 まず、外部テキストファイルdate.txtファイルの中身は以下のような具合です。 2/19 2/18 2/09 2/14 2/17 というたった五行の日付情報です。 この日付情報をユーザーがhtml上(実際はdate.phpというファイルです)で自由に変更できるようにしたいというのが私の処理の理想です。 そこで、この日付情報のそれぞれをhtmlのinput type=textのvalue値として、まず読み込ませて表示させます。 そしてユーザーは5つそれぞれを書き換え、もしくはそのまま変更なしでもかまいませんが、最終的にsubmitでphpに送信します。(自分自身、date.phpに送信します。) そのあと、date.txtファイルがユーザーの指定通りに書き換えられるという仕組みです。 さらに、その書き換えられた際に、date.txtファイルとは別に、updated.txtファイルを生成したいと思っています。(生成というか、常にdate.txtファイルの中身が変更される際に、updated.txtファイルも変更されるようにしたいということです。) そのupdated.txtファイルの中身は、 v_hensu1=2/19&v_hensu2=2/17&v_hensu3=2/14&v_hensu4=2/17&v_hensu5=2/15 というようにしたいと思っています。改行は必要ありません。 date.txtの日付情報を上からそれぞれv_hensu1、v_hensu2に当てはめていって、それぞれを&でつなぐだけです。 以上で処理の流れは完了です。 そこでわからないのは、「最初にdate.txtファイルを開く際に使う関数」と、 次に「date.txtを書き換える際に使う関数」と、 「updated.txtを作るための関数」です。 ファイル操作について、また簡単な例をあげていただけますと幸いです。どうぞ宜しくお願いいたします。

    • ベストアンサー
    • PHP