• DİKKAT

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

macro başlatma

Katılım
7 Ağustos 2019
Mesajlar
106
Excel Vers. ve Dili
İngilizce
merhabalar elimde aşağıdaki gibi bir kod var . ben istiyorum ki bu kod sadece c13 deki değer değiştiğinde bir kerelik çağırsın.
mesela ben c13 e girdim "11111" yazdım entere bastım bu macro devreye girdi . gerekeni yaptı eğer tekrar c13 teki değeri değiştirirsem girsin istiyorum.
çünkü şuan kendi kendine arada devreye giriyor...


yardımlarınız için teşekürler








Kod:
Private Sub Worksheet_Change(ByVal Target As Range)

   If Range("a3") = 1 Then
   Range("F13").Select
    ActiveCell.FormulaR1C1 = "S"
    Range("e13").Select
    
    ElseIf Range("a3") = 2 Then
     Range("F13").Select
    ActiveCell.FormulaR1C1 = "M"
    Range("e13").Select
    
    ElseIf Range("a3") = 3 Then
     Range("F13").Select
    ActiveCell.FormulaR1C1 = "L"
    Range("e13").Select
    
     ElseIf Range("a3") = 4 Then
     Range("F13").Select
    ActiveCell.FormulaR1C1 = "XL"
    Range("e13").Select
    
    End If
    End Sub
 
Merhaba.
Buyurun.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("C13")) Is Nothing Then
        If Range("a3") = 1 Then
            Range("F13") = "S"
        ElseIf Range("a3") = 2 Then
            Range("F13") = "M"
        ElseIf Range("a3") = 3 Then
            Range("F13") = "L"
        ElseIf Range("a3") = 4 Then
            Range("F13") = "XL"
        End If
    End If
End Sub
 
Kodu başına aşağıdaki satırı ekleyin.
Private Sub Worksheet_Change(ByVal Target As Range)

Kod:
 if target.address <> "$C$13" then exit sub
 
merhabalar elimde aşağıdaki gibi bir kod var . ben istiyorum ki bu kod sadece c13 deki değer değiştiğinde bir kerelik çağırsın.
mesela ben c13 e girdim "11111" yazdım entere bastım bu macro devreye girdi . gerekeni yaptı eğer tekrar c13 teki değeri değiştirirsem girsin istiyorum.
çünkü şuan kendi kendine arada devreye giriyor...


yardımlarınız için teşekürler








Kod:
Private Sub Worksheet_Change(ByVal Target As Range)

   If Range("a3") = 1 Then
   Range("F13").Select
    ActiveCell.FormulaR1C1 = "S"
    Range("e13").Select
   
    ElseIf Range("a3") = 2 Then
     Range("F13").Select
    ActiveCell.FormulaR1C1 = "M"
    Range("e13").Select
   
    ElseIf Range("a3") = 3 Then
     Range("F13").Select
    ActiveCell.FormulaR1C1 = "L"
    Range("e13").Select
   
     ElseIf Range("a3") = 4 Then
     Range("F13").Select
    ActiveCell.FormulaR1C1 = "XL"
    Range("e13").Select
   
    End If
    End Sub
Ya bir sorum daha sorak istiyorum
Ben istiyorum ki c13 deki verileri silersem yani hücre boş kalırsa işlem yapmasın
Yani c13 e 111 yazdım çalıştı
Sonra ben girdim hücredeki 111 değerini sildiğimde çalışmasın bunun için ne yapmam gerekli
 
Aşağıdaki kodukullanabilirsiniz.
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("C13")) Is Nothing And Not Target.Value = "" Then
        If Range("a3") = 1 Then
            Range("F13") = "S"
        ElseIf Range("a3") = 2 Then
            Range("F13") = "M"
        ElseIf Range("a3") = 3 Then
            Range("F13") = "L"
        ElseIf Range("a3") = 4 Then
            Range("F13") = "XL"
        End If
    End If
End Sub
 
Alternatif.:cool:
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim arr()
    If Not Intersect(Target, Range("C13")) Is Nothing And Not Target.Value = "" Then
    On Error Resume Next
        Range("F13").Value = ""
        arr = Array("", "S", "M", "L", "XL")
        Range("F13").Value = arr(Range("A3").Value)
    End If
End Sub
 
Geri
Üst