iç içe eğer makrosu

akviran42

Altın Üye
Katılım
18 Şubat 2008
Mesajlar
52
Excel Vers. ve Dili
excel
Altın Üyelik Bitiş Tarihi
21-08-2025
Değerli hocalarım merhaba ;

Aşağıdaki kodu vba yazarak hücrede yazabilirmi

EĞER(T2=0;"İMALAT BEKLİYOR";"")&EĞER(T2=1;"PUNCH";"")&EĞER(T2=2;"BÜKÜM";"")&EĞER(T2=3;"SIRT KAYNAK";"")&EĞER(T2=4;"KAPAK TAKMA";"")&EĞER(T2=5;"ROBOT";"")&EĞER(T2=6;"ELKAYNAK";"")&EĞER(T2=7;"TEST";"")&EĞER(T2=8;"BOYA";"")&EĞER(T2=9;"PAKETLEME";"")
 

ismailem

https://asrisaadetyolu.blogspot.com/
Katılım
5 Haziran 2012
Mesajlar
102
Excel Vers. ve Dili
Office 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
19-10-2023
Şöyle bir kod mu istiyorsunuz?
Sub egerilevbamakrosu()
Dim s As Integer
Dim a As String
s = 2
a = IIf(Cells(s, 20).Value = 0, "İMALAT BEKLİYOR", "") & IIf(Cells(s, 20).Value = 1, "PUNCH", "") & IIf(Cells(s, 20).Value = 2, "BÜKÜM", "") & IIf(Cells(s, 20).Value = 3, "SIRT KAYNAK", "") & IIf(Cells(s, 20).Value = 4, "KAPAK TAKMA", "") & IIf(Cells(s, 20).Value = 5, "ROBOT", "") & IIf(Cells(s, 20).Value = 6, "ELKAYNAK", "") & IIf(Cells(s, 20).Value = 7, "TEST", "") & IIf(Cells(s, 20).Value = 8, "BOYA", "") & IIf(Cells(s, 20).Value = 9, "PAKETLEME", "")
MsgBox (a)
End Sub
 

Ziynettin

Destek Ekibi
Destek Ekibi
Katılım
18 Nisan 2008
Mesajlar
1,111
Excel Vers. ve Dili
office2010
Alternatif,

*** Çalışma sayfası kod alanına aşağıdaki kodu kopyalayın.
*** T2 hücresine veri girildikten sonra sonuç T1 hücresine yazdırılıyor.

*** Kod satırında [T1] yazdırılacak hücreyi kendinize göre uyarlayınız.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address(0, 0) = "T2" Then
        a = Array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
        b = Array("İMALAT BEKLİYOR", "PUNCH", "BÜKÜM", "SIRT KAYNAK", _
            "KAPAK TAKMA", "ROBOT", "ELKAYNAK", "TEST", "BOYA", "PAKETLEME")
        aranan = Target.Value
        n = Application.Match(aranan, a, 0)
        If Not IsError(n) Then
            [T1] = b(n - 1)
        Else
            [T1] = ""
        End If
    End If
End Sub
 

akviran42

Altın Üye
Katılım
18 Şubat 2008
Mesajlar
52
Excel Vers. ve Dili
excel
Altın Üyelik Bitiş Tarihi
21-08-2025
Alternatif,

*** Çalışma sayfası kod alanına aşağıdaki kodu kopyalayın.
*** T2 hücresine veri girildikten sonra sonuç T1 hücresine yazdırılıyor.

*** Kod satırında [T1] yazdırılacak hücreyi kendinize göre uyarlayınız.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address(0, 0) = "T2" Then
        a = Array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
        b = Array("İMALAT BEKLİYOR", "PUNCH", "BÜKÜM", "SIRT KAYNAK", _
            "KAPAK TAKMA", "ROBOT", "ELKAYNAK", "TEST", "BOYA", "PAKETLEME")
        aranan = Target.Value
        n = Application.Match(aranan, a, 0)
        If Not IsError(n) Then
            [T1] = b(n - 1)
        Else
            [T1] = ""
        End If
    End If
End Sub
Hocam Çok teşekkür ederim elinize sağlık. Bu kodu hücrenin tamamına nasıl uygularım.
 

akviran42

Altın Üye
Katılım
18 Şubat 2008
Mesajlar
52
Excel Vers. ve Dili
excel
Altın Üyelik Bitiş Tarihi
21-08-2025
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(0, 0) = "T2" Then
a = Array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
b = Array("İMALAT BEKLİYOR", "PUNCH", "BÜKÜM", "SIRT KAYNAK", _
"KAPAK TAKMA", "ROBOT", "ELKAYNAK", "TEST", "BOYA", "PAKETLEME")
aranan = Target.Value
n = Application.Match(aranan, a, 0)
If Not IsError(n) Then
[S2] = b(n - 1)
Else
[S1] = ""
End If
End If
End Sub

bu şekilde yaptım ama sadece bir hücre de uyguluyor
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,491
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,

Aşağıdaki kodları kendinize göre uyarlayın, döngü gerekiyorsa döngüye sokun.

Kod:
Sub Bul()

    Dim Deg, _
        a As Integer
   
    Deg = Array("", "İMALAT BEKLİYOR", "PUNCH", "BÜKÜM", "SIRT KAYNAK", _
            "KAPAK TAKMA", "ROBOT", "ELKAYNAK", "TEST", "BOYA", "PAKETLEME")

    If Range("T1") = "" Or Range("T1") > 10 Then
        a = 0
    Else
        a = Range("T1")
    End If
   
    MsgBox Deg(a)
   
End Sub
 
Üst