• 締切済み

VB6 CSVファイルからデータを読み込み計算する

みなさん教えて下さい。 今、今後仕事で使用するVBの勉強をしております。 そこで、下記のようなことを行いたいと思っています。 図中フォーム1にある「CSV読み込み」を押すと、右のようなCSVファイルからデータを読み込み No3の電圧値をText1へ、電流値をText2へ表示させます。 そして、Text1÷Text2をして、結果をText3へ表示したいと考えています。 現状では、割り算の計算は出来ますが、データを読み込む所で苦戦しています。 この読み込む方法を教えて頂けないでしょうか。 宜しく御願いします。

みんなの回答

  • pa_cotta
  • ベストアンサー率43% (25/58)
回答No.1

ファイル読み込みについてはここに詳しく書いてあります。 http://www.red.oit-net.jp/tatsuya/vb/Open.htm ただし、ヘッダ等実データとは無関係な行が含まれていますので、そのデータは破棄するなり無視するなりしないといけません。 行数が固定であれば、1行ずつ読み込んでデータ行になったら計算開始するようにしないとダメですね。 また、文字列として読み込んでしまうので、適切な型へのキャストも忘れずに行ってください。 各要素への展開はsplit関数でいけます。詳細はファンクションリファレンスを参照してください。 # vbやvbaの実行環境がないのでコードのデバッグが出来ないのでコードはありません…

