C# Excel Hücresine Resim Nasıl Eklenir

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.

C# ile Excel Dosyasına Resim Eklemek
C# ile Excel Dosyasına Resim Eklemek
// 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.

C# ile Excel Hücresine Resim Eklemek
C# ile Excel Hücresine Resim Eklemek

Bir cevap yazın

E-posta hesabınız yayımlanmayacak.

This site uses Akismet to reduce spam. Learn how your comment data is processed.