2017-09-28 23 views
0

私の主なコードは以下の通りです:Minitabの自動化とスキップ列

Mtb.Application MtbApp = new Mtb.Application(); 
MtbApp.UserInterface.Visible = true; 
MtbApp.UserInterface.DisplayAlerts = false; 

Mtb.Project MtbProj = MtbApp.ActiveProject; 

Mtb.Columns MtbColumns; 
Mtb.Column MtbColumn1; 

Double[] data1; 
Hashtable htSingleColumn; 
List<double> listSingleColumn; 

int i = 1 ; 

foreach (DictionaryEntry de in htDataTable) 
{ 
    htSingleColumn = (Hashtable)de.Value; 

    listSingleColumn = (List<double>)htSingleColumn["listSingleData"]; 

    data1 = listSingleColumn.ToArray(); 

    MtbColumns = MtbProj.ActiveWorksheet.Columns; 
    MtbColumn1 = MtbColumns.Add(null, null, i); 

    MtbColumn1.SetData(data1); 

    // strLowlim and strUpplim have no influence on this issue here 
    strCommand = "Capa C" + i+" 1;" + ((strLowlim == "NA") ? "" : (" Lspec " + strLowlim + ";")) +((strUpplim == "NA") ? "" : (" Uspec " + strUpplim + ";"))+ " Pooled; AMR; UnBiased; OBiased; Toler 6; Within; Percent; CStat."; 

    // The program is crashing here as a result of the columns not being created sequentially 
    MtbProj.ExecuteCommand(strCommand); 

    Mtb.Graph MtbGraph = MtbProj.Commands.Item(i).Outputs.Item(1).Graph; 

    MtbGraph.SaveAs("C:\\MyGraph" + DateTime.Now.ToString("yyyy-MM-dd HHmmss"), true, Mtb.MtbGraphFileTypes.GFPNGHighColor); 

    i++; 
} 

MtbApp.Quit(); 

(コメントアウトクラッシュセクションで)このコードを実行すると、私は次のような出力が得られます。

enter image description here

それは、

enter image description here

私はこの結果について本当に困惑しています。変数iは正しいですが、列番号に何が影響していますか?

私はMinitabについてウェブ上で多くの情報を見つけることができません。私はここでstart guideを読んだだけです。

+0

変更ラインに? – BugFinder

+0

あなたはこれを意味します "MtbColumn1 = MtbColumns.Add(null、null、i);" ?私は今それを見つけてそれを再テストする。 –

+0

私は "MtbColumn1 = MtbColumns.Add(null、null、1);にモード化されました;"今回はうまくいく。 –

答えて

3

この行が問題です。

MtbColumn1 = MtbColumns.Add(null, null, i); 

第三のパラメータ数量追加する列の数を指定します。ループの最初の反復では、i = 1列を追加しますが、ループの2番目の反復では、i = 2列を追加します。ループの繰り返しごとにi列が追加されます。本当に必要なのは、毎回1つの列を追加することです。あなたがcolumを追加いけない場合何が起こる

MtbColumn1 = MtbColumns.Add(); 
+0

ええ、そうです。ちょっとした注釈を含むコードをコピーしています。ミニタップについての文書はほとんど見つけられません。教えてください。 –

+0

minitabヘルプファイルにはAPIリファレンスがあります。 –