11-05-2010 03:15 AM
現在、周波数波形をエクセルに保存する方法について検討しています。
【スプレッドシートに書き込む】を使用して、エクセルに書き込もうとしていますが、周波数波形のデータ数が多いため、【2D配列転置】を行ってから書き込んでいます。
FFT波形は測定するたびにエクセルに追加保存をしたいのですが、2回目以降のデータが、1回目のデータの下に保存されてしまいます。
2回目以降のデータが、1回目の下に保存されるのではなく、1回目のデータの横に保存されるようにしたいのですが、方法がわからずに困っています。
参考として、現在作成しているデータ保存部分のプログラムを添付しました。
解決策を教えていただけないでしょうか。よろしくお願いいたします。
解決済! 解決策の投稿を見る。
11-07-2010 10:13 PM
s-kazu 様
日本ナショナルインスツルメンツ技術部 寺尾です。
平素よりディスカッションフォーラムをご利用頂き誠にありがとうございます。
≫2回目以降のデータが、1回目の下に保存されるのではなく、1回目のデータの横に保存されるようにしたいのですが、方法がわからずに困っています。
「スプレッドシートに書き込む」関数ですがこちらは2回目以降のデータは下(保存データの終端)に保存される仕様となっています。
方法として以下の2点をご紹介させて頂きます。
1.保存データ(1回目のデータ)を一旦「スプレッドシートから読み込む」関数で読み込み、
そのデータに対して新規データ(2回目のデータ)を「配列要素挿入」関数などを用いて新たな配列データ(1回目と2回目データが統合された)を作成し保存するという方法になります。
上記方法ですと、新たなデータを保存する毎にデータを読み込み⇒新規データを追加⇒保存を繰り返す必要があり、データ数が膨大となると、プログラム自体のパフォーマンスの低下が懸念されます。
2.2回目以降のデータを下に保存し、プログラム終了直前に保存しているデータを全て読み込み、「2D配列転置」関数を用いて転置後保存という方法も可能です。
こちらの方法ですと全てのデータを一度で転置出来ますので、毎回の読み込みは必要御座いません。
ご希望に合う方法を採用して頂ければと思います。
何かありましたらご返信いただければと思います。
宜しくお願い致します。
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
日本ナショナルインスツルメンツ株式会社 | 技術部 | 寺尾 純一
Junichi Terao | Applications Engineer | National Instruments Japan Corp.
サポート情報: http://www.ni.com/support/ja
技術データベース: http://www.ni.com/kb
住所 : 〒105-0011 東京都港区芝公園2-4-1 芝パークビル A館4F
お問い合わせフリーダイヤル: 0120-527196
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
11-07-2010 10:41 PM
日本ナショナルインスツルメンツ技術部 寺尾様
ご回答いただきありがとうございます。
上記に回答していただいた方法のうち、1.はご指摘のとおり、データ数の肥大によるパフォーマンスの低下が懸念されますので、2.のプログラム終了直前にファイルのデータを読み込み転置して保存をしなおす方法を適用させていただき、無事問題解決に至りました。
対応ありがとうございました。
11-07-2010 10:49 PM
s-kazu 様
日本ナショナルインスツルメンツ技術部 寺尾です。
お忙しい中、解決策にマークして頂き誠に有難うございます。
少しでもお力添えでき大変光栄です。
今後とも弊社製品を末永くご愛顧いただけますよう宜しくお願い申し上げます。
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
日本ナショナルインスツルメンツ株式会社 | 技術部 | 寺尾 純一
Junichi Terao | Applications Engineer | National Instruments Japan Corp.
サポート情報: http://www.ni.com/support/ja
技術データベース: http://www.ni.com/kb
住所 : 〒105-0011 東京都港区芝公園2-4-1 芝パークビル A館4F
お問い合わせフリーダイヤル: 0120-527196
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+