Açılır kutudan diğerine geçmek

Erdinç FIRTINA

Altın Üye
Katılım
14 Şubat 2007
Mesajlar
400
Excel Vers. ve Dili
excel 2003 türkçe
Altın Üyelik Bitiş Tarihi
15-05-2026
Değerli forum üyeleri,
Bir sütundaki açılır kutudaki veriyi işaretlediğimde, diğer sütunda bulunan açılır kutuya otomatik olarak geçmesini istiyorum. Örneğin; D sütunundaki açılır kutuda "gelir" işaretledim, hücreye yazıldı ve F sütununa geçti. Oradaki açılır kutuda "nakit" işaretledim. M sütununa geçti gibi.
Açıklamalarım ekteki dosyadadır.

Ekte sunulan ikinci dosyada benzer örnek vardır. Ancak şifreli olduğu için nasıl yapıldığını anlayamadım.


Yardımlarınız için şimdiden teşekkürler!!!
 

Necdet

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

Aşağıdaki kodları ilgili sayfanın kod bölümüne yapıştırınız.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Son
If Intersect(Target, [E:E]) Is Nothing Then Exit Sub
If Target = "GELİR" Then
   Target.Offset(0, 1).Value = 1
   Target.Offset(0, 2).Select
Else
   Target.Offset(0, 1).Value = 2
   Target.Offset(0, 4).Select
End If
Son:
End Sub
 

Erdinç FIRTINA

Altın Üye
Katılım
14 Şubat 2007
Mesajlar
400
Excel Vers. ve Dili
excel 2003 türkçe
Altın Üyelik Bitiş Tarihi
15-05-2026
Sayın Yesertener,

Size çok teşekkür ederim.
Ben aynı koda ileti metni yazmak istiyorum. Koddaki hangi satıra yazmalıyım?

    .InputTitle = "GELİRLERİ-GİDERLER"
    .InputMessage = "SADECE SEÇİNİZ"

Fourmdaki takvim uygulamalarından bulduğum bir örneği de sadece tarih sütununa uyarlamak istiyorum oysa bulduğum örnekte ise tüm hücrelerde çift tıklama ile tarih formu açılıyor. Bunu belirlediğim sütuna uyarlayabilir misiniz?

HER ŞEY İÇİN ÇOK TEŞEKKÜRLER!!!
 

Erdinç FIRTINA

Altın Üye
Katılım
14 Şubat 2007
Mesajlar
400
Excel Vers. ve Dili
excel 2003 türkçe
Altın Üyelik Bitiş Tarihi
15-05-2026
Sayın Yesertener,

Özür dilerim. Bulduğum takvim uygulamasından bahsettim(Sayın leventm'in hazırlamış olduğu) ama dosyamda tarih uygulamasına ait bir örnek yok. Ancak, takvim uygulamasını ek olarak gönderiyorum.
 

Necdet

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

Dosyanızda zaten Veri Doğrulama uygulamışsınız. Veri Doğrulamanın ileti bölümüne gerekli açıklamaları yazarsanız makro ile uğraşmak zorunda kalmazsınız.

Hoş makro ile nasıl olur bende bilmiyorum ya :)
 

Erdinç FIRTINA

Altın Üye
Katılım
14 Şubat 2007
Mesajlar
400
Excel Vers. ve Dili
excel 2003 türkçe
Altın Üyelik Bitiş Tarihi
15-05-2026
Sayın Yesertener,
Doğru söylüyorsunuz, ileti bölümüne yazmam gerekiyordu ama düşünemedim işte.
Benim gibi kırkından sonra öğrenenlerin işi epey zor galiba. Kendimizin gereksiz yere yorulması bir şey değil ama bir de sizleri yoruyoruz.

son bir şey sormak istiyorum. Açılır kutu 2 seçenekli ya. Eğer 3. seçenek olarak DİĞER olsaydı, satıra nasıl ekleyeceğiz?
Şöyle düşündüm ama olmadı. (And veya Or kullanarak)

If Target = "GELİR" Then
Target.Offset(0, 1).Value = 1
Target.Offset(0, 2).Select

And If Target = "GİDER" Then
Target.Offset(0, 1).Value = 2
Target.Offset(0, 4).Select

Else
Target.Offset(0, 1).Value = 3
Target.Offset(0, 3).Select
 

Necdet

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

Ekteki örnekte birden fazla koşuldaki IF nasıl olur sanırım bakınca anlayacaksınız.

Aklıma gelen değişik yapıları ayrı procedure olarak belirttim.

Kod:
Sub EGER()
For i = 2 To 5
    If Cells(i, "A") = "GELİR" Then Cells(i, "B") = "Gelir"
    If Cells(i, "A") = "GİDER" Then Cells(i, "B") = "Gider"
    If Cells(i, "A") = "GELMEZ" Then Cells(i, "B") = "Gelmez"
    If Cells(i, "A") = "GİTMEZ" Then Cells(i, "B") = "Gitmez"
Next i
End Sub
Kod:
Sub IF_THEN_ELSE()
For i = 2 To 5
    If Cells(i, "A") = "GELİR" Then
                Cells(i, "C") = "Gelir"
    ElseIf Cells(i, "A") = "GİDER" Then
                Cells(i, "C") = "Gider"
    ElseIf Cells(i, "A") = "GELMEZ" Then
                Cells(i, "C") = "Gelmez"
    ElseIf Cells(i, "A") = "GİTMEZ" Then
                Cells(i, "C") = "Gitmez"
    End If
Next i
End Sub

Kod:
Sub CASE_YAPISI()
For i = 2 To 5
    Select Case Cells(i, "A")
        Case "GELİR"
                Cells(i, "D") = "Gelir"
        Case "GİDER"
                Cells(i, "D") = "Gider"
        Case "GELMEZ"
                Cells(i, "D") = "Gelmez"
        Case "GİTMEZ"
                Cells(i, "D") = "Gitmez"
    End Select
Next i
End Sub
 

Erdinç FIRTINA

Altın Üye
Katılım
14 Şubat 2007
Mesajlar
400
Excel Vers. ve Dili
excel 2003 türkçe
Altın Üyelik Bitiş Tarihi
15-05-2026
Sayın Yesertener,
İşten gelir gelmez ilk yaptığım foruma bakmak oldu. Verdiğiniz cevaplar doğrultusunda dosyamdaki değişiklikleri yapmaya çalışacağım. Umarım başarırım. Eğer takıldığım bir şeyler olursa yine soracağım. Umarım bıktırmam.


HER ŞEY İÇİN ÇOK AMA ÇOK TEŞEKKÜR EDERİM!!!
 
Üst