|
>返信をいただいてコードを修正して、何度か試したのですが、
>探したい文字列が抽出されないようなのですが、
>
>・数学と英語の平均点を無記入にしている。
>
>・対象とするCSVファイルが一つである。
>
>といったことは影響しているのでしょうか?
「数学と英語の平均点を無記入にしている。」とは、SHeet1のB2:C4の範囲の事ですか?
多分、私が思っている様にコードが変更されているなら「対象とするCSVファイルが一つである」を
含めて関係無いと思います
先ず、質問を整理します
最初の質問の
>これらのいくつかのファイルについて、例えば、数学の平均点が70.34~80.66の間で
>かつ英語の平均点が50.54~60.11の間の点数をとった生徒の行をすべて抽出し、
>別のcsvファイルにコピーして、特定のフォルダの中に保存していく。
と次の質問の
>平均点の下限、上限を指定するだけでなく、
>投稿時間が12:00:00~15:00:00をの行を抽出したり、
>名前やコメントの中で、例えば「鈴木」という名前がある行を同様に抽出するためには、
>どのようにコードを変えていけばよいのでしょうか?
を、其々別な3つのプログラムを作ると解釈しています?ので
その変更方法を指示した積りです
次に、「フィールドの中にカンマが在り、フィールド数が増えてしまうデータが在る」と
言う事に就いて
何回か、お尋ねしているのですが回答が無いので?もう一度確認します
フィールド数が増えるレコードで、「,」が在るコメントのフィールドが「"」で括られていますか?
CSVの仕様に従っている、データなら括られている筈です
まともなアプリケーションで出力された物なら従っていると思います
次に、自分が扱うデータの状況を把握しましょう
1、テキストエディタ(無ければメモ帳でも)でファイルを開いて眺めて見る
(上記の様に「"」括られているフィールドが在るのか等)
2、Excelのメニューで「開く」を選び直接CSVファイルを開いて見る
直接開いた時には、「,」と「"」がきちんとされる為、
CSVの仕様従ったファイルなら列が揃うはずです
次に、高校新人教師さんが修正したコードの「Sub DataExtract」、「Sub CSVRead」に相当する
プロシージャを3プログラム分、Upして下さい
(「Function SplitCsv」、「Function GetReadFile」、「Function GetWriteFile」は同じ筈なのでUpは必要ありません)
|
|