Excel Vba Forum - Excelce.Net

SORU ve CEVAPLAR (Yazılabilir) => Microsoft Excel, Vba, Makro, Formül vb. Soruları => Çözülen Excel, Vba, Makro, Formül vb. Soruları => Konuyu başlatan: drejan62 - 15 Aralık 2010, 11:37:29

Başlık: [Çözüldü] Sayfa yenilemesi hakkında (Worksheet_Change çalışmıyor)
Gönderen: drejan62 - 15 Aralık 2010, 11:37:29
Merhabalar
Aşağıdaki kodlarla (hüseyin beyin yardımı ile) rapor sayfasında makro ile güncelleme yapmak istiyorum fakat, e sütununda bulunan mevcut verilerin karşılığığını kendiliğinden hesaplamıyor ya veriyi kendim tekrar girmem gerek yada her hücreyi tıklamam gerekiyor.
Ne yapmam gerekirki veri girişi yada hücreye tıklamadan kendiğilinden makro çalışsın
Kod: [Seç]
Option Explicit
 
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
    If Not Intersect(Target, Range("E2:E65536")) Is Nothing Then
            If Target = "" Then Exit Sub
                If WorksheetFunction.CountIf(Sheets("Skont").Range("a:a"), Cells(Target.Row, "e")) > 0 Then
                Cells(Target.Row, "f") = WorksheetFunction.VLookup(Cells(Target.Row, "e"), Sheets("Skont").Range("a:b"), 2, 0)
                       End If
        End If
End Sub
Başlık: Ynt: Sayfa yenilemesi hk
Gönderen: Bülent Öztürk - 15 Aralık 2010, 11:45:32
Merhaba Ercan Bey,

Sayfanın Worksheet_Change olayına yazılan kodun özelliğidir zaten sayfada meydana gelecek bir değişiklikte çalışmak.
Sizin tam olarak yapmaya çalıştığınız nedir?
Başlık: Ynt: Sayfa yenilemesi hk
Gönderen: drejan62 - 15 Aralık 2010, 11:48:32
Merhaba Ercan Bey,

Sayfanın Worksheet_Change olayına yazılan kodun özelliğidir zaten sayfada meydana gelecek bir değişiklikte çalışmak.
Sizin tam olarak yapmaya çalıştığınız nedir?
Üstad bir başka çalışma kitabından verileri alıy makronun yazıldığı çalışma kitabının rapor sayfasına kopyalıyorum.
Bu kopyalamadan sonra f sütununa e sütunundaki verilerin karışılığını Skont sayfasından bularak getirmesini istiyorum.

