Konu Araçları | Seçenekler: | Gösterim Stili
Tarih
06/06/2016 03:47
Konu Sahibi
ramazanemrullah
Yorumlar
3
Okunma
711
Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 5
  • 4
  • 3
  • 2
  • 1

Derecelendirme: 0/5 - 0 oy

ramazanemrullah


Kullanici Avatari
Altın Üye
R.... E....
73
01/12/2012
0
Manisa
Bilgi İşlem
-
14/09/2017,14:24
merhabalar
ben bir tablomda 30915 kayıt mevcut bir butona tıklayın Sql tablomdan direk Excel aktarmasını istiyorum google v.s gibi sitelerde bir çok kod buldum denemedım ve veri aktarma çok yavaş Access daha hızlı kalıyordu bu konuda Access gönder dedimde hemen açıyor ama şimdi bunu VB.net göre yapmaya çalışıyorum burada takıldım bu konuda yardım edermisiniz
hızlı aktarmasını istiyorum benım buldugum kodlar 15 dk geçiyor daha aktarma bitemiyor yardımcı olursanız sevinirim

herkeze hayırlı ramazanlar


Cevapla

drummers

Omur Can
Kullanici Avatari
Destek
O.... C....
405
11/05/2009
125
İzmir
Ofis 2003
28/08/2017,11:37
(06/06/2016, 03:47)ramazanemrullah Adlı Kullanıcıdan Alıntı: merhabalar
ben bir tablomda 30915 kayıt mevcut bir butona tıklayın Sql tablomdan direk Excel aktarmasını istiyorum google v.s gibi sitelerde bir çok kod buldum denemedım ve veri aktarma çok yavaş Access daha hızlı kalıyordu bu konuda Access gönder dedimde hemen açıyor ama şimdi bunu VB.net göre yapmaya çalışıyorum burada takıldım bu konuda yardım edermisiniz
hızlı aktarmasını istiyorum benım buldugum kodlar 15 dk geçiyor daha aktarma bitemiyor yardımcı olursanız sevinirim

herkeze hayırlı ramazanlar


Verilerinizin dataridde listelendiğini varsayarak cevaplıyorum.

Visual Basic Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
Public Sub Excele_Aktar(ByVal Datagrid As DataGridView)

        Dim rowsTotal, colsTotal As Short
        Dim I, j, iC As Short
        System.Windows.Forms.Cursor.Current = System.Windows.Forms.Cursors.WaitCursor
        Dim xlApp As New Excel.Application
        Try
            Dim excelBook As Excel.Workbook = xlApp.Workbooks.Add
            Dim excelWorksheet As Excel.Worksheet = CType(excelBook.Worksheets(1), Excel.Worksheet)
            xlApp.Visible = True
            rowsTotal = Datagrid.RowCount - 1
            colsTotal = Datagrid.Columns.Count - 1
            With excelWorksheet
                .Cells.Select()
                .Cells.Delete()
                For iC = 0 To colsTotal
                    .Cells(1, iC + 1).Value = Datagrid.Columns(iC).HeaderText
                Next
                For I = 0 To rowsTotal - 1

                    'For j = 0 To colsTotal - 1
                    For j = 0 To colsTotal
                        .Cells(I + 2, j + 1).value = Datagrid.Rows(I).Cells(j).Value
                    Next j


                Next I
                '.Rows("1:1").Font.FontStyle = "Bold"
                '.Rows("1:1").Font.Size = 10
                .Cells.Columns.AutoFit()
                .Cells.Select()
                .Cells.EntireColumn.AutoFit()
                .Cells(1, 1).Select()
            End With
        Catch ex As Exception
            MsgBox("Aktarım Hatası " & ex.Message)
        Finally
            System.Windows.Forms.Cursor.Current = System.Windows.Forms.Cursors.Default
            xlApp = Nothing
        End Try

    End Sub


Visual Basic Code
Private Sub ExcellAktar_Click(sender As Object, e As EventArgs) Handles ExcellAktar.Click
        Excele_Aktar(DataGridView1)
    End Sub


drummers, 11-05-2009 tarihinden beri AccessTr.neT üyesidir.
Cevapla

ramazanemrullah


