• DİKKAT

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

A sütununa yılları yazdırma

Katılım
23 Şubat 2007
Mesajlar
1,212
Excel Vers. ve Dili
Excel2003
Selamlar,
Ekteki dosyada Sayfa1 G1 hücresinde bir tarih var. Bu tarihi 1 er yıl artırarak
a2 hücresinden itibaren A sütununa yazdırmak istiyorum. Artırılan değer 1993 ü geçtikten sonra veriyi G2 den (mevcut verilrdeki G2 deki değer zaten G1 den fazla) alması gerekiyor. Döngü bu seneki en büyük değere ulaşınca son bulacak.
Saygılar, Sevgiler.
 

Ekli dosyalar

Merhaba,

Sorunuzla ilgileneyim dedim ama pek bir şey anlamadım.
G1 daki tarihi birer yıl arttırmakta sorun yok, 1 yıl arttırıp A2 den itibaren yazdırılacak.
Hadi 1993 ü de anladım 1993 ü geçince Arttırma işlemi G2 den alınacak diyorsunuz ama G2 boş.

Sonra döngü bu seneki en büyük değerden büyük olana kadar diyorsunuz yıl arttırırak gittiğinize göre bu seneki en büyük değer nedir?
 
Merhaba Necdet Hocam,
G2 genelde değişmiyor. Şu anlama geliyor. İşe başlama ücretsiz izin kullanınca ileri bir tarihe sarkmış oluyor. G1 deki tarih ile arasında birkaç haftaya kadar fark edebiliyor. Bu da 1993 te alınan bir kararla işleme kondu. Bu sebeple mesela 10 gün G1 den sonra diyelim.
 
Selamlar,
Arkadaşlar bir türlü olmadı.
C3 hücresinde yazılı tarihi A6 dan itibaren A sütununa 1 er yıl artırarak bu yılki tarihe kadar yazdıramadım.
 
Arkadaşlar şöyle yaptım.
Private Sub CommandButton1_Click()
For i = 6 To 30
s = s + 1
If DateSerial(Year(Range("c3")) + s, Month(Range("c3")), Day(Range("c3"))) < Date Then
Cells(i, "a").NumberFormat = "dd.mm.yyyy"
Cells(i, "a") = DateSerial(Year(Range("c3")) + s, Month(Range("c3")), Day(Range("c3")))
End If
Next
End Sub
 
If DateSerial(Year(Range("c3")) + s, Month(Range("c3")), Day(Range("c3"))) < DateSerial(Year(2003), Month(Range("c3")), Day(Range("c3"))) Then
Kod şöyle yazdığımda hata veriyor.
Bu hata neden kaynaklanır.
 
Merhaba:
Yukarıda yazdığınız "Year(2003)" içindeki "2003"; XL 1900 tarih sistemine göre yıla çevrilirken "1905" e denk gelir.
Eğer bu şekilde sayı yazacaksanız 2003 yerine "Year(37622)" olabilir.



Veya aşağıdaki şekilde yapabilrsiniz.
Kod:
 If DateSerial(Year(Range("c3")) + s, Month(Range("c3")), Day(Range("c3"))) <  _
DateSerial(2003, Month(Range("c3")), Day(Range("c3"))) Then
 
Son düzenleme:
Merhaba Sn.Husgvarna,
Teşekkür ederim.
 
Geri
Üst