Hücre doluysa

muratgunay48

Altın Üye
Katılım
10 Şubat 2010
Mesajlar
737
Excel Vers. ve Dili
Office Professional Plus 2016
Arkadaşlar, sayın hocalarım,
Şöyle ki, A1 boş bir hücre B1 de boş bir hücre.
A1'e bir değer girdiğim zaman B1'de tarih belirecek. Tarih değişmeyecek değer girdiğim tarih olacak orada. Ancak A1'e yeni bir değer girersem B1'deki tarih yeniden değişecek.
Bunu nasıl yapabilirim.
Şimdiden teşekkür ederim.
Saygılarımla.
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,020
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Forumda benzer birçok konu bulabilirsiniz :

 

muratgunay48

Altın Üye
Katılım
10 Şubat 2010
Mesajlar
737
Excel Vers. ve Dili
Office Professional Plus 2016
Forumda benzer birçok konu bulabilirsiniz :

Hocam, forumda buldum ama hepsi yanındaki hücreye gibi. Bana lazım olan, ben A1'e yazarsam B8'e gibi. Ben değiştireceğim. Hatta icabında başka sayfadaki hücreye atacak.
Saygılarımla.
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,020
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Siz de ilk mesajda A1'e yazınca B1'e yani hemen yanındakine tarih atmasını istemiştiniz.

Ayrıca nereye olduğu önemli değil. Önemli olan işin mantığını anlamanız. Verdiğim linkteki ilk cevapta hemen yan hücreye yani B sütununa tarih atma kodu verilmiş. Ordaki offset değerini değiştirirseniz ona göre işlem yapar.

Örneğin offsrt(0,5) yaptığınızda 5 sütun sağa tarih atar.

Target.offset(0,1) yerine [B5] derseniz B5'e, Sheets("Sayfa2").[A5] derseniz sayfa2'nin A5 hücresine tarih atar.

Siz ne istediğinizi tam olarak belirtirseniz çözüm de ona göre bulunur. İlk mesajımda da tam bir olarak sizin ilk mesajınızın çözümü vardı.
 

muratgunay48

Altın Üye
Katılım
10 Şubat 2010
Mesajlar
737
Excel Vers. ve Dili
Office Professional Plus 2016
Siz de ilk mesajda A1'e yazınca B1'e yani hemen yanındakine tarih atmasını istemiştiniz.

Ayrıca nereye olduğu önemli değil. Önemli olan işin mantığını anlamanız. Verdiğim linkteki ilk cevapta hemen yan hücreye yani B sütununa tarih atma kodu verilmiş. Ordaki offset değerini değiştirirseniz ona göre işlem yapar.

Örneğin offsrt(0,5) yaptığınızda 5 sütun sağa tarih atar.

Target.offset(0,1) yerine [B5] derseniz B5'e, Sheets("Sayfa2").[A5] derseniz sayfa2'nin A5 hücresine tarih atar.

Siz ne istediğinizi tam olarak belirtirseniz çözüm de ona göre bulunur. İlk mesajımda da tam bir olarak sizin ilk mesajınızın çözümü vardı.
Çok teşekkür ederim hocam. Tam anlatamadıysam mazur görün lütfen. İlginize teşekkür ederim.
Saygılarımla.
 

muratgunay48

Altın Üye
Katılım
10 Şubat 2010
Mesajlar
737
Excel Vers. ve Dili
Office Professional Plus 2016
@YUSUF44 hocam, öncelikle çok teşekkür ederim. Kısmen oldu sayenizde. Ama şöyle ben Sayfa1 A1 hücresine yazdım, Sayfa2 A1 hücresinin yanına nasıl yazdırabilirim.
Şu şekilde yazdım
Sheets("Sayfa2")Target.Offset(0, 1) = Now
Yanlış nerede
Teşekkür ederim.
 

Korhan Ayhan

Moderatör
Yönetici
Katılım
15 Mart 2005
Mesajlar
36,419
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Ofis 2016 Tr-En 32 Bit
TARGET ifadesi aktif sayfada geçerlidir. Bunun yerine aşağıdaki gibi kullanabilirsiniz. Örnekler çoğaltılabilir.

