• DİKKAT

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

Hücredeki veriyi veri doğrulama ile girdi iletisi yapmak

  • Konbuyu başlatan Konbuyu başlatan nane
  • Başlangıç tarihi Başlangıç tarihi
Katılım
26 Ocak 2006
Mesajlar
304
Excel Vers. ve Dili
Excel 2007 tr
Girdi İletisi :
Bazı çalışmalarda bir hücreyi seçtiğinizde sarı bir açıklama kutusu içinde hücre ile ilgili açıklama belirdiğini görmüşsünüzdür. Bu sarı girdi iletilerinin oluşturulduğu sekmedeyiz şu an. Burada fazla açıklama gerektiren bir konu yok aslında. Başlık bölümüne girdiğiniz yazı açıklama kutusunda koyu renk ile yazılacak ve iletinizin başlığını oluşturacak (çoğu durumda gerek yoktur ve görüntü açısından benim hoşuma gitmiyor, boş bırakabilirsiniz.), altta daha büyük text alanına gireceğiniz yazılar ise kullanıcıya hücre girişi ile ilgili vermek istediğiniz bilgiyi yazacağınız bölüm. En üstteki seçili olarak karşınıza gelen seçenek ise doğrulama uygulanmış hücreyi seçtiğimizde mesajın görüntülenmesini sağlar. Sanırım istendiğinde girdi iletileri mesajlarının kapatılabilmesi ve/veya gerektiğinde hücre açıklamasında başka bir açıklama varsa hücre girişi ile ilgili bilgi buraya yazılabilir.

Merhabalar,
Forumda arama yaptım fakat hiçbir örnek bulamadım. Yukarıdaki girdi iletisi ile ilgili danersin bilgi vermiş ama manuel girişi anlatmış.
Acaba X hücredeki veriyi Y hücresine girdi iletisi olarak atayabilirmiyiz?
Konu ile ilgili dosya ve detaylı açıklamalar ektedir.
İlgilenecek arkadaşlara şimdiden teşekkürler

Yb®
 

Ekli dosyalar

Merhaba
Boş bir module kopyalayın ve deneyin.
Kod:
Option Explicit
Sub açıklama_1967()
Dim SAT As Long, AY As String, BUL As Range, BUL1 As Variant
Dim SAT1 As Long, GÜN As Long, SÜT As Long
Application.ScreenUpdating = False
With Range("C4:I70").Validation
.Delete
.Add Type:=xlValidateInputOnly, AlertStyle:=xlValidAlertStop, Operator:=xlBetween
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
For SAT = 72 To Cells(Rows.Count, "C").End(xlUp).Row
AY = Format(Cells(SAT, "D"), "mmmm")
GÜN = Format(Cells(SAT, "D"), "dd")
Set BUL = Range("J4:J67").Find(AY, , , xlWhole)
BUL1 = BUL.Row
For SAT1 = BUL1 To Cells(Rows.Count, "C").End(xlUp).Row
For SÜT = 3 To 9
If Cells(SAT1, SÜT) <> Empty And Cells(SAT1, SÜT) = GÜN Then
BUL1 = Cells(SAT1, SÜT).Address
BUL1 = Replace(Replace(BUL1, "$", ""), SAT1, "")
With Range(BUL1 & SAT1).Validation
.Delete
.Add Type:=xlValidateInputOnly, AlertStyle:=xlValidAlertStop, Operator:=xlBetween
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = Cells(SAT, "F") & " :" & vbLf & Format(Cells(SAT, "G"), "#,##0.00 TL")
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With: Exit For
End If: Next: Next
Next
Application.ScreenUpdating = True
MsgBox "İşlem Tamamlandı", vbInformation
End Sub
 
Sn.Asi kral
Kodları denedim. Yalnız ay ayrımı yapmıyor. Eylül, Ekim, Kasım... diğer aylara da yazıyor.
Çözüm olarak takvime 24.09.2012, 24.12.2012 .... gibi tam tarih girdiğimde düzeliyor. Böyle de olabilir önemli değil.
Girişler ödemeler sayfasına yamak için kodda ne gibi değişiklikler yapmak gerekiyor. Onu belirtirseniz sevinirim.
Teşekkürler

Yb®
 

Ekli dosyalar

