掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
Excelにデータを書く速度を上げる方法は? (ID:9458)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
このようなデータをExcel出力したいとすると A B 1 [1.1][1.2] 2 [2.1][2.2] 3 [3.1][3.2] 4 [4.1][4.2] var Values : array of Double; BeginCell , EndCell : OleVariant ; ExcelWorksheet : TExcelWorksheet; //Serversのコンポーネント とし、 SetLength(Values,4,2); try //Valuesに値をセット for r:=Low(Values) to High(Values) do begin for c:=Low(Values[r]) to High(Values[r]) do begin Values[r,c] := (r+1) + (c+1)/10; end; end; //出力開始セル // ここではA1のセルとしている BeginCell := ExcelWorksheet.Cells.Item[1,1]; //出力範囲を考慮して終了セルを決定 EndCell := ExcelWorksheet.Cells.Item[BeginCell.Row + Length(Data)-1 ,BeginCell.Column + Length(Data[0])-1]; //Excelに出力 ExcelWorksheet.Range[BeginCell,EndCell].Value := Values; finally SetLength(Values,0,0); end; DelphiにはExcel出力関連のヘルプがなかったと思います。 ExcelについているVBAのヘルプを参考にして確認しながら 実装しましょうね ※上記コードはデバッグしていません。調整願います。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.