潜在的に多くの形状を作成し、形状データをさまざまな値に設定するコードがいくつかあります。一部の形状には、5つの形状データ行と約20(または他のさまざまな値)がある場合があります。
これはVB.Netで書かれており、パフォーマンスを向上させたいと思います。ここでのガイドラインに従う:
http://blogs.msdn.com/b/mailant/archive/2004/09/22/233082.aspx
私は.DropManyと.SetFormulasへの呼び出しを見てきました。
1つの問題は、多くのシェイプデータ行を追加したいということです-1回のヒットで複数の行を実行する.AddShapes呼び出しが存在しますが、シェイプデータセクションに相当するものはありません-.AddNamedRowへの複数の呼び出しを残します(私はAddRowsですが、Shape Dataセクションで使用するとエラーが発生します)。
現在のアルゴリズム:
Work out which masters to use for which shapes (not all the same)
pg.DropMany(with array of masters and appriate X/Y coords)
for each shape dropped:
for each shape data row (e.g. 5 - 10 times per shape):
shp.AddNamedRow()
pg.SetFormulas(for all shapes on page and all properties)
パフォーマンスを改善するための他の提案はありますか?