Aynı Satırdaki başka hücreye değer aktarma

Katılım
5 Şubat 2008
Mesajlar
8
Excel Vers. ve Dili
c
Merhabalar,

A1 ve B1 hücrelerideki rakamların çarpım sonucunu , aynı satırda C1 hücresinde yazdığım sayı kadar ilerideki kolona atayan bir yönteme ihtiyacım var.
Yani C1 hücresine 2 yazarsam sonucu E1 e yazsın,4 yazarsam sonucu G1e yazılması gerekli.
Böylece oluşan sonuçlara göre bir matris oluşturacağım.

Yardımlarınız için şimdiden çok teşekkür ederim.
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,248
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Çalışma sayfasının kod modülüne yapıştırınız.:cool:
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
Target.Offset(0, Target.Value).Value = Target.Value
Target.Value = ""
Application.EnableEvents = True
End Sub
 

Ali

Özel Üye
Katılım
21 Temmuz 2005
Mesajlar
7,929
Excel Vers. ve Dili
İş:Excel 2016-Türkçe
E1 hücresine

=EĞER(EĞER((SÜTUN()-3)=$C$1;$A$1*$B$1)=YANLIŞ;"";EĞER((SÜTUN()-3)=$C$1;$A$1*$B$1))

yazıp sağa doğru çekiniz.
 
Katılım
5 Şubat 2008
Mesajlar
8
Excel Vers. ve Dili
c
Çok sağolun hızlı cevabınız için .

Yanlız yazdığım değer sadece C kolonundaki yazılan kolon numarasına a ve bnin carpım sonucunu atmasını nasıl sağlayabilirim.
Kod güzel çelışıyor ancak c ye yazılan doğrudan yazdığım kolona gidiyor.
tşkkrler
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,248
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
A1 ve B1 hücrelerideki rakamların çarpım sonucunu , aynı satırda C1 hücresinde yazdığım sayı kadar ilerideki kolona atayan bir yönteme ihtiyacım var.
Yani C1 hücresine 2 yazarsam sonucu E1 e yazsın,4 yazarsam sonucu G1e yazılması gerekli.
Böylece oluşan sonuçlara göre bir matris oluşturacağım
Çok sağolun hızlı cevabınız için .

Yanlız yazdığım değer sadece C kolonundaki yazılan kolon numarasına a ve bnin carpım sonucunu atmasını nasıl sağlayabilirim.
Kod güzel çelışıyor ancak c ye yazılan doğrudan yazdığım kolona gidiyor.
tşkkrler
Son söylediğinizi anlamdım.Ben yazdığım kodda ilk isteğinizi yaptığımı sanıyorum.Yalnız girdiğiniz verinin girdiğiniz yerde kalmasını istiyorsanız aşağıdaki kırmızı satır silin.:cool:

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
Target.Offset(0, Target.Value).Value = Target.Value
[B][COLOR="Red"][SIZE="3"]Target.Value = ""[/SIZE][/COLOR][/B]
Application.EnableEvents = True
End Sub
 
Katılım
5 Şubat 2008
Mesajlar
8
Excel Vers. ve Dili
c
Burda değer girilen dücre yazılacak olan kolon numarasını bildirecek, o kısım çalışıyor.

Fakat yazılan değer hücreye girmiş olduğum değer değilde , kendisine komşu olan başka iki hücrenin değerleri çarpımı sonucu olacak.
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,248
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Burda değer girilen dücre yazılacak olan kolon numarasını bildirecek, o kısım çalışıyor.

Fakat yazılan değer hücreye girmiş olduğum değer değilde , kendisine komşu olan başka iki hücrenin değerleri çarpımı sonucu olacak.
Komşu dediğiniz hemen veriyi girdiğiniz hücrenin yanındaki ilk hücremi?:cool:
 
Katılım
5 Şubat 2008
Mesajlar
8
Excel Vers. ve Dili
c
Evet.
Yani aşağıdaki gibi ödenecek ayı değiştirince gidip ilgili aya ödenecek miktarı yazsın istiyourm.
AYLAR
MALZEME ADI FİYATI ÖDEME YÜZDESİ ÖDENECEK AY 1.AY 2.AY 3.AY 4.AY 5.AY
Kalem 100 5% M3 50
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,248
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Evet.
Yani aşağıdaki gibi ödenecek ayı değiştirince gidip ilgili aya ödenecek miktarı yazsın istiyourm.
AYLAR
MALZEME ADI FİYATI ÖDEME YÜZDESİ ÖDENECEK AY 1.AY 2.AY 3.AY 4.AY 5.AY
Kalem 100 5% M3 50
Ben onu bilemem.İlgiili ay hangi sütunda hangi satırda .Falan ,falan,falan.Dosyanızıda görmedim üstelik.
Ama benim yukarıdaki önermeme evet dediğinize göre onun kodları aşağıdadır.
Öncekilerin hepsini silin bunu yapıştırın.:cool:
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
Application.EnableEvents = False
Target.Offset(0, Target.Value).Value = ""
Target.Offset(0, Target.Value).Value = Target.Value * Target.Offset(0, 1).Value
Application.EnableEvents = True
End Sub
 
Katılım
5 Şubat 2008
Mesajlar
8
Excel Vers. ve Dili
c
Kusura bakmayın biraz karışık oldu, ekli formda yapmak istediğimi yazmaya çalıştım.


Teşekkürler
 

Ekli dosyalar

