Duyuruyu Kapat
Facebook Gözat
Twitter Gözat

vb.net excel dosya oluşturma ve yazma

Konu, 'Visual Basic .Net' kısmında tst tarafından paylaşıldı.

  1. tst

    tst Aktif Üye

    Kayıt:
    27 Ocak 2009
    Mesajlar:
    251
    Beğenilen Mesajlar:
    0
    vb.nette dosya oluşturup listview deki verileri ona yazdırmak istiyorum ama bir türlü olmadı.
    Şimdi iki sorunum var.
    1.si eğer sadece file.create(csv) dersem yani excel kısmını hiç karıştırmasam dosya oluşturuyor fakat şöyle bir hata alıyorum
    Eki Görüntüle 11444
    yani bu hatayı aldıktan sonra excel işlemlerini de yapamıyorum zaten.

    2. hata ise excel dosyasını kendim olusturunca yani csv değişkenini ben belirleyince ve file create etmeyince de boyle bir hata alıyorum
    Eki Görüntüle 11445


    birde program bir kere işlem yapmaya kalktıktan sonra o işlem yaptığı dosyayı açmaya kalktığımda ise şöyle diyor

    Eki Görüntüle 11446

    burada kilitlenmiş diyor ama ben burda
    xlWorkBook.Close()
    xlApp.Quit()
    kodlarıyla uygulamayı kapatıyorum.sorun net anlaşılsın diye resimleri ekledim şimdiden teşekkürler

    kodlar


    Imports Excel = Microsoft.Office.Interop.Excel
    Kod:
        Public Sub excelbut_Click(sender As System.Object, e As System.EventArgs) Handles excelbut.Click        Dim xlsdate As String = Date.Now.ToString("ss")
            Dim csv As String = Environ$("USERPROFILE") & "\Desktop\cc.xlsx"
    
    
            Dim xlApp As Excel.Application
    
    
            Dim xlWorkBook As Excel.Workbook
    
    
            Dim xlWorkSheet As Excel.Worksheet
    
    
             
    
    
            xlWorkBook = xlApp.Workbooks.Open(csv)
    
    
            xlWorkSheet = xlWorkBook.Worksheets("Sayfa1")
            For exyaz As Integer = 0 To 5
    
    
                xlWorkSheet.Cells(1, exyaz) = 45
    
    
            Next
    
    
            xlWorkBook.Close()
            xlApp.Quit()
        End Sub
     
  2. aslan.e

    aslan.e Daimi Üye

    Kayıt:
    4 Şubat 2011
    Mesajlar:
    1,192
    Beğenilen Mesajlar:
    0
    Şehir:
    Eskişehir
    Kodlarına göre olması gerekenler bunlar.... İlk kod, yeni bir excel oluşturup yazmak için. İkinci kod olan bir dosyayı açıp yazmak için.
    Kod:
    
            'file.create dosyayı görünürde oluşturur ancak o dosya notepad ile açabileceğin türden bir dosyadır. 
            'İçeriği excel dosyasına uygun olabilmesi için excel clasının dosyayı kendi oluşturması gerekir.
            Dim csv As String = Environ$("USERPROFILE") & "\Desktop"
            Dim xlApp As Excel.Application = CreateObject("Excel.Application") 'bunu kullanmazsan excel nesnen oluşmaz.
            Dim xlWorkBook As Excel.Workbook
            Dim xlWorkSheet As Excel.Worksheet
            Dim x As Object = System.Reflection.Missing.Value 'varsayılan değerleriyle boş bir dosya oluşturmak için
            xlWorkBook = xlApp.Workbooks.Add(x) 'burada oluşur dosya
            xlWorkSheet = xlWorkBook.Worksheets("Sayfa1")
            For exyaz As Integer = 1 To 5 'excel hücreleri 0'dan başlamaz. For exyaz=0 hata verir.
                xlWorkSheet.Cells(1, exyaz) = "45"
            Next
            xlWorkBook.SaveAs(csv & "\xxxz.xlsx")
            xlWorkBook.Close()
            xlApp.Quit()
    
    
    Kod:
    
            Dim csv As String = Environ$("USERPROFILE") & "\Desktop"
            Dim xlApp As Excel.Application = CreateObject("Excel.Application") 'bunu kullanmazsan excel nesnen oluşmaz.
            Dim xlWorkBook As Excel.Workbook
            Dim xlWorkSheet As Excel.Worksheet
    
            xlWorkBook = xlApp.Workbooks.Open(csv & "\xxxz.xlsx") 'burada açılır dosya
            xlWorkSheet = xlWorkBook.Worksheets("Sayfa1")
            For exyaz As Integer = 1 To 5 'excel hücreleri 0'dan başlamaz. For exyaz=0 hata verir.
                xlWorkSheet.Cells(1, exyaz) = "45"
            Next
            xlWorkBook.Save()
            xlWorkBook.Close()
            xlApp.Quit()
    
    
     
  3. tst

    tst Aktif Üye

    Kayıt:
    27 Ocak 2009
    Mesajlar:
    251
    Beğenilen Mesajlar:
    0
    çok teşekkür ederim var olan dosya için sorunsuz çalıştı

    ama birde o an xlsx dosyası olusturup o dosyada işlem yapmak istesem hata veriyor istesem gene resimdeki gibi hata veriyor
    http://forum.ceviz.net/attachments/...innet-excel-dosya-olusturma-ve-yazma-adsizpng

    bu hata neden olur biliyor musunuz?
     
  4. aslan.e

    aslan.e Daimi Üye

    Kayıt:
    4 Şubat 2011
    Mesajlar:
    1,192
    Beğenilen Mesajlar:
    0
    Şehir:
    Eskişehir
    Excel dosyasının formatı ile text dosyalarının formatı birbirinden apayrıdır. Üstte verdiğim kodlardaki gibi oluşturursan yeni dosya oluşur. file.create ile dosya excel dosyası oluşmaz.
     
  5. tst

    tst Aktif Üye

    Kayıt:
    27 Ocak 2009
    Mesajlar:
    251
    Beğenilen Mesajlar:
    0
    eyvallah çok saolasın

    ben direk 2. kodu yapıstırp denemişim kafam çok dağınık kusura bakma :)