• DİKKAT

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

makroya ilave kod

Katılım
15 Eylül 2007
Mesajlar
1,312
Excel Vers. ve Dili
2013 türkçe
If Target.Column = 12 Or Target.Column = 13 Then
sat = Target.Row
Cells(sat, "N") = Cells(sat, "L") * Cells(sat, "M")
End If

yukarıdaki koda ilave yapmak istiyorum
AF ve AG hücresine AE hücresindeki rakamı N hücresi ile çarpması
yani AE hücresindeki rakamı N hücresi ile çarpıp AF ve AG hücresine yazması

bu şekilde bir koda ilave yapa bilirmisiniz
 
Kod:
Cells(sat, "AF") = Cells(sat, "AE") * Cells(sat, "N")
Cells(sat, "AG") = Cells(sat, "AE") * Cells(sat, "N")

bu şekildemi ?
 
Son düzenleme:
ilginiz için teşekküre ederim anca sizin verdiğiniz kodu ila ettim N hücresine veri yazınca hesaplama yapıyor, yukarıdaki kodda bu şekilde olacak ancak ilave ettiğimiz kod AE hücresine veri yazınca hesaplama yapacak
 
Kod:
If Target.Column = 12 Or Target.Column = 13 Then
        sat = Target.Row
        Cells(sat, "N") = Cells(sat, "L") * Cells(sat, "M")
else
If Target.Column = 32 Or Target.Column = 33 Then
 sat = Target.Row
Cells(sat, "AF") = Cells(sat, "AE") * Cells(sat, "N")
Cells(sat, "AG") = Cells(sat, "AE") * Cells(sat, "N")
End If
Olarak dener misiniz?
 
Son düzenleme:
Alternatif kod:

Kod:
Dim SütunAdı As String
SütunAdı = Split(ActiveCell.Address, "$")(1)

sat = Target.Row
If SütunAdı = "L" Or SütunAdı = "M" Then
Cells(sat, "N") = Cells(sat, "L") * Cells(sat, "M")
ElseIf SütunAdı = "AE" Then
Cells(sat, "AF") = Cells(sat, "AE") * Cells(sat, "N")
Cells(sat, "AG") = Cells(sat, "AE") * Cells(sat, "N")
End If
 
Yusuf bey ilginiz için teşekkür ederim
kodu denedim aşağıda kodun devamında end sub var bunda hata veriyor
 
halit bey ilginiz için teşekkür ederim
sizin koddada n ye yazınca çalışyor ancak ae ye yazınca exceli kapatıyor çalışma duruduruldu diyor
 
yukardaki kodu değiştirdim, tekrar bakar mısınız?
 
halit bey ilginiz için teşekkür ederim
sizin koddada n ye yazınca çalışyor ancak ae ye yazınca exceli kapatıyor çalışma duruduruldu diyor

Sizdeki kodun tamamı nasıl bilmiyorum ama sayfa şu şekilde çalışıyor.

kod:

Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim SütunAdı As String
SütunAdı = Split(ActiveCell.Address, "$")(1)

sat = Target.Row
If SütunAdı = "L" Or SütunAdı = "M" Then
Cells(sat, "N") = Cells(sat, "L") * Cells(sat, "M")
ElseIf SütunAdı = "AE" Then
Cells(sat, "AF") = Cells(sat, "AE") * Cells(sat, "N")
Cells(sat, "AG") = Cells(sat, "AE") * Cells(sat, "N")
End If
End Sub
 
Private Sub Worksheet_Change(ByVal Target As Range)


Dim S1 As Worksheet, S2 As Worksheet, BUL As Range, Adres As String

On Error Resume Next
Dim sat As Integer

halit bey kodumun başı bu şekilde
 
Sizin verdiğiniz kod kısmına göre bir hata vermemesi gerekiyor. En güzeli örnek dosya ekleyip tam olarak ne yapmak istediğinizi dosya üzerinde göstermenizdir.
 
örnek dosya yı ekledim