Veya makro ile daşeyarayı Sayfanın kod bölümüne değilde modül içerisine yazabilirmiyiz acaba?
Formül ile yapmak istediğim; f sütununa =düşeyara(e2;"Skont!"a:b;2)
bu formülü f sütununda en son dosu satıra kadar çokaltan bir makro yazabilirmiyiz.
Başlık: Ynt: Sayfa yenilemesi hk
Gönderen: Bülent Öztürk - 15 Aralık 2010, 16:17:37
Aynı kodu modüle yazıp ve modülü bir düğmeye atayıp çalıştırabilirsiniz.
Sadece Target yerine ActiveCell yazacaksınız.
Başlık: Ynt: Sayfa yenilemesi hk
Gönderen: drejan62 - 15 Aralık 2010, 16:29:51
Sağol üstad,
peki sayfa güncellemelerde neden kendiliğinden değişmiyor acaba
illaki her hücreye verimi girmek lazım. Oysa kopyalama yöntemi ile yüzlerce veri zaten girilmiş durumda
Başlık: Ynt: Sayfa yenilemesi hk
Gönderen: Bülent Öztürk - 15 Aralık 2010, 16:40:16
Bahsi geçen sayfaya veriyi yapıştırdığınızda çalışmıyor mu, anlamadım?
Başlık: Ynt: Sayfa yenilemesi hk
Gönderen: drejan62 - 15 Aralık 2010, 16:44:11
Bahsi geçen sayfaya veriyi yapıştırdığınızda çalışmıyor mu, anlamadım?
Evet üstat verileri sayfaya yapıştırıyorum ama makro çalışmıyor.
Fakat ilgili hücreye çift tıklama yaptığımda makro çalışıyo
Başlık: Ynt: Sayfa yenilemesi hk
Gönderen: Bülent Öztürk - 15 Aralık 2010, 16:47:37
Yapıştırma işleminin de Change olayını tetiklemesi lazım.
Başka kodlar var mı dosyanızda?
Başlık: Ynt: Sayfa yenilemesi hk
Gönderen: drejan62 - 15 Aralık 2010, 16:50:45
Yapıştırma işleminin de Change olayını tetiklemesi lazım.
Başka kodlar var mı dosyanızda?
Evet üstat  başka kodlarda var, en azından ilgili safaya alınacak dökümleri makro ile aldırıyorum.
Başlık: Ynt: Sayfa yenilemesi hk
Gönderen: Bülent Öztürk - 15 Aralık 2010, 16:54:11
Kod: [Seç]
Application.EnableEvents = False
Kod: [Seç]
Application.ScreenUpdating = False
Yukarıdaki gibi kodlar varsa, Change olayını engelleyebilir. Kontrol eder misiniz?
Başlık: Ynt: Sayfa yenilemesi hk
Gönderen: drejan62 - 15 Aralık 2010, 17:04:56
üstat alttaki gibi var
Kod: [Seç]
Application.CutCopyMode = False
Başlık: Ynt: Sayfa yenilemesi hk
Gönderen: Bülent Öztürk - 15 Aralık 2010, 17:10:10
Dosyanızı görme imkanım var mı?
Başlık: Ynt: Sayfa yenilemesi hk
Gönderen: drejan62 - 15 Aralık 2010, 17:15:10
Dosyanızı görme imkanım var mı?
Dosya  çok büyük  ben örnek bir dosya hazırlayayım aynı hata orda da olursa onu göndereyim üstad
Başlık: Ynt: Sayfa yenilemesi hk
Gönderen: Bülent Öztürk - 15 Aralık 2010, 17:19:08
Tamam.
Başlık: Ynt: Sayfa yenilemesi hk
Gönderen: drejan62 - 15 Aralık 2010, 17:21:31
Üstad fazla detaya gerek kalmadı
Ekteki dosyanın sayfa3 de e sütununu rapor sayfasına kendimizde kopyala yapıştır dedğimizde makrolar çalışmıyor.
İllaki e sütnunudaki hücrelere çift tıklamamız gerekiyor.


[Forum yazılım güncelleme esnasında sorun oluştuğundan eklendi silinmiştir.]
Başlık: Ynt: Sayfa yenilemesi hk
Gönderen: Bülent Öztürk - 15 Aralık 2010, 17:37:45
Şu şekilde işinize yarar mı?

Kod: [Seç]
Option Explicit
Dim i As Long

Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
Application.EnableEvents = False
If Not Intersect(Target, Range("E2:E65536")) Is Nothing Then
    For i = 1 To Range("E65536").End(3).Row
    Cells(i, "f") = WorksheetFunction.VLookup(Cells(i, "e"), Sheets("Skont").Range("a:b"), 2, 0)
    Next
End If
Application.EnableEvents = True
Application.CutCopyMode = False
End Sub

Başlık: Ynt: Sayfa yenilemesi hk
Gönderen: drejan62 - 15 Aralık 2010, 17:56:59
Tamamdır üstad
Teşekkürler.
 :cicek1
Başlık: Ynt: [Çözüldü] Sayfa yenilemesi hakkında (Worksheet_Change çalışmıyor)
Gönderen: Bülent Öztürk - 16 Aralık 2010, 08:35:18
Rica ederim.  :cicek1
Çalışmalarınızda başarılar.
Başlık: Ynt: [Çözüldü] Sayfa yenilemesi hakkında (Worksheet_Change çalışmıyor)
Gönderen: gnasuh - 15 Mart 2016, 17:03:15
Merhaba,
Yardıma ihtiyacım var. Ekte excel dosyasında sayfa 1 ve 2 de açıklama yaptım. Yapmak istediğim iki change makrosunu aynı sayfada çalıştırmak, düşeyara ve kopyalama ile hücreye veri geldiğinde change makrosu çalışmıyor. Çözüm bulabilir miyiz?
Başlık: Ynt: [Çözüldü] Sayfa yenilemesi hakkında (Worksheet_Change çalışmıyor)
Gönderen: gnasuh - 17 Mart 2016, 15:14:24
Yardım edecek yok mu?
Başlık: Ynt: [Çözüldü] Sayfa yenilemesi hakkında (Worksheet_Change çalışmıyor)
Gönderen: Bülent Öztürk - 27 Mart 2016, 00:44:17
Merhaba,

İşlemi yapacak olan makroyu bir modüle yazın.
Sayfaların change olaylarına da makroyu çağırın.

Bu şekilde sayfa içeriği değiştiğinde yine makronun çalışacaktır.