C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

No.94771 の関連記事表示

<< 0 >>
■94771  大量データを文字列としてクリップボード貼り付け
□投稿者/ 千の千尋 -(2020/05/14(Thu) 17:18:36)

    分類:[C#] 

    C#プログラムの質問です。

    任意の計算処理をした出力データを2次元配列 Data[100,100]に格納しております。

    その配列データをエクセルで処理できるようにクリップボードで貼り付けたいと思っております。

    数個程度のデータをクリップボードで貼り付ける場合には下記のようにコードを書いて対応できますが

    string copy = Data[0,0] + "\r\n" + Data[0,1] + "\r\n" + Data[0,2] + ・・・ ;
    Clipboard.SetData(DataFormats.Text, (object)copy);

    2次元配列100x100(10000程度)の大量データを貼り付ける場合はどのようにしたらよいでしょう?

    for文を使うにしろ、どのようにstring copy に文字列として格納したら良いのか教えて頂きたく。

    宜しくお願い致します。
親記事 /過去ログ164より / 関連記事表示
削除チェック/

■94772  Re[1]: 大量データを文字列としてクリップボード貼り付け
□投稿者/ 魔界の仮面弁士 -(2020/05/14(Thu) 18:18:15)
記事No.94771 のレス /過去ログ164より / 関連記事表示
削除チェック/

■94789  Re[1]: 大量データを文字列としてクリップボード貼り付け
□投稿者/ 大谷刑部 -(2020/05/19(Tue) 13:51:23)
    No94771 (千の千尋 さん) に返信
    > C#プログラムの質問です。
    >
    > 任意の計算処理をした出力データを2次元配列 Data[100,100]に格納しております。
    >
    > その配列データをエクセルで処理できるようにクリップボードで貼り付けたいと思っております。
    >
    > 数個程度のデータをクリップボードで貼り付ける場合には下記のようにコードを書いて対応できますが
    >
    > string copy = Data[0,0] + "\r\n" + Data[0,1] + "\r\n" + Data[0,2] + ・・・ ;
    > Clipboard.SetData(DataFormats.Text, (object)copy);
    >
    > 2次元配列100x100(10000程度)の大量データを貼り付ける場合はどのようにしたらよいでしょう?
    >
    > for文を使うにしろ、どのようにstring copy に文字列として格納したら良いのか教えて頂きたく。
    >
    > 宜しくお願い致します。

    Excelで処理するのであれば、Rageオブジェクトに配列丸ごと代入しちゃうのが一番安直だがコード上は簡単な方法かと。
    Rangeの範囲と2次元配列の要素数が合致してればいけるはずです。

    上記に書いているようなぐるぐる回して文字列代入するのはお勧めしません。
    文字列代入でべらぼうに時間がかかります。

    まだ、一旦テキストファイルに書き出して、OpentextFileメソッドで処理した方が速いと思います。
    (ただし件数次第。10万セルとかになるとこれも遅い)
記事No.94771 のレス /過去ログ164より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -