2017-11-22 16 views
0

私はワークブックネット

  Document doc = new Document(); 
      var builder = new DocumentBuilder(doc); 
      Workbook workbook = new Workbook(); 
      int i = workbook.Worksheets.Add(); 
      Worksheet sheet = workbook.Worksheets[i]; 

を作成し、insertOleObject方法で私の文書に挿入し、その後、私の細胞を作成して:

MemoryStream memorystream = new MemoryStream(); 
       workbook.Save(memorystream, Aspose.Cells.SaveFormat.Xlsx); 
       byte[] bytes = memorystream.ToArray(); 
Shape oleObject = builder.InsertOleObject(memorystream, "Excel.Sheet.2", false, null); 

ブックとしてビルドしたワークシートをテーブルとして表示できますが、それは起こりません。

答えて

1

I shakeelが彼のAnswのコメントで言ったようにコードを修正するERおよび私が達成:

MemoryStream memorystream = new MemoryStream(); 
      workbook.Save(memorystream, Aspose.Cells.SaveFormat.Xlsx); 
      byte[] bytes = memorystream.ToArray(); 
      memorystream.Position = 0; 
      // Apply different Image and Print options 
      var options = new Aspose.Cells.Rendering.ImageOrPrintOptions 
      { 
       HorizontalResolution = 200, 
       VerticalResolution = 200 
      }; 
      // Set Horizontal Resolution 
      // Set Vertical Resolution 
      var sr = new SheetRender(sheet, options); 
      MemoryStream imageStream = new MemoryStream(); 
      sr.ToImage(0, imageStream); 
      System.Drawing.Image image = Image.FromStream(imageStream); 
      Shape oleObject = builder.InsertOleObject(memorystream, "Excel.Sheet.12", false, image); 
3

ここに示したコードをもう1行追加してください。問題が修正されるはずです。あなたのフィードバックをお知らせください。ここで

C#

MemoryStream memorystream = new MemoryStream(); 
workbook.Save(memorystream, Aspose.Cells.SaveFormat.Xlsx); 
//Add this line 
memorystream.Position = 0; 

はあなたの参照のための完全な実行可能なコードです。

タイトル:Microsoft Word文書に挿入Microsoft ExcelのOLEオブジェクト

C#

Document doc = new Document(); 
var builder = new DocumentBuilder(doc); 

Workbook workbook = new Workbook(); 

Worksheet sheet = workbook.Worksheets[0]; 
sheet.Cells["D3"].PutValue("This is sample data."); 
sheet.Cells["J20"].PutValue("End"); 

MemoryStream memorystream = new MemoryStream(); 
workbook.Save(memorystream, Aspose.Cells.SaveFormat.Xlsx); 
memorystream.Position = 0; 

Aspose.Words.Drawing.Shape shp = builder.InsertOleObject(memorystream, "Excel.Sheet.12", false, null); 

doc.Save("Output.docx"); 

注:私はAspose社で開発者エバンジェリストとして働いています

+0

私は私のワークブックを開いた後、アイコンをクリックする必要がありますので、おかげでまだテーブルとしてシートをエクセル表示されません。また、これだけのdocx .IN .NETのアイコンのためのAsposeでExcelオブジェクトを表示します私はデータテーブルをdocxで表示したい。 –

+1

Aspose.Cellsを使用してワークシートイメージを作成し、次にFromFile()またはFromStream()メソッドを使用してSystem.Drawing.Imageを作成し、nullの代わりにパラメータとして渡す必要があります。つまり、コードの最後のパラメータはnullですが、独自のImageオブジェクトを渡す必要があります。すなわち、Aspose.Words.Drawing.Shape shp = builder.InsertOleObject(memorystream、 "Excel.Sheet.12"、false、yourImg); – shakeel

+0

ありがとう –