Sheets("Sayfa2").Cells(Target.Row, "B") = Now
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,020
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
@Korhan Ayhan üstadım Target'le row arasında yanlışlıkla virgül kalmış.
 

Korhan Ayhan

Moderatör
Yönetici
Katılım
15 Mart 2005
Mesajlar
36,419
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Ofis 2016 Tr-En 32 Bit
Yaşlanıyoruz artık sanırım...
 

muratgunay48

Altın Üye
Katılım
10 Şubat 2010
Mesajlar
737
Excel Vers. ve Dili
Office Professional Plus 2016
Hocam ne yaptıysam olmadı.
Dosya ekte. A1'e yazarsam Sayfa2 B2'ye (yani yanına)
A8'e yazarsam Sayfa2 B9'a (yani yanına)
nasıl yapabilirim.
Teşekkür ederim
 

Ekli dosyalar

Korhan Ayhan

Moderatör
Yönetici
Katılım
15 Mart 2005
Mesajlar
36,419
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Ofis 2016 Tr-En 32 Bit
Deneyiniz.

C++:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [A:A]) Is Nothing Then Exit Sub
Sheets("Sayfa2").Cells(Target.Row + 1, "B") = Now
End Sub
 

muratgunay48

Altın Üye
Katılım
10 Şubat 2010
Mesajlar
737
Excel Vers. ve Dili
Office Professional Plus 2016
Deneyiniz.

C++:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [A:A]) Is Nothing Then Exit Sub
Sheets("Sayfa2").Cells(Target.Row + 1, "B") = Now
End Sub
Hocam çok teşekkür ederim. Sürekli sayfa değiştirmekten kurtuldum. Var olun.
@YUSUF44 Size de çok teşekkür ederim.
İyi ki varsınız.
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,020
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Aman Korhan üstadım, geçenlerde birine "yaşı sorun etmeyin" temalı bir cevap vermiştim de demediğini bırakmadı. O konuya artık girmiyorum ;)

Sayın @muratgunay48 , fark ettiniz mi bilmiyorum ; önce bir şey istiyorsunuz, ona göre cevap veriliyor ama aslında başka bir şey istediğinizi söylüyorsunuz.

Biz Sizin dosyanızda asıl ihtiyaç duyduğunuzun ne olduğunu bilemeyiz. Ne sorduysanız ona göre cevap vermeye çalışırız. Sizin gibi farklı bir şey isteyip de kendisi uyarlamaya çalışanlar maalesef genellikle bunu yapamıyorlar. Uyarlayabilmek için formüllerin ve kodların mantığını ve dizilimini iyi bilmek ve anlamak gerekiyor.

Kısacası burda soru sorarken tam olarak istediğiniz neyse onu sorun ki çözüme ulaşmanız hızlı ve kolay olsun.
 

muratgunay48

Altın Üye
Katılım
10 Şubat 2010
Mesajlar
737
Excel Vers. ve Dili
Office Professional Plus 2016
Aman Korhan üstadım, geçenlerde birine "yaşı sorun etmeyin" temalı bir cevap vermiştim de demediğini bırakmadı. O konuya artık girmiyorum ;)

Sayın @muratgunay48 , fark ettiniz mi bilmiyorum ; önce bir şey istiyorsunuz, ona göre cevap veriliyor ama aslında başka bir şey istediğinizi söylüyorsunuz.

Biz Sizin dosyanızda asıl ihtiyaç duyduğunuzun ne olduğunu bilemeyiz. Ne sorduysanız ona göre cevap vermeye çalışırız. Sizin gibi farklı bir şey isteyip de kendisi uyarlamaya çalışanlar maalesef genellikle bunu yapamıyorlar. Uyarlayabilmek için formüllerin ve kodların mantığını ve dizilimini iyi bilmek ve anlamak gerekiyor.

Kısacası burda soru sorarken tam olarak istediğiniz neyse onu sorun ki çözüme ulaşmanız hızlı ve kolay olsun.
Kusura bakmayın hocam. Bazen tam ifade edemediğimiz oluyor. Mazur görün. İlgi ve alakanıza teşekkür ederim. Tekrar teşekkür ederim.
 
Üst