• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Ay değiştiğinde a ve bsütunundaki verileri değiştirme

vuranoğlu

Altın Üye
Katılım
18 Nisan 2008
Mesajlar
260
Excel Vers. ve Dili
excel 2016 tr
Tablodaki ay ve yıllar değiştiğinde a ve b sütunundaki günleri makro ile nasıl düzenleyebiliriz.?
 

Ekli dosyalar

Sayfanızın kod alanına kodu kopyalayıp deneyiniz.

Kod:
Sub tarih()
ay = Val(Format("1." & UCase(Replace(Replace([B3], "I", "ı"), "İ", "i")), "m"))
yil = [C3]
gün = Day(DateSerial(yil, ay + 1, 1 - 1))
[A7:B37].ClearContents
For i = 1 To gün
Cells(i + 6, 1) = i
Cells(i + 6, 2) = Format(DateSerial(yil, ay, i), "dddd")
Next i
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(0, 0) = "B3" Then tarih
If Target.Address(0, 0) = "C3" Then tarih
End Sub
 
Yalnız hafta sonlarını ( cumartesi pazar )yazdıra bilirmiyiz?
 
Diğer günler yazdırılacak mı? yoksa boş mu gelecek.
 
Kod 1

Kod:
Sub tarih()
ay = Val(Format("1." & UCase(Replace(Replace([B3], "I", "ı"), "İ", "i")), "m"))
yil = [C3]
gün = Day(DateSerial(yil, ay + 1, 1 - 1))
[A7:B37].ClearContents
say = 7
For i = 1 To gün
    trh = DateSerial(yil, ay, i)
    If Weekday(trh) = 7 Or Weekday(trh) = 1 Then
        Cells(say, 1) = i
        Cells(say, 2) = Format(trh, "dddd")
    say = say + 1
    End If
Next i
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address(0, 0) = "B3" Then tarih
    If Target.Address(0, 0) = "C3" Then tarih
End Sub

Kod 2

Kod:
Sub tarih()
ay = Val(Format("1." & UCase(Replace(Replace([B3], "I", "ı"), "İ", "i")), "m"))
yil = [C3]
gün = Day(DateSerial(yil, ay + 1, 1 - 1))
[A7:B37].ClearContents
For i = 1 To gün
    trh = DateSerial(yil, ay, i)
    Cells(i + 6, 1) = i
    If Weekday(trh) = 7 Or Weekday(trh) = 1 Then
        Cells(i + 6, 2) = Format(trh, "dddd")
    End If
Next i
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address(0, 0) = "B3" Then tarih
    If Target.Address(0, 0) = "C3" Then tarih
End Sub
 
Teşekkürler
 
Geri
Üst