Verilen değere göre farklı hücreye bilgi veren bir macro

Katılım
6 Ağustos 2004
Mesajlar
10
Benim sorunum şöyle;
A1 hücresine 1 yazınca D54 hücresi seçilsin ve ben oraya bir bilgi girişi yapayım. Daha sonra yine A1 hücresine 2 yazınca C12 hücresi seçilsin ve ben oraya bir bilgi girişi yapayım. Daha sonra yine A1 hücresine 3 yazınca H45 hücresi seçilsin ve ben oraya bir bilgi girişini yapayım.
A1 hücresindeki sayı 34'e kadar değişip devam edebilirmi.

Bu olay Makro ile yapılacağını öğrendim. Ama nasıl olacağı konusundada bilgim yok. Makronun nasıl yazılacağı ve nereye yazılacağı konusunda yardımlarınızı bekliyorum.
İlgilenenlere şimdiden teşekkür ederim.
 

htsumer

Altın Üye
Altın Üye
Katılım
7 Eylül 2004
Mesajlar
946
Excel Vers. ve Dili
Excel-2003
Altın Üyelik Bitiş Tarihi
16.08.2026
Sayfa1 Kod sayfasına;
Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$a$1" Then Range("D54").Select
End Sub
Kodu yazdıktan sonra A1 Hücresine geldiğinizde D54 Hücresine gelecektir.Gerisini siz yaparsınız.Seçilen Hücreyi renk vermek isterseniz
Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$F$10" Then Range("d54").Select
Range("d54").Interior.ColorIndex = 6
End Sub
Seçilen Hücreye Formul yazdırmak isterseniz
Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$F$10" Then Range("d4").Select
Range("d54").Formula = "=A1+A3"
End Sub
 
Katılım
19 Ağustos 2004
Mesajlar
28
Merhabalar.Sanırım aşağıdaki kod işine yarar.
Bu kodu yazmak için Sayfa1(Sheet1) üzerine sağ tuşla tıkla çıkan menüden Kod görüntüle(View Code) yi seç.KArşına VB kod ekranı çıkar.Aşağıdaki kodu kopyalarsan buraya çalışır.A1 e 1 yazınca D54, 2 yazınca C!2 ye bu şekilde devam eder.
Kolay gelsin
:arkadas:
 
Katılım
19 Ağustos 2004
Mesajlar
28
Ã?zürdilerim kodu yazmayı unutmuşum :kafa:

Private Sub Worksheet_Change(ByVal Target As Range)
If Range("A1").Value = 1 Then
Range("D54").Select
ElseIf Range("A1").Value = 2 Then
Range("C12").Select
ElseIf Range("A1").Value = 3 Then
Range("H45").Select
End If
End Sub
Kolay gelsin :arkadas:
 
Katılım
6 Ağustos 2004
Mesajlar
10
Bir makro yazarmısınız

Cevap yazan arkadaşlara teşekkürler. Henüz denemedim. Denedikten sonra tekrar yazarım. Saygılarımla,
 
Katılım
10 Eylül 2004
Mesajlar
16
her defasında A1 hücresine gitmene gerek yok. aşağıdaki kodları bir module yerleştir ve bir tanede kısayol ayarla ona, mesela ben olsam Ctrl+w yaparım.
Kod:
Sub git()

Select Case InputBox("rakamı yaz")
Case 1
[D54].Select
Case 2
[D54].Select
Case 3
[H45].Select
'bu şekilde devam ettir

End Select

End Sub
 
Katılım
6 Ağustos 2004
Mesajlar
10
Bir makro yazarmısınız

"htsumer" in yazdığı formül A1 hücresine 1 yazınca D54'e gidiyor. Fakat A1 hücresini tekrar seçtirmiyor. Her A1e gelince D54'e geçiyor. "donhuan" ın yazdığı formül A1 hücresine 1 yazınca D54e gidiyor. Fakat D54'e bir bilgi girişini yapıp enter'e basınca tekrar D54'e dönüyor. Eğer A1 deki girilen sayı silinirse normal çalışıyor.
Yani D54'e geçerken yada D54'e bilgi girmeden A1 deki sayı silinebilirmi.
Tabiki silinmeden sonra D54 de kalmak şartı ile.
Bu uğraşılarınız için tekrar tekrar teşekkürlerimi sunarım.
Saygılarımla,
Not: eXpert'in bilgisini yeni gördüm. Bu nedenle onu denedikten sonra cevap yazarım. Onada teşekkürlerimi sunarım.
 
Katılım
6 Ağustos 2004
Mesajlar
10
eXpert'in bilgisini denedim ona ve diğer ilgilenen "htsumer" ve "donhuan" ada teşekkürlerimi sunarım. Þimdilik işimi gördüm. Hepinize sağlıklı günler dilerim.
 
Üst