• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Dış veri al sonrası workbook.open olayının çalıştırılması

  • Konbuyu başlatan Konbuyu başlatan Zahir
  • Başlangıç tarihi Başlangıç tarihi
Katılım
21 Mart 2006
Mesajlar
234
Excel Vers. ve Dili
Excel 2003 - İngilizce
Merhaba;

Dış veri al ile Sql Server dan veri alıyorum. Yazdığım bir kod ile bu veriler üzerinde işlem yapıyorum. Bu kodu bir düğmeye atamıştım ama sadece tek bir işlem olduğu için ve dış veril al işlemi bittikten sonra uygulanması gerektiği için bunu workbook.open olayında çalıştırmak istedim. Ancak çalışma kitabı açıldıktan hemen sonra kodlarım çalıştı ve bittikten sonra da dış veri alma işlemi devreye girdi. Halbuki öncelikle dış veri alma işlemi bitip sonrasında kodların çalışması gerekiyor. Diğer olaylara baktım ama yazabileceğim uygun bir olayı göremedim. Bu konuda yapılabilecek herhangi birşey var mı?

Teşekkürler
 
Merhaba,

Kodlarınızı sayfanın "Change" olayına yazmayı deneyin.
 
Makronun başına ; Application.EnabledEvents = False

Bitişine de ; Application.EnabledEvents = True

Komutlarını ekleyip deneyin.
 
Makronun başına ; Application.EnabledEvents = False

Bitişine de ; Application.EnabledEvents = True

Komutlarını ekleyip deneyin.

Application.EnabledEvents = False satırında hata verdi.

Object doesn't support this property or method

Kodlarımda şu şekilde :

Private Sub Worksheet_Change(ByVal Target As Range)

Application.EnabledEvents = False

Dim ureticiKodu As Integer
Dim donem As Integer
Dim kumesNo As Integer
Dim cinsiyet As String
Dim canliYasi As Integer

Range("L2:M4250").ClearContents

Application.ScreenUpdating = False

For i = 3 To WorksheetFunction.CountA(Range("A:A"))

ureticiKodu = Cells(i, 1)
donem = Cells(i, 2)
kumesNo = Cells(i, 6)
cinsiyet = Cells(i, 7)
canliYasi = Cells(i, 10)

For j = 2 To i - 1

If Cells(j, 1) = ureticiKodu And Cells(j, 2) = donem And Cells(j, 6) = kumesNo And Cells(j, 7) = cinsiyet Then
Cells(i, 12) = Cells(j, 10)
Cells(i, 13) = Cells(j, 11)
End If

Next j

Next i

Application.ScreenUpdating = True

For k = 3 To 4250
If Cells(k, 14) = "" Or Cells(k, 15) = "" Or Cells(k, 16) = "" Or Cells(k, 17) = "" Then
MsgBox ("Hücrede silinmiş formül mevcut")
End If
Next k

MsgBox ("Güncelleme tamamlandı")
Application.EnabledEvents = True
End Sub
 
Geri
Üst