2017-06-13 47 views
1

Matlab 2015bからExcelファイルにデータを書き込むには.NET EPPlusライブラリ(v4.1、http://epplus.codeplex.com/)を使用しています。データの読み書きはすべて動作します。書式設定も同様です。しかし、グラフを作成するときに、私は解決できないエラーメッセージにぶつかります。次のエラーメッセージがMatlabのEPPlus:チャートを作成するときにeShapeStyleが見つからない

Message: The namespace for the type 'eShapeStyle' does not exist. MATLAB requires all .NET types to be within a namespace. 
Source: dotnet/cli 
HelpLink: 

私はeShapeStyleenumとしてEPPlus/Drawing/ExcelShape.csに定義されていることを発見したが、使用して様々な輸入は動作しませんでした表示されます

ws_chart.Drawings.AddChart('Chart1', OfficeOpenXml.Drawing.Chart.eChartType.ColumnStacked); 

を呼び出すときws_chartが、その後、シートオブジェクトとします。私はまた、名前空間のMatlabでOfficeOpenXml.Drawing.ExcelShapeが表示されていない

import System.Drawing.* 
import OfficeOpenXml.Drawing.* 
import OfficeOpenXml.Style.* 

を使用しています。誰もこれで私を助けることができますか?

PS:ActiveXインターフェイスを使用することもできますが、このプロトコルを使用してMatlabが書いている間はExcelが遅くなることがわかりました。

答えて

1

私は同僚の助けを借りて、解決策を見つけました。私はかなり近づきましたが、Matlabのエラーメッセージは正しい方向を指していました。 C#enum eShapeStyleはネームスペースで定義されていないため、Matlabはロードしません(MATLABはすべての.NETタイプをネームスペース内に配置する必要があります)。私たちはnamespace OfficeOpenXml.Drawingの中に移動し、dllを再コンパイルして動作します。

関連する問題