c#Listview den Excel e veri aktarma 'HRESULT özel durum döndürdü: 0x800AC472' hatası Acil Yardım !! (Tüm Sürüm)
Tüm Forumlar >> Web Tasarım - Programlama >> Yazılım Geliştirme >> C#
Mesaj
kuzgun155 => c#Listview den Excel e veri aktarma 'HRESULT özel durum döndürdü: 0x800AC472' hatası Acil Yardım !! (4.01.2022 21:33:32)
Aşağıdaki kodlamayla listview den exel e veri aktarıyorum. anck aktarma esnasında  System.Runtime.InteropServices.COMException: 'HRESULT özel durum döndürdü: 0x800AC472' hatası alıyorum. acil olarak bana bu konuda yardımcı olur musunuz nerede takılıyor bu kodlama


public void eexcelAktar(ListView lw, ProgressBar pb = null)
    {
      try
      {
        Microsoft.Office.Interop.Excel.Application xls = new Microsoft.Office.Interop.Excel.Application();
        
        
        Workbook wb = xls.Workbooks.Add(XlSheetType.xlWorksheet);
        Worksheet ws = (Worksheet)xls.ActiveSheet; // çalışma alanı aktif çalışma alanı

        xls.Visible = true; // görünürlük aktif
        #region manuelBaslikalani
        // alanları manuel olarak yazıyoruz
      
        #endregion
        // Eğer Progress bar nesnesi null değil ise sıfırlama ve ayarlama işlemini gerçekleştir
        if (pb != null)
        {
          pb.Maximum = Convert.ToInt32(lw.Items.Count.ToString());
          pb.Value = 0;
        }

        // Şimdi ise dinamik olarak colon bilgilerini alıyoruz ekliyoruz
        for (int i = 0; i < lw.Columns.Count; i++)
        {
          // alanları manuel olarak yazıyoruz
          ws.Cells[1, i + 1] = lw.Columns.Text.ToString();
        }
        // Şimdi de lw içerisindeki verileri dinamik olarak aktarıyoruz
        int _i = 2; // 2. satırdan itibaren içerikleri doldurmaya başla
        int j = 1;
        foreach (ListViewItem item in lw.Items)
        {
          ws.Cells[_i, j] = item.Text.ToString();
          foreach (ListViewItem.ListViewSubItem subitem in item.SubItems)
          {
            ws.Cells[_i, j] = subitem.Text.ToString();
            j++;
          }
          j = 1;
          _i++;
          // Eğer Progress bar nesnesi null değil ise artırma işlemini yap
          if (pb != null)
          {
            pb.Value = _i - 2;
          }

        }
        // column sütunları yazı boyutuna göre ayarlıyor
        xls.Columns.AutoFit();

        // aktarama işlemi sırasında alabileceğimiz hatalara karşı önlem olarak hata bastırma işlemi yapılıyor
        xls.AlertBeforeOverwriting = false;

      }
      catch (Exception)
      {
        // hata fırlatıyoruz :)
        throw;
      }
    }

Sayfa: [1]