Merhabalar ;
NDI formundaki grid bulunan verileri excel’e aktarım için kullanılacak kodlama örneği ;
'Gridin sql cümlesi oluşturuluyor
ColoumsCount = NDIXGrid1.ColCount
for i = 0 to (ColoumsCount-2)
if ColoumnsFields = "" then
ColoumnsFields = NDIXGrid1.StrColumn(i).DataField
else
ColoumnsFields = ColoumnsFields & "," & NDIXGrid1.StrColumn(i).DataField
end if
next
sqlstring = ucase(NDIXGrid1.Sql.Text)
Find = instr(1,sqlstring,"FROM")
sqlstring = mid(sqlstring,find,(len(sqlstring)-find))
sqlstring = "SELECT " & ColoumnsFields & " " & sqlstring
i = 1
Set Excel = CreateObject("Excel.Application")
Set Workbook = excel.Workbooks.Add(1)
Set Sayfa = excel.Sheets
Set rs = dbconn.CommonQuery
'Excele Başlık bilgileri Yazılıyor
for j = 0 to (ColoumsCount-2)
Sayfa.Item(1).cells(i,j+1) = NDIXGrid1.StrColumn(j).Title
Sayfa.Item(1).cells(i,j+1).Interior.ColorIndex = 15
Sayfa.Item(1).cells(i,j+1).Font.Bold = TRUE
Sayfa.Item(1).cells(i,j+1).Borders.LineStyle = 1
next
i = i + 1
rs.recsql(sqlstring)
while not rs.eof
for j = 0 to (ColoumsCount-2)
Sayfa.Item(1).cells(i,j+1) = rs.Fields(j).DisplayText
select case rs.Fields(j).DataType
case 6
Sayfa.Item(1).cells(i,j+1).NumberFormat = "#,##0.00"
Sayfa.Item(1).cells(i,j+1) = rs.Fields(j).asfloat
case 11
Sayfa.Item(1).cells(i,j+1).NumberFormat = "dd-mm-yyyy"
end select
next
i = i + 1
rs.next
wend
rs.close
Sayfa.Item(1).Columns.AutoFit
Excel.Visible = True
set rs = nothing
Set sayfa = Nothing
Set workbook = Nothing
Set excel = Nothing
İlk Yorumu Siz Yapın