Hücreler arasında köprü kurmak

Katılım
8 Ekim 2019
Mesajlar
9
Excel Vers. ve Dili
Türkçe
Merhaba arkadaşlar haftalardır çok basit olduğunu düşündüğüm bir şeyi yapmak istiyorum ancak bir türlü yapamıyorum. Kendi işlerimi takip etmek için oluşturduğum bir ajandam var. Ajandama gelecek birkaç yıl sonraki önemli işlerimi bile tarihiyle kaydediyorum. Haliyle artık dosyaya girdiğimde bugünün tarihini gösteren hücre olan "=BUGÜN()" hücresine inmek için bir hayli aşağılara inmem gerekiyor. Ben istiyorum ki sayfanın en başındaki hücreye "TIKLA" yazayım, içine de bir formül, bir köprü artık ne olursa ona tıkladığım zaman direk "=BUGÜN()" formülünün olduğu satıra gitsin. Yalnız bu tarih her gün değiştiği ve ben her gün güncellediğim için, bu hücre bazen A55 oluyor bazen A57 bazen A52. Bu yüzden sabit hücreye değil bu içindeki formüle kilitlenmem lazım. Bunun nasıl yapabilirim?
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,371
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,
Tarihlerin A sütununda bulunduğunu varsayarak :

Kod:
Sub BugununTarihineGit()

Dim c As Range

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

End Sub
 
Katılım
8 Ekim 2019
Mesajlar
9
Excel Vers. ve Dili
Türkçe
Üstat cevabınız için teşekkür ederim ancak Excel bilgim çok ileri düzeyde değil, bu formülü doğrudan hücreye bu şekilde mi yazacağım?
 

Necdet

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

Vba ile yazılmış kodlar.
Vba penceresinde bir modul ekleyeceksiniz, oraya kopyalayacaksınız.
sonra bu kodları bir butona bağlayacaksınız.
243284
 
Katılım
8 Ekim 2019
Mesajlar
9
Excel Vers. ve Dili
Türkçe
Anladım üstadım o beni aşıyor Köprü falan kurmak gibi daha basit bir kod oluşturulamaz mı acaba?
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,371
Excel Vers. ve Dili
Ofis 365 Türkçe
Değişken olduğunu söylüyorsunuz, köprü kurmak bile makroyla olur :)

Siz en iyisi VBA başlangıcı ile ilgili araştırmalar yapın. En azından kod, modül vs nedir nerdedir gibi konuları öğrenin, yoksa yardım almanız zorlaşabilir, her şey formülle olmayabiliyor çünkü.

Bu konuda internette çok sayıda video var, örneğin bir tane buldum İZLEYİNİZ
 
Katılım
8 Ekim 2019
Mesajlar
9
Excel Vers. ve Dili
Türkçe
Değişken olduğunu söylüyorsunuz, köprü kurmak bile makroyla olur :)

Siz en iyisi VBA başlangıcı ile ilgili araştırmalar yapın. En azından kod, modül vs nedir nerdedir gibi konuları öğrenin, yoksa yardım almanız zorlaşabilir, her şey formülle olmayabiliyor çünkü.

Bu konuda internette çok sayıda video var, örneğin bir tane buldum İZLEYİNİZ
Üstat gün değişince makro çalışmaz oldu :) Rica etsem bugününtarihi yerine şu formüle git şeklinde düzenleyebilir misiniz?

Formül şu aşağıdaki
=BUGÜN()

Yani makroyu çalıştır dediğimde direk bu formülün olduğu hücreye gitsin bu mümkün mü? Hem ilerleyen zamanlarda makro kısmından bu formülü güncelleyerek başka hücreler için de bunu uygulayabilirim. İlginiz için çok teşekkür ederim.
 

Necdet

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