Katılım
5 Şubat 2008
Mesajlar
8
Excel Vers. ve Dili
c
Sayın Evren Gizlen

Aşağıdaki şekilde istediğim hücreye değeri yazıyor. Ancak bu fonsiyonun SADECE D kolunu (ödenecek ay) için geçerli olmasını nasıl sağlayabilirim?

Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
Application.EnableEvents = False
Target.Offset(0, Target.Value).Value = Target.Offset(0, -2) * Target.Offset(0, -1).Value
Application.EnableEvents = True
End Sub
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,248
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Kusura bakmayın biraz karışık oldu, ekli formda yapmak istediğimi yazmaya çalıştım.


Teşekkürler
Pardon bir şey soracam.Bunu merak ediyorum.
Bu sadece sizin için değil.Herkes bunu yapıyor.Soruyu sorarken dosyanızı ilk baştan niye eklemiyorsunuz?
Bir kaç yazışmadan sonra ekliyorsunuz.Bunu anlamıyorum.Oysa soran arkadaşlar ilk baştan ekleseler bir keree yanıt oluşacak.Yanlış anlamayın bunu herkes yapıyor.Oysa forumuzda dosya ekleme kısıntısıda uygulanmıyor.:cool:
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,248
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Sayın Evren Gizlen

Aşağıdaki şekilde istediğim hücreye değeri yazıyor. Ancak bu fonsiyonun SADECE D kolunu (ödenecek ay) için geçerli olmasını nasıl sağlayabilirim?

Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
Application.EnableEvents = False
Target.Offset(0, Target.Value).Value = Target.Offset(0, -2) * Target.Offset(0, -1).Value
Application.EnableEvents = True
End Sub
Yani sadece D sütununa veri girdsiğinizdemi kod çalışsın istiyorsunuz?:cool:
 
Katılım
5 Şubat 2008
Mesajlar
8
Excel Vers. ve Dili
c
Çok haklısınız, uyarınız için çok teşekkür ederim.
Bir sürü zaman ve emek harcaması oluor. İlk defa yazıldığından böyle oldu, kusura bakılmasın lütfen.

Evet Kod sadece D kolonu değişikliğinde çalışsın.
tskkrler
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,248
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Dosyanız ektedir.:cool:
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("D3:D65536")) Is Nothing Then Exit Sub
On Error Resume Next
Target.Offset(0, Target.Value + 2).Value = ""
If IsNumeric(Target.Value) Then
    Target.Offset(0, Target.Value + 2).Value = Target.Offset(0, -1).Value * Target.Offset(0, -2).Value
End If
End Sub
 

Ekli dosyalar

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,248
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Pardon bir şey soracam.Bunu merak ediyorum.
Bu sadece sizin için değil.Herkes bunu yapıyor.Soruyu sorarken dosyanızı ilk baştan niye eklemiyorsunuz?
Bir kaç yazışmadan sonra ekliyorsunuz.Bunu anlamıyorum.Oysa soran arkadaşlar ilk baştan ekleseler bir keree yanıt oluşacak.Yanlış anlamayın bunu herkes yapıyor.Oysa forumuzda dosya ekleme kısıntısıda uygulanmıyor.:cool:
Bir sürü zaman ve emek harcaması oluor. İlk defa yazıldığından böyle oldu, kusura bakılmasın lütfen.
Estafurullah.
Zaten ben bunu siizn için söylemedim.Aynen aşağıda söylediklerim gibi.Genel olarak söyledim.:cool:
Ben konuyu şöyle düşünüyorum.
Yanlışta olabilir.
Yaaaa ben soruyu sorayım.Aldığım cevabı nasıl olsa kendime göre uyarlar yaparım.
Ama yapamayınca ,Tabii kazın ayağı öyle olmayınca bu sefer son çare en son hadede dosya yollanıyor.
Bu benim tahminim.
 
Katılım
5 Şubat 2008
Mesajlar
8
Excel Vers. ve Dili
c
Merhaba ,

İhtiyacım olan düzenleme için yeterli cevabımı almıştım fakat düşündükçe farklı ihtiyaclar çıkıyor. :)

Eğer tablomuzda aşağıdaki şekilde 1 den çok satırdan tablonun yan tarafına atama yapacak olduğumuzda ben işin içinden çıkamadım. Yani belirlenen her aydaki oranda yan tarafa değere ataması yapılması gerekmekte.

Kıymetli yardımlarınız rica.
 

Ekli dosyalar

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,248
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Merhaba ,

İhtiyacım olan düzenleme için yeterli cevabımı almıştım fakat düşündükçe farklı ihtiyaclar çıkıyor. :)

Eğer tablomuzda aşağıdaki şekilde 1 den çok satırdan tablonun yan tarafına atama yapacak olduğumuzda ben işin içinden çıkamadım. Yani belirlenen her aydaki oranda yan tarafa değere ataması yapılması gerekmekte.

Kıymetli yardımlarınız rica.
Dosyanız ektedir.:cool:
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("D3:D65536,F3:F65536,H3:H65536,J3:J65536")) Is Nothing Then Exit Sub
On Error Resume Next
If IsNumeric(Target.Value) Then
    Range("K" & Target.Row & ":V" & Target.Row).Value = ""
    Range("K" & Target.Row).Offset(0, Target.Value - 1) = Target.Offset(0, -1).Value * Cells(Target.Row, "B").Value
End If
End Sub
 

Ekli dosyalar

Üst