• DİKKAT

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

A Sütunundaki Günün Tarihini Seçme

  • Konbuyu başlatan Konbuyu başlatan hakki83
  • Başlangıç tarihi Başlangıç tarihi

hakki83

Altın Üye
Katılım
30 Eylül 2021
Mesajlar
567
Excel Vers. ve Dili
Excel 2016 Türkçe 32 Bit
Merhaba Değerli Hocalarımız

A sütunundaki günün tarihi yazılı olan hücreyi seçme makrosunu, en kısa haliyle alabilir miyim.

Yani

Range("A2").Select değil de

Range("A sütunundaki günün tarihi yazılı hücre").Select

gibi..

Teşekkürler.
 

Ekli dosyalar

Sayfa aktif olduğunda tarihin seçilmesi için örnek.
Kod:
Private Sub Worksheet_Activate()
Dim son As Long, bul As Variant
son = Range("A" & Rows.Count).End(xlUp).Row
Set bul = Range("A2:A" & son).Find(Date, LookAt:=xlWhole)
    If Not bul Is Nothing Then
        bul = bul.Row
        Range("A" & bul).Select
    Else
        MsgBox Date & " tarihi A sütununda yok.", vbInformation, ""
    End If
End Sub
247191
 
Sağ olunuz Adem Can hocamız. Bilginize sağlık.
 
Alternatif olsun. Bazen tarihler farklı biçimlendirildiğinde Find komutu bulmayabiliyor.
Aşağıdaki Find komutunun kullanım şeklinde sıkıntı olmuyor.

Kod:
Private Sub Worksheet_Activate()

Dim c As Range

Set c = Range("A:A").Find(Date, LookIn:=xlFormulas, LookAt:=xlWhole)
If Not c Is Nothing Then
    c.Select
Else
    Range("A1").Select
End If

End Sub
 
Alternatif olsun..

C++:
Option Explicit

Sub Select_Today()
    On Error GoTo Son
    Range("A:A").Find(Date, LookIn:=xlFormulas).Activate
    Exit Sub
Son:
    On Error GoTo 0
    MsgBox "Bugün'e ait tarih bulunamadı!", vbCritical
End Sub
 
Bu da başka bir alternatif...

C++:
Option Explicit

Sub Select_Today()
    On Error GoTo Son
    Range("A" & Application.Match(CLng(Date), Range("A:A"), 0)).Select
    Exit Sub
Son:
    On Error GoTo 0
    MsgBox "Bugün'e ait tarih bulunamadı!", vbCritical
End Sub
 
Hocalarımıza küçük bir sorum var. Diyelim ki ben bu konudaki sorumu makro kaydet yöntemiyle kendim çözmek istiyorum.

Biraz uğraştım denedim olmadı, yapamadım.

Makro kaydet ile yapılabilir mi, yoksa yapılamaz mı?

Oluyorsa nasıl yapılır?
 
Makro kaydet ile temel kodu oluşturabilirsiniz...

C++:
Option Explicit

Sub Macro1()
'
' Macro1 Macro
'

'
    Columns("A:A").Select
    Selection.Find(What:="25.10.2023", After:=ActiveCell, LookIn:=xlFormulas2 _
        , LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate
End Sub

Sonrasında bu kod olmayan tarihlerde hata vereceği için küçük müdahaleler yapmanız gerekiyor.. İşin bu kısmıda öğrenme-geliştirme bölümüdür..
 
Makro kaydet ile temel kodu oluşturabilirsiniz...

C++:
Option Explicit

Sub Macro1()
'
' Macro1 Macro
'

'
    Columns("A:A").Select
    Selection.Find(What:="25.10.2023", After:=ActiveCell, LookIn:=xlFormulas2 _
        , LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate
End Sub

Sonrasında bu kod olmayan tarihlerde hata vereceği için küçük müdahaleler yapmanız gerekiyor.. İşin bu kısmıda öğrenme-geliştirme bölümüdür..
Korhan hocam merhaba
Bilgisayara geçince hemen deneyeceğim.

Fakat nasıl yaptınız makro kaydet’i?

Ben Ctrl + F ‘ye günün tarihini yazdım ama öyle kod oluşmamıştı.

Bilgisayara geçince tekrar deneyeyim.
 
"Makro Kaydet" butonuna tıkladım.
Sonra A sütununu seçtim.
Sonra CTRL+F tuşlarına bastım.
Bugünün tarihini yazdım.
"Sonrakini Bul" butonuna tıkladım.
Sonra BUL penceresini kapattım.
"Makro Kaydet" butonuna tıklayarak makro kaydını durdurdum.
 
Geri
Üst