Skip to main content

AccessTr.neT


word aktarmada tablo silme sorunu

word aktarmada tablo silme sorunu

#1
arkadaşlar alttaki kod yardımıyla worde tablo aktarıyorum. ancak koddanda anlaşılacağı üzere eğer tabloda veri yoksa tablo eklenmiyor ve yazı ekleniyor, sorunda bundan sonra başlıyor, eğer tablo eklenmediyse bir sonraki tablolar da gelemiyor worde haklı olarak çünkü tablo sırası kodda belirtiliyor(1,2,3 gibi) ve arada bir tablo olmayınca diğer tablo eklenemiyor. bu kodda  With oWord.ActiveDocument.Range.Tables(16) bölümünde (16)parantez içine ne üretebilirimki eğer geçmişte bir tablo silinmiş olsa bile sonraki tablolar eklenebilsin....
yardımlarınız için şimdiden teşekkürler...

Kod:
  AÇBİLGİLERİ.Show()
       If Not AÇBİLGİLERİ.DataGridView4.CurrentRow.Cells("ÇALIŞMAADI").Value > 0 Then

           oDoc.Bookmarks.Item("B22").Range.Text = ("İnceleme alanında Araştırma Çukuru Çalışması yapılmamıştır.")
       Else
           Me.Hide()
           oDoc.Tables.Add(oDoc.Bookmarks.Item("A22").Range, AÇBİLGİLERİ.DataGridView4.Rows.Count, 7)
           With oWord.ActiveDocument.Range.Tables(15)
               .Borders.InsideLineStyle = 1
               .Borders.OutsideLineStyle = 1

               On Error Resume Next
               For i As Integer = 0 To 1
                   .Cell(1, 1).Range.Text = "ÇALIŞMA ADI"
                   .Rows(i + 2).Cells(1).Range.Text = AÇBİLGİLERİ.DataGridView4.Rows(i).Cells("ÇALIŞMAADI").Value
                   .Cell(1, 2).Range.Text = "ÇALIŞMA TARİHİ"
                   .Rows(i + 2).Cells(2).Range.Text = AÇBİLGİLERİ.DataGridView4.Rows(i).Cells("ÇALIŞMATARİHİ").Value
                   .Cell(1, 3).Range.Text = "KOORDİNAT"
                   .Rows(i + 2).Cells(3).Range.Text = AÇBİLGİLERİ.DataGridView4.Rows(i).Cells("KOORDİNAT").Value
                   .Cell(1, 4).Range.Text = "ÇALIŞMA DERİNLİĞİ"
                   .Rows(i + 2).Cells(4).Range.Text = AÇBİLGİLERİ.DataGridView4.Rows(i).Cells("ÇALIŞMADERİNLİĞİ").Value
                   .Cell(1, 5).Range.Text = "YASS"
                   .Rows(i + 2).Cells(5).Range.Text = AÇBİLGİLERİ.DataGridView4.Rows(i).Cells("YASS").Value
                   .Cell(1, 6).Range.Text = "UD SAYISI"
                   .Rows(i + 2).Cells(6).Range.Text = AÇBİLGİLERİ.DataGridView4.Rows(i).Cells("UDSAYISI").Value
                   .Cell(1, 7).Range.Text = "EL ÖRNEĞİ SAYISI"
                   .Rows(i + 2).Cells(7).Range.Text = AÇBİLGİLERİ.DataGridView4.Rows(i).Cells("ELÖRNEĞİSAYISI").Value
               Next


           End With
       End If
       SONDAJBİLGİLERİ.Show()
       If Not SONDAJBİLGİLERİ.DataGridView5.CurrentRow.Cells("ÇALIŞMAADI").Value > 0 Then

           oDoc.Bookmarks.Item("B23").Range.Text = ("İnceleme alanında Sondaj Çalışması yapılmamıştır.")

       Else
           Me.Hide()
           oDoc.Tables.Add(oDoc.Bookmarks.Item("A23").Range, SONDAJBİLGİLERİ.DataGridView5.Rows.Count, 7)
           With oWord.ActiveDocument.Range.Tables(16)
               .Borders.InsideLineStyle = 1
               .Borders.OutsideLineStyle = 1

               On Error Resume Next
               For i As Integer = 0 To 1
                   .Cell(1, 1).Range.Text = "ÇALIŞMA ADI"
                   .Rows(i + 2).Cells(1).Range.Text = SONDAJBİLGİLERİ.DataGridView5.Rows(i).Cells("ÇALIŞMAADI").Value
                   .Cell(1, 2).Range.Text = "ÇALIŞMA TARİHİ"
                   .Rows(i + 2).Cells(2).Range.Text = SONDAJBİLGİLERİ.DataGridView5.Rows(i).Cells("ÇALIŞMATARİHİ").Value
                   .Cell(1, 3).Range.Text = "KOORDİNAT"
                   .Rows(i + 2).Cells(3).Range.Text = SONDAJBİLGİLERİ.DataGridView5.Rows(i).Cells("KOORDİNAT").Value
                   .Cell(1, 4).Range.Text = "ÇALIŞMA DERİNLİĞİ"
                   .Rows(i + 2).Cells(4).Range.Text = SONDAJBİLGİLERİ.DataGridView5.Rows(i).Cells("ÇALIŞMADERİNLİĞİ").Value
                   .Cell(1, 5).Range.Text = "YASS"
                   .Rows(i + 2).Cells(5).Range.Text = SONDAJBİLGİLERİ.DataGridView5.Rows(i).Cells("YASS").Value
                   .Cell(1, 6).Range.Text = "SPT SAYISI"
                   .Rows(i + 2).Cells(6).Range.Text = SONDAJBİLGİLERİ.DataGridView5.Rows(i).Cells("SPTSAYISI").Value
                   .Cell(1, 7).Range.Text = "UD SAYISI"
                   .Rows(i + 2).Cells(7).Range.Text = SONDAJBİLGİLERİ.DataGridView5.Rows(i).Cells("UDSAYISI").Value
               Next


           End With
       End If

Cevapla
#2
arkadaşlar bu olayın bir çözümü yok mudur?
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da
Task