• DİKKAT

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

Textbox'a girilen tarihi match fonk. kullanma

  • Konbuyu başlatan Konbuyu başlatan Marco
  • Başlangıç tarihi Başlangıç tarihi
Katılım
29 Mart 2005
Mesajlar
58
Arkadaşlar

Forumda buna benzer soruları incelememe rağmen sorunumu çözemedim.

Textbox1 e girilen tarihi L sütununda bulmaya çalışıyorum.
satır = Application.WorksheetFunction.Match(TextBox1.Value, [L1:L65536], 0) bu kod hata veriyor

L sütunundaki tarih formatı gg.aa.yyyy şeklinde

sorun formatla ilgili mi ? ne yapılabilir
 
Aşağıdaki gibi deneyin.

satır = [l1:l65536].find(TextBox1.Value).row
 
sayın leventm

denedim olmadı. kodun devamı aşağıdaki gibi... object variable hatası veriyor

Worksheets("TEZGAH").Select
satır = [l1:l65536].Find(TextBox1.Value).Row
Cells(satır, 12).Select
ActiveCell.CurrentRegion.Select
 
Sorun muhtemelen ya hücredeki yada Textboxtaki tarihin metin olarak algılanmasından kaynaklanıyor. Birde aşağıdaki gibi deneyin.

[vb:1:6397a4f09e]Worksheets("TEZGAH").Select
satır = [L1:L65536].Find(clng(cdate(TextBox1.Value))).Row
Cells(satır, 12).Select
ActiveCell.CurrentRegion.Select[/vb:1:6397a4f09e]
 
Birde aşağıdaki gibi deneyin. Tarih için format tanımlamanıza gerek yok, örneğin textboxa 5-6 gibi yazın bu 5 haziran olarak algılanacaktır.

[vb:1:da0dd0aea1]Worksheets("TEZGAH").Select
satır = [L1:L65536].Find(cdate(TextBox1.Value)).Row
Cells(satır, 12).Select
ActiveCell.CurrentRegion.Select [/vb:1:da0dd0aea1]
 
leventm .... öncelikle kusura bakmayın diyecem çünkü l1 hücresindeki tarih =a1 gibi bir formülle alınıyor. hücredeki formülü silip elle tarih girince kod sorunsuz çalışıyor ama l1= a1 benim için gerekli
 
Bu durumda döngülü bir çözüm önereceğim, çalışması yavaştır fakat kesin çözümdür.

[vb:1:3806e4c197]For a = 1 To Cells(65536, 12).End(xlUp).Row
If CDate(TextBox1.Value) = Cells(a, 12).Value Then
Cells(Cells(a, 12).Row, 12).Select
Exit For
End If
Next[/vb:1:3806e4c197]
 
Geri
Üst