Merhaba
Bahsettiğiniz problemi aştım. Diğer istediğiniz değişiklik yapıldı.
Dosyanız Ekte.
 

Ekli dosyalar

Çok teşekkürler harika oldu ellerinize sağlık
Takvimde bilgi olan tarihi kırmızı yazsaydı , desem, demedim. önemli değil
Tek tek söyleme diyeceksiniz.

tamamdır
teşekkürler...
Yb®
 
Merhabalar Asi kral,

Aynı vadede 2 veya daha fazla kayıt olduğunda en son işleneni (yani sadece 1 kayıt) gösteriyor.
Acaba diğerlerini de göstermesi için koda ne ilave etmem gerekiyor. Yardımcı olurmusunuz

Teşekkürler...
Yb®
 
Merhabalar Asi kral,

Aynı vadede 2 veya daha fazla kayıt olduğunda en son işleneni (yani sadece 1 kayıt) gösteriyor.
Acaba diğerlerini de göstermesi için koda ne ilave etmem gerekiyor. Yardımcı olurmusunuz

Teşekkürler...
Yb®

Merhaba
Kodun tamamını değiştim ama olsun. Bir önceki mesajda istediğiniz ödeme günü renkli olsun istemiştiniz oda halledildi.
Kod:
Option Explicit
Sub açıklama_1967()
Dim SAT As Long, AY As String, GÜN As Long
Dim S1 As Worksheet, S2 As Worksheet, SÜTUN As String
Dim S1BUL As Range, S2BUL As Range, S1BUL1 As Range
Dim S1V As Variant, S2V As Variant, AÇIKLAMA As String
Application.ScreenUpdating = False
Set S1 = Sheets("İcmal"): Set S2 = Sheets("Ödemeler")
S1.Range("C4:I70").Interior.ColorIndex = xlNone
With S1.Range("C4:I70").Validation
.Delete
.Add Type:=xlValidateInputOnly, AlertStyle:=xlValidAlertStop, Operator:=xlBetween
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
For SAT = 3 To S2.Cells(Rows.Count, "C").End(xlUp).Row
Set S2BUL = S2.Range("D:D").Find(S2.Cells(SAT, "D"), , , xlWhole)
If Not S2BUL Is Nothing Then
S2V = S2BUL.Address
Do
If AÇIKLAMA = "" Then
AÇIKLAMA = AÇIKLAMA & S2.Cells(S2BUL.Row, "F") & " : " & Format(S2.Cells(S2BUL.Row, "G"), "#,##0.00 TL")
Else
AÇIKLAMA = AÇIKLAMA & vbLf & S2.Cells(S2BUL.Row, "F") & " : " & Format(S2.Cells(S2BUL.Row, "G"), "#,##0.00 TL")
End If
Set S2BUL = S2.Range("D:D").FindNext(S2BUL)
Loop While Not S2BUL Is Nothing And S2BUL.Address <> S2V
End If
AY = Format(S2.Cells(SAT, "D"), "mmmm")
GÜN = Format(S2.Cells(SAT, "D"), "dd")
Set S1BUL = S1.Range("J4:J70").Find(AY, , , xlWhole)
Set S1BUL1 = S1.Range("C" & S1BUL.Row & ":I70").Find(GÜN, , , xlWhole)
SÜTUN = Cells(S1BUL1.Row, S1BUL1.Column).Address
SÜTUN = Replace(Replace(SÜTUN, "$", ""), S1BUL1.Row, "")
S1.Range(SÜTUN & S1BUL1.Row).Interior.Color = vbRed
With S1.Range(SÜTUN & S1BUL1.Row).Validation
.Delete
.Add Type:=xlValidateInputOnly, AlertStyle:=xlValidAlertStop, Operator:=xlBetween
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = AÇIKLAMA
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
AÇIKLAMA = ""
Next
Application.ScreenUpdating = True
MsgBox "İşlem Tamamlandı", vbInformation
End Sub
 
merhaba arkadaşlar. yardımcı olurmusunuz. sadece a1 hcresine yazdığım veriyi değiştirdiğimde otomatik olarak yada bir düğme ile girdi iletisine güncellemesini istiyorum. örnek bir dosya lütfen
 
Son düzenleme:
Geri
Üst