Skip to main content

AccessTr.neT


Excelde İki Satır Arasına Vba İle Kayıt Ekleme

Excelde İki Satır Arasına Vba İle Kayıt Ekleme

#13
orijinal ve düzenlemeler yapılmış çalışma ektedir
.rar Çalışma orjinal.rar (Dosya Boyutu: 97,7 KB | İndirme Sayısı: 1)
hnakis, 15-10-2009 tarihinden beri AccessTr.neT üyesidir.
Cevapla
#14
Yeni konu açmanız gerekmektedir.
Cevapla
#15
Bir bekleyin dosyanızı kısaltacağım yani her sayfaChange kodlarını aynı yazmaya gerek olmayacak.Bitince ekleyeyim ona göre yeni konu açarsınız.
Bir modül içine alacağım kodları.
Cevapla
#16
Dikkat etmeniz gerekenler.
change_calculate_Modul bu modüle ekledim diğer kodları ve değişiklik yapacaksanız sadece ordan yapacaksınız.

Kimya sayfası son sütun no kod ile otmatik bulundu ve eklendi.
Reçete sayfası b ve D son satır no otomatik bulunup eklendi B sütununda SU yazmak zorunda buna göre buldurdum.
Reçete sayfası son sütun no otomatik bulundu ve Reçete sayfası 2.satırda Fiyat yazmak zorunda buna göre buldurdum sonradan eklemişsiniz bunu ve fiyatın solunda rakam var.

Kısaca teferruatlıca test edein ve bu dosyaya göre yeni konu açın önceki dosyada her sayfa kodunda aynı kod olduğu için bir değişiklikte 200 sayfa varsa hepsinden değiştirmek zorunda kalacaktınız.

Alttaki kodlar sayfa kodları ve bunlarla işiniz olmayacak.Esasen her sayfa koduna bunlarıda yazmadan boş bırakıp Private Sub Workbook_SheetCalculate(ByVal Sh As Object) ve Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) kodları içine alınıp tek burdan işlem yapılabilinirdi ama şartlar koymak gerekecekti uygulamadım.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    ' Eðer B4:B18 arasýnda bir deðiþiklik yapýldýysa
    If hucreTargetB = "" Then sonSatirRecelerBveDSutunNo ActiveSheet
    If hucreTargetD = "" Then sonSatirRecelerBveDSutunNo ActiveSheet
    
    If Not Intersect(Target, Range(hucreTargetB)) Is Nothing Then change_sayfa_B_Sutun ActiveSheet
    If Not Intersect(Target, Range(hucreTargetD)) Is Nothing Then change_sayfa_D_Sutun ActiveSheet
    If Not Intersect(Target, Range(hucreTargetG2)) Is Nothing Then change_sayfa_G2 ActiveSheet
End Sub

Private Sub Worksheet_Calculate()
    CalculateHesapla ActiveSheet
End Sub

.zip Çalışma orjinal.zip (Dosya Boyutu: 99,92 KB | İndirme Sayısı: 1)
Cevapla
#17
Son olarak şunu yazayım ve konuyun kapatayım.
Eğer 3 sayfanız(Kimya,Fiyat,SayfaListeleri) sabit olacak ve diğerleri hep reçete sayfası olacak ve aynı formatta olacaksa resimdeki gibi kod Bu çalışma kitabı konuna yazılıp reçete sayfalarına kodlar yazılmazdıç.Dosyayı inceleyebilirsiniz.
Yada reçete sayfa adları Reçete ile başlıyorsa koda onda göre şart eklenebilinirdi.Tercih sizin kolay gelsin.



[Resim: do.php?img=15488]
.zip Çalışma orjinal(Tek kok ile).zip (Dosya Boyutu: 99,62 KB | İndirme Sayısı: 2)
Cevapla
#18
(26/11/2023, 19:40)feraz yazdı: Son olarak şunu yazayım ve konuyun kapatayım.
Eğer 3 sayfanız(Kimya,Fiyat,SayfaListeleri) sabit olacak ve diğerleri hep reçete sayfası olacak ve aynı formatta olacaksa resimdeki gibi kod Bu çalışma kitabı konuna yazılıp reçete sayfalarına kodlar yazılmazdıç.Dosyayı inceleyebilirsiniz.
Yada reçete sayfa adları Reçete ile başlıyorsa koda onda göre şart eklenebilinirdi.Tercih sizin kolay gelsin.



[Resim: do.php?img=15488]

teşekkürler sayın feraz. bu çalışma daha mantıklı. Kimya, Fiyat, SayfaListeleri sabit sayfalar olacağı için öneriniz çok iyi. çalışmayı ve kodları (Anladığım kadarıyla) inceledikten sonra eksik vs ile ilgili yeni konu açıp soracağım.

emeğinize sağlık.
saygılar
hnakis, 15-10-2009 tarihinden beri AccessTr.neT üyesidir.
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da
Task