Skip to main content

AccessTr.neT


Kayıtların Form Üzerine Dağıtılması

Kayıtların Form Üzerine Dağıtılması

Çözüldü #1
örnekteki dosyada bulunan veriler sürekli form veya herhangi bir formda
yatay ve dikey olarak verilerin dağıtılmasını istiyorum

sistem sadece alt alta veya aynı hücrede verileri döndürmektedir..
.rar Form.rar (Dosya Boyutu: 1,52 MB | İndirme Sayısı: 12)
Dünya düşünenler için bir komedi, Hissedenler için bir trajedidir ***
Hugh WALPOLE
Son Düzenleme: 28/01/2025, 23:23, Düzenleyen: karaayhan.
Cevapla
#2
Kendi formlarımda buna benzer bir uygulamam var. Alt form kullanarak yada ilişiksiz metin kutusu oluşturup Vba ile verileri çağrılarak bu istediğiniz yapılabilir. 
Ancak;
Tablonuzda 12 kayıt var, oluşturduğunuz formda 9 bölüm var. 
1- Tablodan hangi satırdaki verinin gelmesini planlıyorsunuz. İlk 9, son 9 yada farklı kombinasyon. Hangisi nereye gelecek ?
2- Tablodan yalnızca ürün adı mı aktarılacak? Satırdaki diğer sütun verileriyle ilgili bir işlem yapılacak mı ?
3- "Tablodaki tüm verilerin mavi kutulara dağılmasını istiyorum" şeklinde yazmışsınız, tablodaki 12 veri artacak mı? örneğin 25 olduğunda formdaki kutular buna göre artış gösterecek mi ve form uzayacak mı?

Tam olarak istenen şeyler net olarak belirtilirse belki benim önerilerim, belki uzmanların daha pratik önerileri sayesinde çözüme kavuşabilirsiniz.
Cevapla
#3
şu şekilde çözüm önerisi sunabilirim, Formunuza kaç tane kayıt gelecekse o kadar textbox yerleştirin (siz kutu yerleştirmişsiniz)
daha sonra formun Current olayına aşağıdaki kodu yazın.
Private Sub Form_Current()
Dim rs As DAO.Recordset
Dim i As Integer
Dim ctlr As Control

Set rs = CurrentDb.OpenRecordset("tbl_urun")
For Each ctlr In Me.Controls
If TypeOf ctlr Is TextBox Then
For i = 0 To ctlr.Controls.Count
On Error Resume Next
ctlr.Value = rs!urunadi
rs.MoveNext
Next i
End If
Next

End Sub

eğer yukarıdan aşağı sıralamak isterseniz MoveNext, MovePrevious komutlarıyla ayarlamalar yapın.
 İyi olan tek şey bilgi ve kötü olan tek şey de cehalettir. (Sokrates)
Cevapla
#4
(29/01/2025, 11:02)onur_can yazdı: şu şekilde çözüm önerisi sunabilirim, Formunuza kaç tane kayıt gelecekse o kadar textbox yerleştirin (siz kutu yerleştirmişsiniz)
daha sonra formun Current olayına aşağıdaki kodu yazın.
Private Sub Form_Current()
Dim rs As DAO.Recordset
Dim i As Integer
Dim ctlr As Control

Set rs = CurrentDb.OpenRecordset("tbl_urun")
For Each ctlr In Me.Controls
If TypeOf ctlr Is TextBox Then
For i = 0 To ctlr.Controls.Count
On Error Resume Next
ctlr.Value = rs!urunadi
rs.MoveNext
Next i
End If
Next

End Sub

eğer yukarıdan aşağı sıralamak isterseniz MoveNext, MovePrevious komutlarıyla ayarlamalar yapın.



kodlar olmadı ya da ben eksik yaptım kodlarınızın uygulanmış hali ve ne aynı dosyada oluşturduğum rapor önizle
tam olarak ne yapmak istediğimi anlatıyor..

kayıt sayısı belirsiz elbette buradaki örnek sadece 50 olur 100 olur konu örnekteki rapor nasıl üç sütun halinde ise bu da öyle olsun istiyorum..
Dünya düşünenler için bir komedi, Hissedenler için bir trajedidir ***
Hugh WALPOLE
Son Düzenleme: 01/02/2025, 00:34, Düzenleyen: karaayhan.
Cevapla
#5
sadece 3 sütun yeterli mi?
Cevapla
#6
yeterli olur hocam
Dünya düşünenler için bir komedi, Hissedenler için bir trajedidir ***
Hugh WALPOLE
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da
Task