- Katılım
- 16 Mayıs 2008
- Mesajlar
- 561
- Excel Vers. ve Dili
- Ev : Office Excel 2003
İş : Office Excel 2003
Teşekkürler Sy usubaykan, tam istediğim gibi çalışıyor. Zahmetler verdim, İyi akşamlar dilerim.
Rica ederim
DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
Teşekkürler Sy usubaykan, tam istediğim gibi çalışıyor. Zahmetler verdim, İyi akşamlar dilerim.
Sub Düşeyara()
Dim U As Long
For U = 6 To [D65536].End(3).Row
If WorksheetFunction.CountIf(Sheets("hesap planı").Range("B:B"), Cells(U, "D")) > 0 Then
Cells(U, "E") = WorksheetFunction.VLookup(Cells(U, "D"), Sheets("hesap planı").Range("B"), 3, 0)
Else
Cells(U, "E") = "Aradığınız değer bulunamadı."
End If
Next
End Sub
Sub Düşeyara()
Dim U As Long
For U = 6 To [D65536].End(3).Row
If WorksheetFunction.CountIf(Sheets("hesap planı").Range("B:B"), Cells(U, "D")) > 0 Then
[COLOR="Red"] Cells(U, "E") = WorksheetFunction.VLookup(Cells(U, "D"), Sheets("hesap planı").Range("B:D"), 2, 0)
Cells(U, "F") = WorksheetFunction.VLookup(Cells(U, "D"), Sheets("hesap planı").Range("B:E"), 3, 0)[/COLOR]
Else
Cells(U, "E") = ""
End If
Next
End Sub
Cells(U, "E") = WorksheetFunction.VLookup(Cells(U, "D"), Sheets("hesap planı").Range("B"), 2, 0)
Cells(U, "F") = WorksheetFunction.VLookup(Cells(U, "D"), Sheets("hesap planı").Range("B:E"), 3, 0)
İyi akşamlar.Selam,
Mukayese-1 sayfasının kod sayfasına aşağıdaki kodları ekleyiniz ve A1 hücresinden seçiminizi yapınız.Kod:Private Sub Worksheet_Change(ByVal Target As Range) Dim mcet As Worksheet Dim mkys As Worksheet Dim i As Long Dim sat As Long Set mcet = Sheets("Mukayese Cetveli") Set mkys = Sheets("Mukayese-1") Son = mcet.Range("AM65536").End(3).Row sat = 6 If Intersect(Target, mkys.Range("A1")) Is Nothing Then Exit Sub Application.ScreenUpdating = False Application.Calculation = xlCalculationManual mkys.Range("A7:J65536").ClearContents mkys.Range("F1:F3").ClearContents For i = 2 To Son If mkys.Range("A1") = mcet.Range("AM" & i) Then sat = sat + 1 'mkys.Cells(sat, "A") = mkys.Cells(sat, "B") = mcet.Cells(i, "A") mkys.Cells(sat, "C") = mcet.Cells(i, "B") mkys.Cells(sat, "D") = mcet.Cells(i, "C") mkys.Cells(sat, "E") = mcet.Cells(i, "D") mkys.Cells(sat, "F") = mcet.Cells(i, "AK") mkys.Cells(sat, "G") = mcet.Cells(i, "AM") mkys.Cells(sat, "H") = mcet.Cells(i, "AQ") mkys.Cells(sat, "I") = mcet.Cells(i, "AS") mkys.Cells(sat, "J") = mcet.Cells(i, "AW") End If Next mkys.Cells(1, "F") = WorksheetFunction.SumProduct(mkys.Range("D7:D65536"), mkys.Range("F7:F65536")) mkys.Cells(2, "F") = sat - 6 mkys.Cells(3, "F") = WorksheetFunction.SumProduct(mkys.Range("D7:D65536"), mkys.Range("J7:J65536")) Application.Calculation = xlCalculationAutomatic Application.ScreenUpdating = True MsgBox "Sayfa Güncellenmiştir." & vbLf & sat - 6 & " Adet Sonuç Bulunmuştur.", vbInformation End Sub
İyi akşamlar.
Ergün hocam yukarıda yazdığınız koda, A7 satırından itibaren sağındaki sütuna bakarak hücre dolu ise A sütununa otomatik sıra numarası verecek ek bir kod yazılabilirmi.
bulunuz. ve altına aşağıdaki kırmızı olan kodu ekleyiniz. İsteğiniz bu olması lazım.sat = sat + 1
sat = sat + 1
[COLOR="Red"]mkys.Cells(sat, "A") = sat - 6[/COLOR]
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("D2:D65536")) Is Nothing Then
On Error Resume Next
If Target = "" Then Exit Sub
If WorksheetFunction.CountIf(Sheets("HESAP PLANI").Range("B:B"), Cells(Target.Row, "D")) > 0 Then
Cells(Target.Row, "E") = WorksheetFunction.VLookup(Cells(Target.Row, "D"), Sheets("HESAP PLANI").Range("B:D"), 2, 0)
Else
Cells(Target.Row, "E") = ""
End If
End If
End Sub
Merhaba Arkadaşlar,
Paylaştığınız düşeyara formüllerini diğer tablolarımıda uygulattım.
Ekteki tablomda "veri girişi" sayfasında D sütununda düşeyara makrosu çalışıyor. Ancak aynı sayfada G sütununa da işlemi eklemek istiyorum ama bir türlü yapamadım.
kodlarda nasıl bir düzenleme yapmalıyım.Kod:Option Explicit Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("D2:D65536")) Is Nothing Then On Error Resume Next If Target = "" Then Exit Sub If WorksheetFunction.CountIf(Sheets("HESAP PLANI").Range("B:B"), Cells(Target.Row, "D")) > 0 Then Cells(Target.Row, "E") = WorksheetFunction.VLookup(Cells(Target.Row, "D"), Sheets("HESAP PLANI").Range("B:D"), 2, 0) Else Cells(Target.Row, "E") = "" End If End If End Sub
Yardım ve fikirlerinizi bekliyorum.
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("D2:D65536")) Is Nothing Then
If Target = "" Then Exit Sub
If WorksheetFunction.CountIf(Sheets("HESAP PLANI").Range("B:B"), Cells(Target.Row, "D")) > 0 Then
Cells(Target.Row, "E") = WorksheetFunction.VLookup(Cells(Target.Row, "D"), Sheets("HESAP PLANI").Range("B:D"), 2, 0)
Else
Cells(Target.Row, "E") = "Veri Yok"
End If
Else
If Not Intersect(Target, Range("G2:G65536")) Is Nothing Then
If Target = "" Then Exit Sub
If WorksheetFunction.CountIf(Sheets("HESAP PLANI").Range("B:B"), Cells(Target.Row, "D")) > 0 Then
Cells(Target.Row, "H") = WorksheetFunction.VLookup(Cells(Target.Row, "G"), Sheets("HESAP PLANI").Range("B:D"), 2, 0)
Else
Cells(Target.Row, "H") = "Veri Yok"
End If
End If
End If
End Sub
Sy Usubaykan, yine sorunumu hemen çözdünüz. İlgi ve yardımınız için teşekkür ederim.
İyi akşamlar.
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("D2:D65536")) Is Nothing Then
On Error Resume Next
If Target = "" Then Exit Sub
If WorksheetFunction.CountIf(Sheets("HESAP PLANI").Range("B:B"), Cells(Target.Row, "D")) > 0 Then
Cells(Target.Row, "E") = WorksheetFunction.VLookup(Cells(Target.Row, "D"), Sheets("HESAP PLANI").[COLOR="Red"]Range("B:D")[/COLOR], 2, 0)
Else
Cells(Target.Row, "E") = ""
End If
End If
End Sub
"WorksheetFunction.VLookup(Cells(Target.Row, "G"), Sheets("HESAP PLANI").Range("B:D"), 2, 0)"
WorksheetFunction.Index(Sheets("HESAP PLANI").[COLOR=DarkRed]Range("A:J")[/COLOR],WorksheetFunction.Match(Target, Sheets("HESAP PLANI").[COLOR=RoyalBlue]Range("A:A")[/COLOR], 0), [COLOR=Red]3[/COLOR])
Tekrardan çok teşekkürler Sy Usubaykan, sizin ve forum sayesinde düşeyara konusunda bilgim birhayli arttı.
=eğer(e6="";"";düşeyara(e6;ürünler!$c$5:$e$21;3;0))
iyi günler bende bu şekilde formülle yapıyordu bu konuyu inceledim güzel bir örnek mu formülün makro ile olması benim ekdeki dosyayada uygulamak istiyorum yapamadım yardımlarınız için teşekkür ederi
yani yapmak isdeğim ürünler sayfasındaki ürünü veri doğrulamadan liste ile ürünü alış sayfasındaki alınan ürün adı sütununa getirdiyorum ve hangi ürünü yazarsam birim fiyatı ürün sayfasındaki belirttiğim fiyat gelmesini istiyorum makro ile