makro ile eğer kodu düzenleme

yalovam77

Altın Üye
Altın Üye
Katılım
12 Temmuz 2006
Mesajlar
201
Excel Vers. ve Dili
Microsoft 365 / Türkçe
Altın Üyelik Bitiş Tarihi
04-05-2026
Merhabalar aşağıdaki kodlarda kırmızı ile olan kısım ayrı mavi ile olan kısım ayrı ayrı çalışıyor ikisini birleştirdim çalıştıramadım yardımcı olmanız mümkünmüdür ?


Sub Düğme54_Tıkla()
deg = [u7]
If deg = 1 Then
Range("z9:ak11").ClearContents
Range("z14:ak16").ClearContents
Else

If (Range("u7") <= 6) Then
Sayfa1.Cells(9, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("t11").Value
Sayfa1.Cells(10, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("u11").Value
Sayfa1.Cells(11, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("x11").Value
Sayfa1.Cells(14, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("t16").Value
Sayfa1.Cells(15, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("u16").Value
Sayfa1.Cells(16, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("x16").Value
Else
Sayfa1.Cells(9, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("v11").Value
Sayfa1.Cells(10, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("w11").Value
Sayfa1.Cells(11, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("x11").Value
Sayfa1.Cells(14, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("t16").Value
Sayfa1.Cells(15, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("u16").Value
Sayfa1.Cells(16, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("x16").Value

End If
Next
End If
End Sub
 

muratboz06

Destek Ekibi
Destek Ekibi
Katılım
23 Mart 2017
Mesajlar
568
Excel Vers. ve Dili
Office365 TR
U7 hücresindeki değerin kontrol durumu ne olacak? Biraz daha bilgi verir misiniz?
1 e eşitse,
6 dan küçük ve eşitse (birinci durumu da kapsıyor)
6 dan büyükse.
 
Katılım
12 Aralık 2015
Mesajlar
1,207
Excel Vers. ve Dili
Türkçe Ofis 2007
Denemedim ama if bloğu aşağıdaki gibi olsa gerek
if deg = 1 Then
Range("z9:ak11").ClearContents
Range("z14:ak16").ClearContents
ElseIf Range("u7") <= 6 and Range("u7") > 1 Then
Sayfa1.Cells(9, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("t11").Value
Sayfa1.Cells(10, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("u11").Value
Sayfa1.Cells(11, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("x11").Value
Sayfa1.Cells(14, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("t16").Value
Sayfa1.Cells(15, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("u16").Value
Sayfa1.Cells(16, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("x16").Value
Else
Sayfa1.Cells(9, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("v11").Value
Sayfa1.Cells(10, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("w11").Value
Sayfa1.Cells(11, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("x11").Value
Sayfa1.Cells(14, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("t16").Value
Sayfa1.Cells(15, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("u16").Value
Sayfa1.Cells(16, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("x16").Value
End If
 
Son düzenleme:

yalovam77

Altın Üye
Altın Üye
Katılım
12 Temmuz 2006
Mesajlar
201
Excel Vers. ve Dili
Microsoft 365 / Türkçe
Altın Üyelik Bitiş Tarihi
04-05-2026
Denemedim ama if bloğu aşağıdaki gibi olsa gerek
if deg = 1 Then
Range("z9:ak11").ClearContents
Range("z14:ak16").ClearContents
ElseIf (Range("u7") <= 6 Then
Sayfa1.Cells(9, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("t11").Value
Sayfa1.Cells(10, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("u11").Value
Sayfa1.Cells(11, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("x11").Value
Sayfa1.Cells(14, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("t16").Value
Sayfa1.Cells(15, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("u16").Value
Sayfa1.Cells(16, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("x16").Value
Else
Sayfa1.Cells(9, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("v11").Value
Sayfa1.Cells(10, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("w11").Value
Sayfa1.Cells(11, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("x11").Value
Sayfa1.Cells(14, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("t16").Value
Sayfa1.Cells(15, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("u16").Value
Sayfa1.Cells(16, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("x16").Value
End If
Block ıf widhout End ıf hatası verdi
 

yalovam77

Altın Üye
Altın Üye
Katılım
12 Temmuz 2006
Mesajlar
201
Excel Vers. ve Dili
Microsoft 365 / Türkçe
Altın Üyelik Bitiş Tarihi
04-05-2026
U7 hücresindeki değerin kontrol durumu ne olacak? Biraz daha bilgi verir misiniz?
1 e eşitse,
6 dan küçük ve eşitse (birinci durumu da kapsıyor)
6 dan büyükse.
birinci kkontrolde u7 değeri 1 ise belirtilen aralığı aralığı temizleyecek 1 den büyükse işlem yapmayacak
ikinci kontrolde u7 değeri 6 dan küçükse eşitse t11 deki değeri alacak 6 dan büyükse v11 deki değeri alacak
izah edebildimmi bilmiyorum
 
Katılım
12 Aralık 2015
Mesajlar
1,207
Excel Vers. ve Dili
Türkçe Ofis 2007
Yukardaki kodu Kodu değiştirdim tekrar deneyin.
 

yalovam77

Altın Üye
Altın Üye
Katılım
12 Temmuz 2006
Mesajlar
201
Excel Vers. ve Dili
Microsoft 365 / Türkçe
Altın Üyelik Bitiş Tarihi
04-05-2026
birinci kkontrolde u7 değeri 1 ise belirtilen aralığı aralığı temizleyecek 1 den büyükse işlem yapmayacak
ikinci kontrolde u7 değeri 6 dan küçükse eşitse t11 deki değeri alacak 6 dan büyükse v11 deki değeri alacak
izah edebildimmi bilmiyorum
Yukardaki kodu Kodu değiştirdim tekrar deneyin.
kod hata vermedi ancak 2 bölüm çalışıyor 1 bölüm temizleme yapmıyor
 

muratboz06

Destek Ekibi
Destek Ekibi
Katılım
23 Mart 2017
Mesajlar
568
Excel Vers. ve Dili
Office365 TR
Deneyiniz.
Kod:
Sub Düğme54_Tıkla()
deg = [u7]
If deg = 1 Then
Range("z9:ak11").ClearContents
Range("z14:ak16").ClearContents
end if
If (Range("u7") <= 6) Then
Sayfa1.Cells(9, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("t11").Value
Sayfa1.Cells(10, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("u11").Value
Sayfa1.Cells(11, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("x11").Value
Sayfa1.Cells(14, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("t16").Value
Sayfa1.Cells(15, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("u16").Value
Sayfa1.Cells(16, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("x16").Value
Else
Sayfa1.Cells(9, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("v11").Value
Sayfa1.Cells(10, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("w11").Value
Sayfa1.Cells(11, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("x11").Value
Sayfa1.Cells(14, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("t16").Value
Sayfa1.Cells(15, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("u16").Value
Sayfa1.Cells(16, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("x16").Value
End If
End Sub
 

yalovam77

Altın Üye
Altın Üye
Katılım
12 Temmuz 2006
Mesajlar
201
Excel Vers. ve Dili
Microsoft 365 / Türkçe
Altın Üyelik Bitiş Tarihi
04-05-2026
kod hata vermedi ancak 2 bölüm çalışıyor 1 bölüm ise belirtilen alanı tamizlemedi
şöyle bir açıklama yapayım biriken vergi matrahı gibi düşünün 12 ayda yıl sonu tekrar 1 aya döndüğünde tabloyu temizliyor ve yeniden kayıt yapmaya başlıyor gibi düşünün
 

yalovam77

Altın Üye
Altın Üye
Katılım
12 Temmuz 2006
Mesajlar
201
Excel Vers. ve Dili
Microsoft 365 / Türkçe
Altın Üyelik Bitiş Tarihi
04-05-2026
Deneyiniz.
Kod:
Sub Düğme54_Tıkla()
deg = [u7]
If deg = 1 Then
Range("z9:ak11").ClearContents
Range("z14:ak16").ClearContents
end if
If (Range("u7") <= 6) Then
Sayfa1.Cells(9, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("t11").Value
Sayfa1.Cells(10, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("u11").Value
Sayfa1.Cells(11, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("x11").Value
Sayfa1.Cells(14, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("t16").Value
Sayfa1.Cells(15, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("u16").Value
Sayfa1.Cells(16, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("x16").Value
Else
Sayfa1.Cells(9, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("v11").Value
Sayfa1.Cells(10, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("w11").Value
Sayfa1.Cells(11, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("x11").Value
Sayfa1.Cells(14, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("t16").Value
Sayfa1.Cells(15, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("u16").Value
Sayfa1.Cells(16, Sayfa1.Range("u7") + 25).Value = Sayfa1.Range("x16").Value
End If
End Sub
teşekkür ederim elinize sağlık oldu
 
Katılım
12 Aralık 2015
Mesajlar
1,207
Excel Vers. ve Dili
Türkçe Ofis 2007
Sayın muratboz06
If (Range("u7") <= 6) Then satırı
If Range("u7") <= 6 and Range("u7") > 1 Then
şeklinde olsa gerek
 
Üst