Bu yazımızda arkadaşlar C# ile Excel hücresine bir resim eklemeyi öğreneceğiz. Örneğin C# uygulamanızdaki bir picturebox nesnemizde bir resim var ve bu resmi Excel dosyasına aktarma istiyorsanız doğru yerdesiniz 🙂
Daha önce C# Excel uygulamalarımızdaki gibi ilk önce Excel Object Library kütüphanesini projenize add referans yaparak ekleyin. Sonra aşağıdaki gibi basit bir arayüz yapın içinde picturebox ve bir buton olsun.
// www.kaizen40.com using System; using System.IO; using System.Windows.Forms; using Excel = Microsoft.Office.Interop.Excel; namespace WindowsFormsApp1 { public partial class Form1 : Form { public string file_path = @"C:\Users\***\Desktop\WindowsFormsApp1\test.xlsx"; public Form1() { InitializeComponent(); pictureBox1.DragEnter += PictureBox1_DragEnter; pictureBox1.DragDrop += PictureBox1_DragDrop; } private void Form1_Load(object sender, EventArgs e) { pictureBox1.AllowDrop = true; } private void PictureBox1_DragDrop(object sender, DragEventArgs e) { if (e.Data.GetDataPresent(DataFormats.FileDrop)) { e.Effect = DragDropEffects.All; } else { e.Effect = DragDropEffects.None; } } private void PictureBox1_DragEnter(object sender, DragEventArgs e) { string[] s = (string[])e.Data.GetData(DataFormats.FileDrop, false); for (int i = 0; i < s.Length; i++) { var iSize = new FileInfo(s[i]).Length; pictureBox1.ImageLocation = s[i]; } } private void BtnExcel_Click(object sender, EventArgs e) { Excel.Application ExcelUygulama; // excel uygulaması tanımla Excel.Workbook CalismaKitabi; // çalışma Kitabı tanımla Excel.Worksheet CalismaSayfasi; // çalışma Sayfası tanımla ExcelUygulama = new Excel.Application(); // yeni bir excel uygulaması yarat CalismaKitabi = ExcelUygulama.Workbooks.Open(file_path); // dosyayı aç CalismaSayfasi = (Excel.Worksheet)CalismaKitabi.Worksheets.get_Item(1); // 1. sayfayı aç CalismaSayfasi.Shapes.AddPicture(pictureBox1.ImageLocation, Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoCTrue, 50, 50, 300, 45); // sol hiza, yukarıdan hiza, genişlik ve yükseklik değerleri ExcelUygulama.Visible = true; // excel' i görünür yap //ExcelUygulama0.Quit(); // excel uygulamasını kapat } }
Kodu incelerseniz picturebox nesnemize drag&drop (sürükle ve bırak) özelliğini ekledik ve apperance özelliğini strech image yaptık. Bu sayede resminizi tutarak sürükleyip picturebox’ ın üzerine bırakınca resmi picture box boyutlarına göre yeniden düzenliyor.
1 yorum
Anonim · 19 Aralık 2022 00:10 tarihinde
Hocam daha basit yapsaydınız keşke bir yerde resim var excel e atalım yeter sürükle bırak boyutlandır fln karışık olmuş size kolay da bilmeyene zor