Ich füge ein Bild in eine Excel-Zelle, aber in der Regel wird das Bild größer sein, sowohl in Höhe und Breite als die ursprüngliche Zelle. Also nachdem ich mein Bild eingefügt habe, möchte ich: die spezifische Excel-Zeile und -Spalte entsprechend der Bildgröße skalieren. Das ist, was ich habe:Excel Größe Zelle nach Bildgröße
Microsoft.Office.Interop.Excel.Application xlApp;
Microsoft.Office.Interop.Excel.Worksheet ws;
object misValue = System.Reflection.Missing.Value;
xlApp = new Microsoft.Office.Interop.Excel.Application();
Workbook wb = xlApp.Workbooks.Open(@".../MyExcelFile.xlsx");
ws = wb.Sheets[1];
string picPath = @"..../MyPic.png";
System.Drawing.Image img = System.Drawing.Image.FromFile(picPath);
var size = img.Size;
Microsoft.Office.Interop.Excel.Range oRange = (Microsoft.Office.Interop.Excel.Range)ws.Cells[1, 5];
float Left = (float)((double)oRange.Left);
float Top = (float)((double)oRange.Top);
const float ImageSize = 32;
ws.Shapes.AddPicture(picPath, Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoCTrue, Left, Top, ImageSize, ImageSize);
So, hier habe ich das Bild in der fünften Zelle der ersten Reihe am Einsetzen, aber seine Größe zu 32.However Einstellung, ich habe Zugriff auf diese Höhe des Bildes und der Breite. Wie kann ich Zeile 1 auf diese Höhe und Spalte 5 auf diese Breite einstellen?
EDIT: Mit dem aktuellen Code von Richard Mneyan, sieht es so aus, so dass das Bild nicht in der Zelle passt:
Danke, tut dies die Höhe und Breite ändern von der ersten Reihe, aber jetzt passt das Bild nicht gut in die Zelle. Überprüfen Sie meine Bearbeitung, um zu sehen, wie es aussieht. – Iason
Die Einheiten RowHeight von Excel und ColumnWidth von Excel sind nicht die gleichen Einheiten. Die Einstellung RowHeight von 32 und ColumnWidth von 32 würde in Excel keine Zellenquadrate ergeben. Hier ein Artikel, wie Sie Ration anwenden können, um es quadratisch zu machen: https://www.pcreview.co.uk/threads/exact-ratio-of-width-to-height-to-get-a-square-cell.3454558/ –
Sie müssten Ration mit Höhe und Breite anwenden: https://superuser.com/questions/165738/how-to-make-celles-perfect-squares-in-excel dieser Link würde helfen. –