Forum
Merhaba arkadaşlar ;
Excel hazırlamış oldugum verileri kopyala ve yapıştır ile Devexpress gridviewe nasıl alabilirim .
Bunu kopyala/yapıştır metodu ile değil de proje içerisinden excel dosyasını okutarak alabilirsiniz.
oledb ile dosyanın tamamını okutabiliyorum ama bu projem için uygun olan yapıştırma özelliği .
Kopyalanan alanın standart olması gerekiyor o halde. Örnegin 5 sütun gibi. Çünkü kopyaladığınız alanı döngü ile okutup tabloya ekleyerek grid'e source etmeniz gerekecek. Bu şartlar oluşuyor ise; Öncelikle Kopyaladığınız veriyi Clipboard.GetText komutu ile bir değişkene atayın, daha sonra bu değişken içerisindeki verileri bir döngüy ile okutarak tabloya ekleyin.
Exceldeki A-B-C-D kolonlarını içeren bir örnek paylaşabilirmisiniz .
Private Sub _paste()
Dim tbl As New DataTable
With tbl.Columns
.Add("ColumnA", GetType(String))
.Add("ColumnB", GetType(String))
.Add("ColumnC", GetType(String))
.Add("ColumnD", GetType(String))
End With
Try
Dim AllText As String = Clipboard.GetText.Replace(vbLf, "").Replace(vbTab & vbTab & vbTab, "")
Dim AllRowText() As String = AllText.Split(vbCrLf)
For x As Integer = 0 To AllRowText.Length - 1 'Satir
Dim Row As String = AllRowText(x).Replace(vbLf, "")
If Row = "" Then Continue For
Select Case Row.Split(vbTab).Length
Case 0
Continue For
Case 1 'A Sutunu
tbl.Rows.Add(Row.Split(vbTab)(0), "", "", "")
Case 2 'B Sutunu
tbl.Rows.Add(Row.Split(vbTab)(0), Row.Split(vbTab)(1), "", "")
Case 3 'C Sutunu
tbl.Rows.Add(Row.Split(vbTab)(0), Row.Split(vbTab)(1), Row.Split(vbTab)(2), "")
Case 4 'D Sutunu
tbl.Rows.Add(Row.Split(vbTab)(0), Row.Split(vbTab)(1), Row.Split(vbTab)(2), Row.Split(vbTab)(3))
End Select
Next
Me.GridControl1.DataSource = tbl
Catch ex As Exception
tbl.Dispose()
MsgBox(ex.Message)
End Try
End Sub