2016-06-03 13 views
1

Ich versuche, ein Bild in Excel-Zelle in Zeile 3 Spalte 1 wie unten angegeben hinzuzufügen. Der Compiler hat mir einen Fehler gemeldet. Habe ich hier etwas falsch gemacht? Vielen Dank im Voraus für Ihre Vorschläge.Bild in Excel auf bestimmte Zelle mit C hinzufügen #

Excel.Application xlApp; 
Excel.Workbook wb; 
Excel.Worksheet ws; 
object misValue = System.Reflection.Missing.Value; 
xlApp = new Excel.Application(); 
wb = xlApp.Workbooks.Add(misValue); 
ws = (Excel.Worksheet)wb.Worksheets.get_Item(1); 
ws.Cells[3, 1] = ws.Shapes.AddPicture("C:\\photos\\4a.png", Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoCTrue, 75, 75, 350, 50); 
+0

welchen Fehler Sie erhalten? –

+0

Fehler aufgetreten wie folgt ..... System.Runtime.InteropServices.COMException: Ausnahme von HRESULT: 0x800A03EC –

+0

Versuch durch einen 'Desktop' Ordner unter' C zu erstellen: \ Windows \ System32 \ config \ systemprofile' UND 'C: \ Windows \ SysWOW64 \ config \ Systemprofil' –

Antwort

5

Sie Bild hinzufügen wie folgt

Microsoft.Office.Interop.Excel.Range oRange = (Microsoft.Office.Interop.Excel.Range)ws.Cells[3, 1]; 
float Left = (float)((double)oRange.Left); 
float Top = (float)((double)oRange.Top); 
const float ImageSize = 32; 
ws.Shapes.AddPicture("C:\\pic.JPG", Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoCTrue, Left, Top, ImageSize, ImageSize); 
+0

Es funktioniert .... Danke. –

+0

In der letzten Zeile "Links, Oben, Bildgröße, Bildgröße);" Die erste Bildgröße entspricht der Bildbreite und die nächste entspricht der Bildhöhe. Beide Werte sind vom Typ float. – BiLaL

+0

@BiLaL, es ist bereits ein Float-Wert –

Verwandte Themen