興味深い問題があります。エクスポートを書き直したために、いくつかの問題が発生しました。以下のコードを使用して、Excelworkbook で分割された Range を埋めようとします。結果は本当に奇妙です。範囲の最初の部分 ( tpl_p1 ) は正しく埋められていますが、2 番目の部分は非常に奇妙に埋められています。スクリーンショットを参照してください。
openExcel(@"C:\bla\test.xlsx", "Tabelle1");
ArrayList posData = new ArrayList();
int lines = 30;
string[,] fo = new string[lines, 7];
for (int a = 0; a < lines; a++)
{
fo[a, 0] = "1";
fo[a, 1] = "2";
fo[a, 2] = "3";
fo[a, 3] = "4";
fo[a, 4] = "5";
fo[a, 5] = "6";
fo[a, 6] = "7";
}
int i = 0;
object rng;
object[] rgums = new Object[1]; // { "A1:C70","E1:H70" };
object[] argums = new Object[1];
rgums[0] = "tpl_p1;tpl_p2";
try
{
rng = Sheet.GetType().InvokeMember("Range", System.Reflection.BindingFlags.GetProperty, null, Sheet, rgums);
argums[0] = 1;
rng.GetType().InvokeMember("Select", System.Reflection.BindingFlags.InvokeMethod, null, rng, null);
argums[0] = fo;
rng.GetType().InvokeMember("Value", System.Reflection.BindingFlags.SetProperty, null, rng, argums);
}
catch (Exception ex)
{
createErrorReport(ex, "Com");
}
そしてここに Excel の結果: Result
範囲の 2 番目の部分で配列が破棄される理由がわかりません。