Kullanici Avatari
Altın Üye
R.... E....
73
01/12/2012
0
Manisa
Bilgi İşlem
-
14/09/2017,14:24
(08/02/2017, 17:26)drummers Adlı Kullanıcıdan Alıntı:
(06/06/2016, 03:47)ramazanemrullah Adlı Kullanıcıdan Alıntı: merhabalar
ben bir tablomda 30915 kayıt mevcut bir butona tıklayın Sql tablomdan direk Excel aktarmasını istiyorum google v.s gibi sitelerde bir çok kod buldum denemedım ve veri aktarma çok yavaş Access daha hızlı kalıyordu bu konuda Access gönder dedimde hemen açıyor ama şimdi bunu VB.net göre yapmaya çalışıyorum burada takıldım bu konuda yardım edermisiniz
hızlı aktarmasını istiyorum benım buldugum kodlar 15 dk geçiyor daha aktarma bitemiyor yardımcı olursanız sevinirim

herkeze hayırlı ramazanlar

Verilerinizin dataridde listelendiğini varsayarak cevaplıyorum.

Visual Basic Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
Public Sub Excele_Aktar(ByVal Datagrid As DataGridView)

        Dim rowsTotal, colsTotal As Short
        Dim I, j, iC As Short
        System.Windows.Forms.Cursor.Current = System.Windows.Forms.Cursors.WaitCursor
        Dim xlApp As New Excel.Application
        Try
            Dim excelBook As Excel.Workbook = xlApp.Workbooks.Add
            Dim excelWorksheet As Excel.Worksheet = CType(excelBook.Worksheets(1), Excel.Worksheet)
            xlApp.Visible = True
            rowsTotal = Datagrid.RowCount - 1
            colsTotal = Datagrid.Columns.Count - 1
            With excelWorksheet
                .Cells.Select()
                .Cells.Delete()
                For iC = 0 To colsTotal
                    .Cells(1, iC + 1).Value = Datagrid.Columns(iC).HeaderText
                Next
                For I = 0 To rowsTotal - 1

                    'For j = 0 To colsTotal - 1
                    For j = 0 To colsTotal
                        .Cells(I + 2, j + 1).value = Datagrid.Rows(I).Cells(j).Value
                    Next j


                Next I
                '.Rows("1:1").Font.FontStyle = "Bold"
                '.Rows("1:1").Font.Size = 10
                .Cells.Columns.AutoFit()
                .Cells.Select()
                .Cells.EntireColumn.AutoFit()
                .Cells(1, 1).Select()
            End With
        Catch ex As Exception
            MsgBox("Aktarım Hatası " & ex.Message)
        Finally
            System.Windows.Forms.Cursor.Current = System.Windows.Forms.Cursors.Default
            xlApp = Nothing
        End Try

    End Sub


Visual Basic Code
Private Sub ExcellAktar_Click(sender As Object, e As EventArgs) Handles ExcellAktar.Click
        Excele_Aktar(DataGridView1)
    End Sub



merhaba böyle aktarma yapabiliyorum fakat çok yavaş yapıyor aktarmayı bu kadar kayıt 1 saat te bitmiyor daha hızlı bir şekilde DataGridView1' ile deilde direk tablodan excele atsam cok iyi olur


Cevapla

alpeki99

Düşünmek en zor iştir...
Kullanici Avatari
Uzman
O....
6.090
29/10/2008
Bursa
Yazılım Geliştirici
Ofis 2010 32 Bit
31/08/2017,19:08
Örnek projenizi ekleyin yardımcı olmaya çalışalım.


AccessTr.Net teknik konular içeren bir sitedir. Bu tip sitelerde en iyi şekilde yardım alabilmeniz için Site Kurallarını mutlaka okumanız ve buna göre hareket etmeniz lazım.
Cevapla


Konuyu Okuyanlar: 1 Ziyaretçi

Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Tarih Son Yorum
  VB.NET Button İle İstenilen Excel Belgesini Yazdırma (Printer İle) Mettless Dizayn 1 523 22/11/2016, 16:30 alpeki99
  Vb sql excel gibi filtreleme. Ahmed Ahmed 11 1.696 05/12/2015, 22:34 Ahmed Ahmed
  Datagridview'deki değişikliği excel'e kaydetme. Volkan Karlıdağ 1 1.173 13/03/2015, 10:52 Sherlock.Holmes
  datagridview de seçilen değeri textbox a aktarma gkmanil 2 1.531 30/12/2014, 19:52 gkmanil
  Aydaki günleri gösteren bir tabloyu rapor haline getirmek. umutakkaya 3 1.699 28/09/2014, 19:45 umutakkaya

Türkçe Çeviri: MCTR, Yazılım: MyBB, © 2002-2017 MyBB Group.
Forum use Krzysztof "Supryk" Supryczynski addons.