kodun içinde alış hesapla bölümü var o kısmında
 

Ekli dosyalar

örnek dosya yı ekledim

kodun içinde alış hesapla bölümü var o kısmında

Sizin kodunuzda bir sürü işlem var.

ilk bakışta Kodun burası

Kod:
    If Target.Column = 30 Or Target.Column = 31 Then
        Cells(Target.Row, "AF") = WorksheetFunction.Round(Cells(Target.Row, "AE") * Cells(Target.Row, "AD"), 2) / 100
        Cells(Target.Row, "AG") = WorksheetFunction.Round(Cells(Target.Row, "AF") + Cells(Target.Row, "AD"), 2)
    End If

söylediğiniz işleme yakın birşeyler yapıyor

kodunuza ilave yapınca burası etkiliyecektir.
 
Kod:
If Target.Column = 12 Or Target.Column = 13 Then
        sat = Target.Row
        Cells(sat, "N") = Cells(sat, "L") * Cells(sat, "M")
else
If Target.Column = 32 Or Target.Column = 33 Then
 sat = Target.Row
Cells(sat, "AF") = Cells(sat, "AE") * Cells(sat, "N")
Cells(sat, "AG") = Cells(sat, "AE") * Cells(sat, "N")
end if
End If
Olarak dener misiniz?

Bir adet Then ve bir adet End if unutmuşum :(
 
Bu arada deneme yaparken excel kilitlendi :( Çok karışık bir dosya yapınız var diye düşünüyorum.
 
If Target.Column = 30 Or Target.Column = 31 Then
Cells(Target.Row, "AF") = WorksheetFunction.Round(Cells(Target.Row, "AE") * Cells(Target.Row, "AD"), 2) / 100
Cells(Target.Row, "AG") = WorksheetFunction.Round(Cells(Target.Row, "AF") + Cells(Target.Row, "AD"), 2)
End If

halit bey bu kod başka işlem yapıyor yapmayada devam etmesi gerekiyor burası bozulmaması lazım
 
Yusuf bey 15 nolu mesajınızı denedim
If Target.Column = 30 Or Target.Column = 31 Then

şeklinde olması lazım bu şekilde değiştirdim ve bir hata vermedi ancak ae ye veri yazınca hesaplama yapmıyor
 
Dediğim gibi denediğimde exceli kilitledi, görevi sonlandırma yapmak zorunda kaldım. bir şey diyemeyeceğim.
 
If Target.Column = 12 Or Target.Column = 13 Then
sat = Target.Row
Cells(sat, "N") = Cells(sat, "L") * Cells(sat, "M")
End If

yukarıdaki koda ilave yapmak istiyorum
AF ve AG hücresine AE hücresindeki rakamı N hücresi ile çarpması
yani AE hücresindeki rakamı N hücresi ile çarpıp AF ve AG hücresine yazması

bu şekilde bir koda ilave yapa bilirmisiniz


If Target.Column = 30 Or Target.Column = 31 Then
Cells(Target.Row, "AF") = WorksheetFunction.Round(Cells(Target.Row, "AE") * Cells(Target.Row, "AD"), 2) / 100
Cells(Target.Row, "AG") = WorksheetFunction.Round(Cells(Target.Row, "AF") + Cells(Target.Row, "AD"), 2)
End If

halit bey bu kod başka işlem yapıyor yapmayada devam etmesi gerekiyor burası bozulmaması lazım

Sorunuzu sorarken örnek dosyanı ekleseydiniz veya kodun tamamını ekleseydiniz bu kadar yazışmaya gerek kalmıyacaktı.
Diğer taraftan 1 nolu sorunuzla ilgili 9 nolu mesajımdaki kod isteneni yapyor. ama siz soruyu sorarken ilave istediğinizi söylüyorsunuz.14 nolu mesajımda bahsettiğim bölüm koda ilave yapınca etkiliyor.

Size iyi çalışmalar diliyorum.
 
Geri
Üst