Sorunuzu pek anlamamakla birlikte (çünkü günün tarihine ait satıra gitmek istiyordunuz) aşağıdaki kodu deneyin. Belki işinize yarar.
Kod N1 hücresine yazdığınız tarihe göre A sütununda o tarihi arar bulursa ilgili satıra gider.
Kodları İlgili Sayfanın Kod Bölümüne Kopyalamanız gerekmektedir.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)

Dim c As Range

If Intersect(Target, [N1]) Is Nothing Then Exit Sub

Set c = Range("A:A").Find([N1], LookIn:=xlFormulas, LookAt:=xlWhole)
If Not c Is Nothing Then
    Range("A" & c.Row).Select
End If

End Sub
 
Katılım
8 Ekim 2019
Mesajlar
9
Excel Vers. ve Dili
Türkçe
Merhaba,

Sorunuzu pek anlamamakla birlikte (çünkü günün tarihine ait satıra gitmek istiyordunuz) aşağıdaki kodu deneyin. Belki işinize yarar.
Kod N1 hücresine yazdığınız tarihe göre A sütununda o tarihi arar bulursa ilgili satıra gider.
Kodları İlgili Sayfanın Kod Bölümüne Kopyalamanız gerekmektedir.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)

Dim c As Range

If Intersect(Target, [N1]) Is Nothing Then Exit Sub

Set c = Range("A:A").Find([N1], LookIn:=xlFormulas, LookAt:=xlWhole)
If Not c Is Nothing Then
    Range("A" & c.Row).Select
End If

End Sub
Üstat çok dolambaçlı anlattım hata benim ama aslında sorunum çok komplike değil.

Benim tek isteğim var o da diyelim ki A29 hücresinde bir formül yazıyor. Bir buton oluşturup, ona bastığımda direk o formülün olduğu hücreye gideyim aslında derdim bu.

Bahsettiğim formül sizin de dediğiniz gibi aslında

=BUGÜN()

bu formül. Ancak ilerleyen zamanlarda sizin bu yapınızı farklı hücrelere de kolayca gidebilmek için kullanabilirim. O yüzden "bu sayfadaki şu formülün olduğu hücreye git" diye bir yapı mümkün müdür onu sormuştum.

Sıkılmadan yanıt verdiğiniz için ayrıca teşekkür ederim.
 

Necdet

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

Sütunda yada tüm sayfada tüm formüller seçilebilir ama hangi formülü istediğiniz nasıl seçilir, onu bilemiyorum.
Paylaşım sitelerinden birine (dosya.tc, dosya.co gibi) örnek dosyanızı eklerseniz belki ne demek istediğiniz daha iyi anlaşılır.
 

Necdet

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

Denemelerimde BUGÜN fonksiyon içeren ilk hücreyi seçme işlemi kodları :
Kodları bir modüle kopyalayıp deneyiniz.

Kod:
Sub BUGÜN_Formul_Olan_Hucreyi_Sec()
    
Dim hcr As Range

For Each hcr In Selection.SpecialCells(xlCellTypeFormulas, 23)
    If InStr(hcr.FormulaLocal, "BUGÜN") Then hcr.Activate
Next hcr
    
End Sub
 
Katılım
8 Ekim 2019
Mesajlar
9
Excel Vers. ve Dili
Türkçe
Merhaba tekrar,

Denemelerimde BUGÜN fonksiyon içeren ilk hücreyi seçme işlemi kodları :
Kodları bir modüle kopyalayıp deneyiniz.

Kod:
Sub BUGÜN_Formul_Olan_Hucreyi_Sec()
   
Dim hcr As Range

For Each hcr In Selection.SpecialCells(xlCellTypeFormulas, 23)
    If InStr(hcr.FormulaLocal, "BUGÜN") Then hcr.Activate
Next hcr
   
End Sub
Tamamdır üstat bu sefer kesin oldu, çok teşekkür ederim ilgi ve alanız için
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,371
Excel Vers. ve Dili
Ofis 365 Türkçe
Valla 40 yıl düşünsem formül aramak aklıma gelmezdi, işinize yaradıysa güle güle kullanınız. :)
 
Üst