Skip to main content

AccessTr.neT


Kelime Tekrar Tespiti

access acemisi
access acemisi
13
3168

Kelime Tekrar Tespiti

Çözüldü #1
Değerli arkadaşlar

Vaaz tablosunda ,anahtar_kelime alanında girilen kelimelerin sayısını, oluşturulacak yeni bir sorguda bulmak istiyorum. Örneğin oluşturduğum sorguda , Bayrak kelimesi 1. Ve 2. Satırda, girildiği görülüyor. Toplamda 2 rakamını aşağıdaki şekilde görmek istiyorum Saygılarımla

[Resim: do.php?img=8880]
.rar kelime tekrar tespit.rar (Dosya Boyutu: 20,19 KB | İndirme Sayısı: 4)
Cevapla
#2
yeni bir tablo ekleyip kelimeleri ve sayılarını ona tanımladım
dilerim işinize yarar.
.rar index_hy.rar (Dosya Boyutu: 43,04 KB | İndirme Sayısı: 5)
Cevapla
#3
Merhaba, ekli örnekteki srg_veriler isimli sorgu, 3 kelimeye kadar verileri parçalayıp alt alta yazdırır, srg_kelimesayilari isimli sorgu ise bu kelimeleri sayar.
.zip kelime tekrar tespit_sld.zip (Dosya Boyutu: 24,48 KB | İndirme Sayısı: 8)
Cevapla
#4
(25/02/2019, 12:24)ozanakkaya yazdı: srg_kelimesayilari isimli sorgu ise bu kelimeleri sayar
Sn ozanakkaya Çalışmanızı tekrar inceliyorum. 3  nolu cevabınızda ,en son gönderdiğiniz dosyada ,ramazan kelimesi 3 defa yazılı gözüktüğü halde 2 saymış.Ben tekrar bir ramazan kelimesi daha ilave ettiğim halde saymadı nedendir acaba.Bir kez daha inceleyebilir misiniz.Saygılar
Cevapla
#5
index oluşturma butonunun kodunu aşağıdaki ile değiştirip dener misiniz?
Private Sub BtnEndxSay_Click()
Dim KelimeSay As New ADODB.Recordset
Dim TxtIndex, TxtIndex2, SqlKelime, txtKelimeSay, saygec As String
Dim IndexDizi() As String
TxtIndex = ""
TxtIndex2 = ""
SqlKelime = "SELECT [anahtar_kelime] FROM vaaz ;"

KelimeSay.Open SqlKelime, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
If KelimeSay.RecordCount <= 0 Then GoTo 10
KelimeSay.MoveLast
KelimeSay.MoveFirst
Do Until KelimeSay.EOF
TxtIndex = TxtIndex & KelimeSay.Fields(0) & " "
KelimeSay.MoveNext
Loop

IndexDizi = Split(Trim(TxtIndex))
TxtIndex = " " & IndexDizi(0) & " "
TxtIndex2 = " " & IndexDizi(0) & " "
For X = LBound(IndexDizi) + 1 To UBound(IndexDizi)

TxtIndex = IIf(InStr(TxtIndex, " " & IndexDizi(X) & " ") = 0, TxtIndex & IndexDizi(X) & " ", TxtIndex)
TxtIndex2 = TxtIndex2 & IndexDizi(X) & " " 'bu satır tek değişti TxtIndex2 yerine TxtIndex yazılmış yanlışlıkla
Next

IndexDizi = Split(Trim(TxtIndex))
'________Sırala__________________
For X = LBound(IndexDizi) To UBound(IndexDizi)
For y = X To UBound(IndexDizi)
If UCase(IndexDizi(y)) < UCase(IndexDizi(X)) Then
TempTxt1 = IndexDizi(X)
TempTxt2 = IndexDizi(y)
IndexDizi(X) = TempTxt2
IndexDizi(y) = TempTxt1
End If
Next y
Next X
'___________sırala son

CurrentDb.Execute " DELETE * FROM [TblEndx];"
For X = LBound(IndexDizi) To UBound(IndexDizi)
saygec = Trim(TxtIndex2)
txtKelimeSay = UBound(Split(saygec, IndexDizi(X)))

CurrentDb.Execute " INSERT INTO [TblEndx]([EndxKelime], [EndxSay])" & _
" VALUES (' " & IndexDizi(X) & "', '" & txtKelimeSay & "');"

Next
10
KelimeSay.Close
Set KelimeSay = Nothing
DoCmd.OpenQuery "sorgu"
End Sub
Cevapla
#6
Sn haliliyas böle bir hata verdi
[Resim: do.php?imgf=74e04de634c71.png]
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da
Task