Görevim, URL'den resim excel çalışma sayfasında belirli bir hücreye yerleştirmektir. Bunu yapmak için C# ile NetOffice kullanıyorum.Excel hücresine resim nasıl eklenir?
Asıl sorunum, bir resmi tam olarak hücreye yerleştirmenin bir yolunu bulamıyorum. Sheet.Shapes.AddPicture() yöntemini kullandığımda, fotoğrafımı nereye koyacağımı koordine etmem gerekiyor. Elbette bununla ilgili bir sorunum yok (bir çeşit geçici çözüm yarattım), ancak, bu problemi çözme yaklaşımımın doğru olup olmadığını veya hücreye görüntü ekleyebileceğim başka bir yöntem olup olmadığını sormak istiyorum.
Doug Glancy Excel bir hücrenin "içeride" olması için bir resim düşünün olmadığını belirten yeterli olsa da aslındavar floatLeft = FloatLeftPixelsCalculation(rowNumber);
var floatTop = FloatTopPixelsCalculation(rowNumber);
Worksheet.Shapes.AddPicture(urlCellValue, MsoTriState.msoFalse, MsoTriState.msoTrue, floatLeft, floatTop, PictureWidth, PictureHeight);
public float FloatTopPixelsCalculation(int rowNumber)
{
float floatTop = 0;
for (var rNumber = 1; rNumber < rowNumber; rNumber++)
{
var cellHeight = Convert.ToSingle(Worksheet.Cells[rNumber, ColumnIndex].RowHeight);
floatTop = floatTop + cellHeight;
}
return floatTop;
}
public float FloatLeftPixelsCalculation(int rowNumber)
{
float floatLeft = 0;
for (var columnNumber = 1; columnNumber < ColumnIndex; columnNumber++)
{
var cellWidth = Convert.ToSingle(Worksheet.Cells[rowNumber, columnNumber].ColumnWidth);
floatLeft = floatLeft + cellWidth;
}
return floatLeft;
}
Bildiğim kadarıyla, görüntüler bir çalışma sayfasındaki hücrelerin içine doğrudan girmez. Bu bir elektronik tabloya bir görüntü ekleyerek kanıtlanmıştır - bu, küçük resimler, şekiller vb. Ile aynı hücreler üzerinde sorta "yüzer" olduğunu fark eder. –
Resimleri hücrelere ekleyemezsiniz. Onları Hücre ile hizalama yaklaşımınız, Üst ve Sol özellikleri vb. Kullanarak, doğru olanıdır. –