fırıldak ile bulunan değere karşılık değer atama

Katılım
12 Kasım 2007
Mesajlar
327
Excel Vers. ve Dili
excel 2003
Sevgili forum üyeleri bayramınız kutlu olsun.
Makroyu düğmeye bağlamadan fırıldağın çalışması ile birlikte veya elle değer girildiğinde;

Ekte sunduğum dosyada fırıldak ile belirlediğimiz sayı değerine göre diğer sayfadan fırıldak değerine karşılık gelen satırdan istediğimiz sütundaki değeri fırıldağın yanındaki hücreye nasıl atayabiliriz
ilgilenen arkadaşlara teşekkür ederim.
 
Son düzenleme:
Katılım
13 Aralık 2007
Mesajlar
93
Excel Vers. ve Dili
excel 2003
merhaba..

bir modüle

Sub DeğerDeğiştirici1_Değiştir()
Set s1 = Sheets("VERİLER")
For a = 1 To s1.[A65536].End(3).Row
If Left(s1.Cells(a, "A"), Len(Range("d2").Text)) = Range("d2").Text Then
ActiveSheet.Range("E2").Value = s1.Cells(a, "D")
End If
Next
End Sub

d2 manuel girmek için.
Worksheet_Change(ByVal Target As Range) altına yazılabilir.
 
Katılım
12 Kasım 2007
Mesajlar
327
Excel Vers. ve Dili
excel 2003
Sayın cebir ilgine çok teşekkür ederim.
önerdiğin makroyu sayfaya ekledim ancak bazı hatalar veriyor.
örneğin 2 . stırdada aynı ismi veriyor 20 . satırdadada aynı ismi veriyor.
Birde hem fırıldak ile değer değiştirilebilecek hemde manuel olarak değer girilebilecek şekilde olması lazım bazanda makro tıkanıyor.
değiştirilebeilecek kısımları varsa memnun olurum
iyi bayramlar
yeni hali ile dosyam ektedir
 
Katılım
13 Aralık 2007
Mesajlar
93
Excel Vers. ve Dili
excel 2003
merhaba..
yukarıdaki kodu şöyle değişelim.

modül e
Sub DeğerDeğiştirici1_Değiştir()
For X = 1 To Sheets("VERİLER").[A65536].End(3).Row
If ActiveSheet.Cells(2, 4).Text = Sheets("VERİLER").Cells(X, 1).Text Then
ActiveSheet.Range("e2").Value = Sheets("VERİLER").Cells(X, 4)
End If
Next
End Sub

manuel olarak.
sayfanın kod sayfasına


Private Sub Worksheet_Change(ByVal Target As Range)
For X = 1 To Sheets("VERİLER").[A65536].End(3).Row
If ActiveSheet.Cells(2, 4).Text = Sheets("VERİLER").Cells(X, 1).Text Then
ActiveSheet.Range("e2").Value = Sheets("VERİLER").Cells(X, 4)
End If
Next
End Sub
 
Son düzenleme:
Katılım
12 Kasım 2007
Mesajlar
327
Excel Vers. ve Dili
excel 2003
Sayın Cebir ilgine çok teşekkür ederim.

Döngüyü 100 sayıya indirmeme rağmen çok yavaş çalışıyor.
Bunun döngü haricinde başka bir çözümü varmı ?
örneğin aşağıdaki kodları bu işe uygulayabilirmiyiz.

Private Sub Worksheet_Change(ByVal Target As Range)
sonuc = Cells(Range("A1:A20").Find([C2]).Row, Range("D1:D").Find([D1]).Column).Value
Cells(2, 5) = sonuc
End Sub

vakti olduğunda ilgilencek arkadaşlara şimdiden teşekkür ederim.
 
Son düzenleme:
Üst