• DİKKAT !

    Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak Dosya Yükleme tamamen ücretsizdir.

Çözüldü Id numarası değişmeden döngü ile Taksit sayısı kadar satır ekleyerek sayfaya kaydetme.

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

OğuzTürkyılmaz

Yeni Üye
Katılım
12 Eyl 2021
Mesajlar
263
Çözümler
1
Aldığı beğeni
31
Excel V
Office 365 TR
Konu Sahibi
Merhabalar Herkese sağlıklı günler dilerim.
Dosyada userform.PoliceKaydet formunda bilgileri doldurduktan sonra taksit oluştur dediğimde istenen taksit sayısı kadar bilgi form üstündeki ilgili textboxlara yazdırılıyor. Kaydetme tuşuna bastığımda 1 taksid seçtiğimde kayıt gerçekleşiyor fakat taksit sayısını arttırdığımda taksid sayısı kadar kaydı döngü ile oluşturarak satırlara kaydetmek için döngüyü nasıl kodlamalıyım, işin içinden çıkamadım. Resimlerde Kayıt formundaki bilgilere göre kayıt yapıldığında sayfadaki satırlarda nasıl bir sonuç gerçekleşmesi gerekiyor anlatmaya çalıştım. Yardımlarınız için şimdiden teşekkür ederim. Screenshot_2.png
HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.
 
Çözüm
aşağıdaki kodlar ilk 15 sütun için diğerlerini kendiniz uyarlarsınız
bende textbox*1 dönüşümü, metin kutusu boşken hata verdi o nedenle sayısal alanlarda Val(TextBox_.Value) * 1 kodunu kullandım
tarihlerde sorun çıkarmıyordu o nedenle format komutlarını kullanmadım
Not: kod yenden düzenlenip
newRow = .Cells(.Rows.Count, 1).End(xlUp).row
If Len(.Cells(newRow, 1) & "") > 0 Then newRow = newRow + 1
satırları eklenmiştir
HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.
Konu Sahibi
cdbl değer girilmediğinde hata veriyor diye biliyorum
Textboxların default değerlerini Özellikler menüsünden 0,00 yaptım. Cdbl olarak sayıları aldım. Kulağı tersten göstererek Sorunsuz olarak istediğim gibi kaydedebildim Halil Hocam. Eğer silmediyseniz son yüklediğim dosyada sayfada hiç veri yokken 3.satırı boş bırakıp tabloya yazmıyor 4.satırdan itibaren kayıtları tablonun dışından başlatıyor. Hiç kayıtlı Veri yokken satır boşken neden bunu yapıyor tablo olarak gözüktüğü için yapıyor da çaresi var mı 3 satırdan itibaren kaydetmeye başlamasının. Son çare başlangıçta 3. satıra bir veri giriyorum sonraki kayıtlarım 4 satırdan itibaren tabloya yazılıyor.
 
Abey dosyayı incelemedim ama Tablo ise find ile son satır numara bulunursa bence dediğiniz olur.
Bu kodu bulunca eklerim kafadan yazmak zor bazı parametrelerini.
 
Alttaki kodu bir çalıştırın doğru sonuç verecekmi.Önceki tecrübelerimden çalışır diye biliyorum.Tabii cells önüne sayfa isminid3 ekleyin ben kopyala yapıştır yaptım bir forumdan bulup.

MsgBox Cells.Find("*", , , , xlByRows, xlPrevious).Row
 
Birde o sayfada hiçbir veri yoksa yani tamamen boşsa hata vermesi gerek bunun için şartlar yazılabilr .
 
Konu Sahibi
Alttaki kodu bir çalıştırın doğru sonuç verecekmi.Önceki tecrübelerimden çalışır diye biliyorum.Tabii cells önüne sayfa isminid3 ekleyin ben kopyala yapıştır yaptım bir forumdan bulup.

MsgBox Cells.Find("*", , , , xlByRows, xlPrevious).Row
HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.

Ortada tablo bırakmadı Refaz hocam :) Çalıştı ama kayıtları tablonun içine yazamadı tablo ortadan kalktı 3 no lu satırdan başlayarak sayfaya yazdı. Tabloyu uçurdu .:)
 
Konu Sahibi
Birde o sayfada hiçbir veri yoksa yani tamamen boşsa hata vermesi gerek bunun için şartlar yazılabilr .
1 ve 2 satırlar dolu 1 üst başlık 2 tabloya çevrilen satırın filtrelenmiş sütun sayıları içeren hali o satırı gizliyorum normalde. Tablonun ilk ve son boş satırı 3. satır.
 
Dosyayı inceledim newRow = .Cells.Find("*", , , , xlByRows, xlPrevious).row ile kod tablo boşsa 22 inci satırı son satır olarak buluyor bir bakayım ne varmış orda ayrıca tablonun 2.sütununu gizlemenize gerek yok isimlerini değiştirebilirsiniz yada tablo tasarımdan üst bilgi satırın işaretini kaldırabilirsiniz.
 
aklıma gelmişken kaydı eklemeden önce taksitlendir düğmesine basılmamışsa taksit hesaplanmadan aktarılabilir o nedenle koda önce taksitlendirme düğmesini çalıştıracak kod da eklenmeli
 
Konu Sahibi
Sayın abeyim sonuna neden +1 eklemedin :)
Halil hocam da uyardı o konuda şöyle oldu +1 var dı fakat denemeler yaparken 3 satırı boş geçip 4 satırdan başlayınca sayfaya yazmaya bende +1 kaldırıp bir deneyeyim dedim evet bu sefer 3 satırdan başladı ama bir sonraki sayfaya kaydetme işleminde +1 olmadığı için son dolu satırın üzerine yazdı ilk veriyi. Unutmuşum kaldırmayı.
 
Benin yazdığım tablo dı ve sizin yazdığınız tablo adı aynı mı?
Kodu sadece kopyalayıp yapıştırın
 
Durum
Konu Çözümlendiği İçin Kapatılmıştır.
Geri
Üst