Tarih Formatı hakkında yardım.

Katılım
5 Mart 2010
Mesajlar
294
Beğeniler
1
Excel Vers. ve Dili
Microsoft Office 2010
#1
Merhabalar,

A sütununda hangi hücreye yazarsak yazalım,

01022018 yazıp enter'a bastığımda, otomatik olarak - 01/02/2018 yapmasını istiyorum.
Kodlama ile nasıl yapılabilir.

Not: Formül çubuğundaki veri 01/02/2018 olarak görünmeli. ( Hücre biçimledir, tarih biçimlendirme gibi cevaplar işimi görmüyor)
Saygılar.
 

spacebar

Altın Üye
Altın Üye
Katılım
2 Temmuz 2009
Mesajlar
241
Beğeniler
6
Excel Vers. ve Dili
office 2007 türkçe
#2
merhaba. bu formül işini görürmü acaba:
=BİRLEŞTİR(PARÇAAL(H23;1;2);("/");PARÇAAL(H23;3;2);("/");PARÇAAL(H23;5;4))
 

muygun

Özel Üye
Katılım
6 Temmuz 2004
Mesajlar
7,765
Beğeniler
213
Excel Vers. ve Dili
Excel-2003 Türkçe
#3
Merhaba;

sayfanın kod bölümüne;

Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
sat = Target.Row
süt = Target.Column
deger = Cells(sat, süt).Text
If süt = 1 Then

If Len(deger) >= 1 And Len(deger) <= 2 Then
If Left(deger, 2) * 1 <= 31 Then
Ay = Month(Date)
yıl = Year(Date)
Target = Format(Target & "/" & Ay & "/" & yıl, "dd.mm.yyyy")
End If
End If

If Len(deger) = 4 Then
If Left(deger, 2) * 1 <= 31 And Right(deger, 2) * 1 <= 12 Then
yıl = Year(Date)
Cells(ActiveCell.Row, ActiveCell.Column).Value = Left(deger, 2) & "/" & Right(deger, 2) & "/" & yıl
End If
End If

If Len(deger) = 8 Then
If Left(deger, 2) * 1 <= 31 And Mid(deger, 3, 2) * 1 <= 12 Then
Cells(ActiveCell.Row, ActiveCell.Column).Value = Left(deger, 2) & "/" & Mid(deger, 3, 2) & "/" & Right(deger, 4)
End If
End If

End If
End Sub

Kodlarını yerleştirin.
A sütununu metin olarak biçimlendirin.

A sütununda 01-31 aralığında bir rakam girerseniz (1 yada 2 karakter) Bunu gün olarak alır ve sistem tarihinden ay ve yılı ekleyerek yazar.
A sütununda 01-31 aralığında gün ve 01-12 aralığında ay girerseniz (4 karakter) gün ve ay kısmını alır sitemden de yılı alarak tarih yazar.
A sütununda 01-31 aralığında gün ve 01-12 aralığında ay ve yıl girerseniz tarih yazar.
İyi çalışmalar.
 

Ekli dosyalar

Katılım
5 Mart 2010
Mesajlar
294
Beğeniler
1
Excel Vers. ve Dili
Microsoft Office 2010
#4
If Len(deger) = 4 Then
If Left(deger, 2) * 1 <= 31 And Right(deger, 2) * 1 <= 12 Then
yıl = Year(Date)
Cells(ActiveCell.Row, ActiveCell.Column).Value = Left(deger, 2) & "/" & Right(deger, 2) & "/" & yıl
End If
End If
İ
çalışmanız çok güzel, teşekkür ederim.
Yalnız girişi yaptığım hücrenin altına tarihi yazıyor. Ben girişi yaptığım hücrenin değişmesini istiyorum. Bir altındaki hücreye atmasın tarihi..

örneğin A10'a 0505 yazıp enterladığımda, A10 içinde 05/05/2018 yazsın istiyorum..
 
Katılım
5 Mart 2010
Mesajlar
294
Beğeniler
1
Excel Vers. ve Dili
Microsoft Office 2010
#5
If Len(deger) = 4 Then
If Left(deger, 2) * 1 <= 31 And Right(deger, 2) * 1 <= 12 Then
yıl = Year(Date)
Cells(ActiveCell.Row - 1, ActiveCell.Column).Value = Left(deger, 2) & "/" & Right(deger, 2) & "/" & yıl
End If
End If


Çözdüm..
kırmızı ile işaretlediğim şekilde yapınca istediğim gibi oldu. Teşekkür ederim.
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
7,442
Beğeniler
673
Excel Vers. ve Dili
32 Bit 2010 - İngilizce
#6
Orjinal kodda 2 yerde geçen;

Cells(ActiveCell.Row, ActiveCell.Column)

yerine; Target yazarsanız o da olur ....

.
 
Katılım
5 Mart 2010
Mesajlar
294
Beğeniler
1
Excel Vers. ve Dili
Microsoft Office 2010
#7
Hücreye sadece 05 falan yazdığımda tarih formatını 05.05.2018 olarak getiriyor.
Fakat 05/05/2018 olarak yapması gerekmez mi? o kısımda bir sıkıntı var sanırım ?
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
7,442
Beğeniler
673
Excel Vers. ve Dili
32 Bit 2010 - İngilizce
#8
Koddaki 1. IF bloğunda yer alan aşağıdaki satırı;

Kod:
Target = Format(Target & "/" & Ay & "/" & yıl, "dd.mm.yyyy")

bununla değiştirin;

Kod:
Target = Target & "/" & Ay & "/" & yıl
.
 

muygun

Özel Üye
Katılım
6 Temmuz 2004
Mesajlar
7,765
Beğeniler
213
Excel Vers. ve Dili
Excel-2003 Türkçe
#9
Geciktim...
Gerekli düzeltmeler syn. Haluk ve syn. chngrcn tarafından yapılmış.
 
Katılım
14 Kasım 2016
Mesajlar
110
Beğeniler
0
Excel Vers. ve Dili
2016
#10
Peki Userformda textbox içine yazdığımız mesela 11.02.2019 tarihini ilgili hücreye yazdırırken 11 Şubat 2019 Pazartesi şeklinde yazması için nasıl bir yol izlemeliyiz?

(Hücrede biçimlendirme yapsam dahi, textbox içine yazdığım şekilde 11.02.2019 olarak kaydediyor. Hücre biçimlendirmesi işe yaramıyor.)
 

muygun

Özel Üye
Katılım
6 Temmuz 2004
Mesajlar
7,765
Beğeniler
213
Excel Vers. ve Dili
Excel-2003 Türkçe
#11
Merhaba;
Kaydet butonu için;
Cells(sonsatir, 1) = Format(TextBox1, "dd.mmmm.yyyy") & " " & Format(TextBox1, "dddd")

Şeklinde olabilir.
İyi çalışmalar.
 
Üst