関連するQ&A

  • VB2005でフォームに取り込んだデータをCSVファイルを出力したい

    VB2005環境、DBはSQLサーバです。 VB2005でフォームに取り込んだデータをCSVファイルで出力する 機能を付けたいと考えています。 現状は、SqlDataAdapterのFillメソッドでDBから取得したデータをWindowsフォーム上に出力する機能を持っています。 その出力したデータをクリック一つでCSVファイルとして出力したい と考えています。 かなり調べたのですが出来ませんでした。 どなたかご教授よろしくお願いします。

  • エクセルで作ったファイルをVBの画面に表示したい。

    VB5OrVB6で作ったフォーム画面にエクセルで作った.csvデータを表示させたい。 VBのコード教えていただきたい。 お手数お掛けいたします、宜しくご教授お願いします。

  • VBでcsvファイルを取り込むときに・・・

    困っています。ビジュアルベーシック初心者です。 次のようなcsvデータがあります。 「あいうえお,,かきく,,1あ2い3う,,12.3,,45.6,,78.9  あいうえお,,かきく,,1あ2い3う,,12.3,,45.6,,78.9  あいうえお,,かきく,,1あ2い3う,,12.3,,45.6,,78.9」 ※あいう等はテキスト、123等は数値(小数) これをエクセルに表示するため、 With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & (ファイル名), Destination:=Range("B3"))  .TextFileCommaDelimiter =True  .Refresh BackgroundQuery =False End With とプログラムしました。 ところが、エクセルをみると全てのデータの間に1マスづつ余計なセル(空白)が入ります。 空白が入らない取り込み方はあるでしょうか? なお、一度別な場所に取り込み必要なセルだけ転記するというのは避けたいです。 アドバイスを宜しくお願いします。

  • 【VB6】CSVファイルの内容の条件設定をして表示

    【VB6】CSVファイルの内容の条件設定をして表示 お世話になります。 VB6で、テキストボックスにCSVの内容を表示するプログラムを作成したのですが、 CSVの一部の行だけをif文で検索をかけるような内容を追加しようとしておりますが、良い方法はございますでしょうか。 例えば、Excelで開く所のA列が「日付」の項目であり、1/1から3/1までのCSVの内容を表示…といった具合です。 CSVをテキストボックスに表示させるプログラムは、下記サイトを参考にしています。 http://hanatyan.sakura.ne.jp/(VB6.0関係>ファイル操作関係>です) 参考になるサイトがございましたらお教え下さい。よろしくお願い致します。

  • 読み込んだCSVファイルの再検索

    VBを用いてかなり大きいCSVファイルから、 ある条件に合うデータを検索するプログラムを作成しています。 日付などの条件をFORMに配置し、絞れるようにしております。 VB読み込み→検索にだいたい2分くらいかかるのですが、 条件を変更して再検索するときに、再度VB読み込みが必要になります。 一度メモリーに読み込んだ値から再検索かけられれば、 2回目以降の検索が早くなると思うのですが、 そのようなことは可能でしょうか。 要はこのようなことを実現したいです。 1.Button1.Click 2.CSVファイル読み込み 3.条件に合うものを検索(終了しない。配列の値を破棄しない) 4.再度Button1.Click 5.(CSVファイルの読み込みは飛ばして)条件に合うものを検索 WindowsXPでVB.NETを使用しております。 ご教授願います。

  • csvファイルのデータの一部を取り出したい

    こんばんは。 VBでcsv形式のファイルの一部を取り出したいのですが、 例えば、下の3 行、3 列のデータが CSV 形式で保存されているファイルで First Name,Last Name,HireDate Nancy,Davolio,10-22-91 Robert,King,10-23-91 その中の"Nancy"だけを取り出して、テキストボックスに入れたいのですが 一部だけ取り出すことってできるのでしょうか? 教えて下さい。 よろしくお願いします。

  • PHPでフォームに表示させたCSVを更新したい

    現在以下のようなものを作っています。 1)csvファイル(内容は id,url,name )からデータを読み込み、 2)フォーム内のテキストフィールドに表示、 3)新規登録フォームからcsvのラストに1行増やす。 ここまではできたのですが、 4)テキストフィールドに読み込んだCSVデータの一部を修正する というのはどうすればいいのでしょうか? 現在、 $fp = fopen("link.csv", "r"); while ($linkdata = fgetcsv($fp, 1000, ',')){ list($a, $b, $c) = $linkdata; … }で、 <input name="id" type="text" value="$a"><input name="id" type="text" value="$b"><input name="id" type="text" value="$c"> こんな感じで表示されています。 チェックした行を削除というのと、 表示されたテキストフィールドの中を書き換えてsubmitで更新というのを作りたいのですが…

    • ベストアンサー
    • PHP
  • csvのソーティング

    お世話になります。 [データ(sort.csv)] text,text,text,text,200610111010 text,text,text,text,200610111110 text,text,text,text,200610111210 text,text,text,text,200610111310 のようなデータを一番最後の項目(200610111010)で時間ソーティングするプログラムを作成したいのですがうまくいきません。 アドバイスお願いします。

    • 締切済み
    • PHP
  • ACCESSでVBを使って特定のデータを変更したいのですが・・・

    ACCESSのVB初心者です。 専門書も買って読んでるのですが、どうにも行き詰ったので質問させてください。 今やろうとしているのは、データNoが入るフィールドと文字列が入るフィールドの2つのフィールドから出来ている「Aテーブル」を作ってあり・・・フォームのテキストボックスに入力された任意の数字とAテーブルのデータNoを照合し、同じ番号を処理するコードを打ち込みたいのですが、どうにもやり方がわかりません。 フォームで「12」という数字をテキストボックスで指定し、「新規追加」をすると、Aテーブルに12のデータNoがない場合は、Aテーブルに12というデータNoと文字列を追加し、「データ削除」をすると、AテーブルのデータNo12を削除と言う感じでやりたいのですが・・・。 どなたか知識のある方、教えてくださいませ。 または、このサイトを見れば分かるんじゃないかと言う情報もお待ちしております。

  • VBから、エクセルでファイルを開くには・・・

    またまた、お世話になりますm(__)m 環境はVB.net2003、エクセルは2002でプログラミングの勉強、データ処理をしているのですが、VBでエクセルを開き、そのエクセル上でファイル(csvやテキストなど)を開きたいのですが、VB上でどのように書けばよいのでしょうか? VBでエクセルをたちあげたり、bookやsheetを開くことはできました。 どなたかご教授お願いしますm(__)m

専門家に質問してみよう