Skip to main content

AccessTr.neT


Metin içindeki virgülle ayrılan verileri farklı satıra yazma

Metin içindeki virgülle ayrılan verileri farklı satıra yazma

#8
Dilerim işinize yarar
açılan formdaki düğmeye basınca alanı parçalara ayırıp tabloya yeni kayıt olarak ekler, bitişik verili eski kayıtları siler
1 form, 1 modül ve 1 sorgu eklenmiştir
Modüldeki fonksiyonlar
Public Function SplitVeriBul(GVeri As String, GSayi, Optional Ayrac As String = ",") As Variant
    On Error Resume Next
    Dim var As Variant
    Dim GAyrac As String
    GAyrac = Ayrac
    var = Split(GVeri, GAyrac)
    SplitVeriBul = var(GSayi)

End Function

Public Function SplitStnSay(GVeri As String, Optional Ayrac As String = ",") As Integer
    On Error Resume Next
    Dim var As Variant
    Dim GAyrac As String
    GAyrac = Ayrac
    var = Split(GVeri, Ayrac)
    SplitStnSay = UBound(var) + 1
End Function
formdaki kodlar
Private Sub BtnSay_Click()
   
    Dim sql, SqlStn, SqlEkle, SqlSil As String
    Dim xStnSay, x As Integer
      Sql = "SELECT  max(SplitStnSay([kisiler])) AS [HstStn] FROM Tablo1"

    CurrentDb.QueryDefs("KsBol").sql = sql
xStnSay = DMax("HstStn", "KsBol")

'hy Union____________________________
SqlStn = ""
For x = 1 To xStnSay
    SqlStn = SqlStn & " union all SELECT [sınıf],[sınıf durumu], Nz(SplitVeriBul([kisiler]," & x - 1 & "),'') AS [HstStn] from tablo1 " & _
                      " where Nz(SplitVeriBul([kisiler]," & x - 1 & "),'')<>'' and [kisiler] like '*,*'" & vbCrLf
Next x
    Sql = Mid(SqlStn, 11)

    Sql = " SELECT [sınıf],[sınıf durumu],[HstStn] FROM (" & Sql & ") as UnionQuery"
   
    CurrentDb.QueryDefs("KsBol").sql = sql

    SqlEkle = "INSERT INTO Tablo1 ([sınıf], [sınıf durumu], [kisiler]) " & _
              "SELECT KsBol.sınıf, KsBol.[sınıf durumu], KsBol.HstStn " & _
              "FROM KsBol"

    SqlSil = "DELETE " & _
              "FROM Tablo1 " & _
              "WHERE (((Tablo1.kisiler) Like ""*,*""))"

    CurrentDb.Execute SqlEkle
    CurrentDb.Execute SqlSil
End Sub
.rar Dnm_hy.rar (Dosya Boyutu: 25,95 KB | İndirme Sayısı: 4)
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da

Bu Konudaki Yorumlar
RE: Metin içindeki virgülle ayrılan verileri farklı satıra yazma - Yazar: berduş - 04/05/2020, 20:57
Task