Belli Bir Sıraya Göre Tekrarlı Satır Değerlerini Gruplandırma.

1 2
18/09/2020, 12:54

hbal09

Bu şekilde de denemiştim, bu sefer ardı sıra tekrarlama bitmesine karşın malzemenin başka bölümden sonra aynı bölümlerde işlem görünmesini de iptal ediyor. örneğin yukarıdaki tablo örneğine göre doğru sonuç :
BOLUM-A
BOLUM-B
BOLUM-C
BOLUM-D
BOLUM-E
BOLUM-B
BOLUM-F
BOLUM-A
BOLUM-C


iken , min ifadesi kullandığımda sonradan tekrar eden a,b,c bölümlerini de iptal ederek şöyle bir yanlış sonuç veriyor:
BOLUM-A
BOLUM-B
BOLUM-C
BOLUM-D
BOLUM-E
BOLUM-F
yapmak istediğim, sıra numarasına göre ardı sıra tekrarları sonlandırmak.
18/09/2020, 13:27

berduş

maalesef yapmak istediğinizi anlayamadım. çalışmanızı ekleyip daha detaylı ve örnekler üzerinden açıklama yapabilirseniz yardımcı olmaya çalışırız.
sorgu kodunu aşağıdaki gibi dener misiniz?
SELECT Tablo1.BOLUM
FROM Tablo1
WHERE (((IIf(Nz(DMax("SiraNo","tablo1","Bolum='" & [Tablo1]![BOLUM] & "' and SiraNo<" & [Tablo1]![SiraNo]),0)=Nz(DMax("SiraNo","tablo1","SiraNo<" & [Tablo1]![SiraNo]),0) And Not IsNull(DMax("SiraNo","tablo1","SiraNo<" & [Tablo1]![SiraNo])),1,0))=0));
18/09/2020, 14:26

hbal09

Tam istediğim gibi oldu, ama gerçekten çok karmasık bir sorgu gerektiriyormuş.
bu çıkan BOLUM sonuçlarını raporda bir metin kutusuna yan yana nasıl yazdırabilirim?
18/09/2020, 15:26

berduş

raporun nasıl hazırlanacağını bilmediğim için kesin bir şey öneremem
ama aşağıdaki kodu bir butona yazarsanız yan yana yazar
Dim SqlRs As String
Dim TrhDz As Variant

SqlRs = "SELECT BOLUM from SQLTekrarsiz"
Set rs = CurrentDb.OpenRecordset(SqlRs, dbOpenSnapshot)

rs.MoveLast
rs.MoveFirst

KytSay = rs.RecordCount
TrhDz = rs.GetRows(KytSay)

For x = 0 To KytSay - 1
    Metin0 = Metin0 & " " & TrhDz(0, x)
Next x
Metin0 = Trim(Metin0)
18/09/2020, 15:41

hbal09

Çok Teşekkür ederim, rapor yüklendiğinde olayına bu kodları eklediğimde istediğim metin kutusuna değerleri yan yana yazdırabiliyorum.
tekrar çok teşekkürler.
Sorunum çözülmüştür.
18/09/2020, 15:51

berduş

rica ederim)
iyi çalışmalar
Not isterseniz for x yerine dizideki tüm elemanları ekleyen aşağıdaki döngüyü de kullanabilirsiniz
For Each xEleman In TrhDz
Metin0 = Metin0 & " - " & xEleman
Next xEleman
1 2