Excel Forum
ALTIN ÜYELİK Hakkında Bilgi


Geri Git   Excel Forum > EXCEL-Soruları > Makro-VBA
Atatürk
Şifremi Unuttum

DUYURU SİSTEMİ / REKLAM PANOSU

Makro-VBA Makro veya VBA ile ilgili sorularınızı buraya gönderebilirsiniz.
Dosya ekleyebilirsiniz

Özel Arama


Yanıtla
 
Paylaş Konu Araçları Görünüm Modları
Eski 30-12-2017, 15:47   #1
castoridae
 
Giriş: 01/03/2016
Şehir: izmir
Mesaj: 22
Excel Vers. ve Dili:
2003
Varsayılan OnTime Methodu Çalışmıyor

Tüm forumdaşlara merhabalar. Excel'e internetten "Power Quary" eklentisi yardımı ile 5 dakika aralıklarla çektiğim bir miktar veri var. Bu veriyi farklı excel sayfalarına yine 5 dakika ara ile dağıtmak istiyorum. Kodu manuel olarak çalıştırdığımda hiçbir sorun ile karşılaşmazken, belirli zaman aralıkları ile çalıştırmaya çalışınca "Makro bu çalışma kitabında olmayabilir ya da Makrolar devre dışı" uyarısı alıyorum. Güvenlik ayarlarından "Tüm makroları etkinleştir" dememe rağmen sorun devam ediyor. Sorunun çözümü için yardımcı olabilecek kimse var mıdır acaba?
Kod aşağıdaki gibidir, saygılar.
Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Sub Auto_Open()
Application.OnTime Now + TimeValue("00:05:00"), "Dene"
End Sub


Sub Dene()

Dim HM(98, 3)

c = 1
Do While Sayfa3.Cells(c, 1) <> ""
c = c + 1
Loop
CSayisi = c - 2

Sayfa3.Select
Sayfa3.Range("C1:BCL200").Cut
Sayfa3.Cells(1, 4).Select
ActiveSheet.Paste
Sayfa3.Range("BCM1: BCM200").ClearContents
Sayfa3.Cells(1, 3) = Format(Now, "h:mm") ' Saati yazar

Sayfa4.Select
Sayfa4.Range("C1:BCL200").Cut
Sayfa4.Cells(1, 4).Select
ActiveSheet.Paste
Sayfa4.Range("BCM1: BCM200").ClearContents
Sayfa4.Cells(1, 3) = Format(Now, "h:mm") ' Saati yazar

k = 2
m = 2
Do While Sayfa3.Cells(k, 1) <> ""
CName = Sayfa3.Cells(k, 1)
   
    m = 2
    Do
    If Sayfa2.Cells(m, 1) = CName Then
    Sayfa3.Cells(k, 3) = Sayfa2.Cells(m, 6)
    Sayfa3.Cells(k, 2) = Sayfa2.Cells(m, 3)
    Sayfa4.Cells(k, 3) = Sayfa2.Cells(m, 5)
    Sayfa4.Cells(k, 2) = Sayfa2.Cells(m, 3)
    End If
   
    If Sayfa2.Cells(m, 1) = "" Then
    MsgBox Sayfa3.Cells(k, 1).Value & "Bulunamadı": GoTo 1

    End If
    m = m + 1
    Loop Until Sayfa2.Cells(m - 1, 1) = CName

k = k + 1
Loop

1:

'5 dakika
e = 2
Do While Sayfa4.Cells(e, 1) <> ""
'If Sayfa4.Cells(e, 4) = 0 Then GoTo 1
'If Sayfa4.Cells(e, 4) = "" Then GoTo 1

Sayfa6.Cells(e, 3) = (((Sayfa4.Cells(e, 3) - Sayfa4.Cells(e, 4)) * 100)) / Sayfa4.Cells(e, 4)
Sayfa6.Cells(e, 4) = (((Sayfa3.Cells(e, 3) - Sayfa3.Cells(e, 4)) * 100)) / Sayfa3.Cells(e, 4)

Sayfa7.Cells(e, 3) = (((Sayfa4.Cells(e, 3) - Sayfa4.Cells(e, 5)) * 100)) / Sayfa4.Cells(e, 5)
Sayfa7.Cells(e, 4) = (((Sayfa3.Cells(e, 3) - Sayfa3.Cells(e, 5)) * 100)) / Sayfa3.Cells(e, 5)
'15 Dakika
Sayfa8.Cells(e, 3) = (((Sayfa4.Cells(e, 3) - Sayfa4.Cells(e, 6)) * 100)) / Sayfa4.Cells(e, 6)
Sayfa8.Cells(e, 4) = (((Sayfa3.Cells(e, 3) - Sayfa3.Cells(e, 6)) * 100)) / Sayfa3.Cells(e, 6)

Sayfa9.Cells(e, 3) = (((Sayfa4.Cells(e, 3) - Sayfa4.Cells(e, 7)) * 100)) / Sayfa4.Cells(e, 7)
Sayfa9.Cells(e, 4) = (((Sayfa3.Cells(e, 3) - Sayfa3.Cells(e, 7)) * 100)) / Sayfa3.Cells(e, 7)

Sayfa10.Cells(e, 3) = (((Sayfa4.Cells(e, 3) - Sayfa4.Cells(e, 9)) * 100)) / Sayfa4.Cells(e, 9)
Sayfa10.Cells(e, 4) = (((Sayfa3.Cells(e, 3) - Sayfa3.Cells(e, 9)) * 100)) / Sayfa3.Cells(e, 9)

Sayfa11.Cells(e, 3) = (((Sayfa4.Cells(e, 3) - Sayfa4.Cells(e, 12)) * 100)) / Sayfa4.Cells(e, 12)
Sayfa11.Cells(e, 4) = (((Sayfa3.Cells(e, 3) - Sayfa3.Cells(e, 12)) * 100)) / Sayfa3.Cells(e, 12)

Sayfa12.Cells(e, 3) = (((Sayfa4.Cells(e, 3) - Sayfa4.Cells(e, 15)) * 100)) / Sayfa4.Cells(e, 15)
Sayfa12.Cells(e, 4) = (((Sayfa3.Cells(e, 3) - Sayfa3.Cells(e, 15)) * 100)) / Sayfa3.Cells(e, 15)

Sayfa13.Cells(e, 3) = (((Sayfa4.Cells(e, 3) - Sayfa4.Cells(e, 27)) * 100)) / Sayfa4.Cells(e, 27)
Sayfa13.Cells(e, 4) = (((Sayfa3.Cells(e, 3) - Sayfa3.Cells(e, 27)) * 100)) / Sayfa3.Cells(e, 27)

Sayfa14.Cells(e, 3) = (((Sayfa4.Cells(e, 3) - Sayfa4.Cells(e, 39)) * 100)) / Sayfa4.Cells(e, 39)
Sayfa14.Cells(e, 4) = (((Sayfa3.Cells(e, 3) - Sayfa3.Cells(e, 39)) * 100)) / Sayfa3.Cells(e, 39)
e = e + 1
Loop


For m = 6 To 14
'Dim HM(98, 3)
For k = 1 To CSayisi
Set s = Sheets(m)
HM(k, 1) = s.Cells(k + 1, 1)
HM(k, 2) = s.Cells(k + 1, 2)
HM(k, 3) = s.Cells(k + 1, 3)
Next k


For i = 1 To 5
For j = i To CSayisi - 1
If HM(i, 3) < HM(j + 1, 3) Then
HM(98, 1) = HM(i, 1): HM(98, 2) = HM(i, 2): HM(98, 3) = HM(i, 3)
HM(i, 1) = HM(j + 1, 1): HM(j + 1, 1) = HM(98, 1)
HM(i, 2) = HM(j + 1, 2): HM(j + 1, 2) = HM(98, 2)
HM(i, 3) = HM(j + 1, 3): HM(j + 1, 3) = HM(98, 3)
End If
Next j
Next i

For i = 1 To 5
For j = 1 To 3
Cells(m - 3, (i * 3) + j - 1) = HM(i, j)
Next j
Next i
Next m


c = 1
Do While Sayfa3.Cells(c, 1) <> ""
c = c + 1
Loop
CSayisi = c - 2

For m = 6 To 14
'Dim HM(98, 3)
For k = 1 To CSayisi
Set s = Sheets(m)
HM(k, 1) = s.Cells(k + 1, 1)
HM(k, 2) = s.Cells(k + 1, 2)
HM(k, 3) = s.Cells(k + 1, 3)
Next k

For i = 1 To 5
For j = i To CSayisi - 1
If HM(i, 3) > HM(j + 1, 3) Then
HM(98, 1) = HM(i, 1): HM(98, 2) = HM(i, 2): HM(98, 3) = HM(i, 3)
HM(i, 1) = HM(j + 1, 1): HM(j + 1, 1) = HM(98, 1)
HM(i, 2) = HM(j + 1, 2): HM(j + 1, 2) = HM(98, 2)
HM(i, 3) = HM(j + 1, 3): HM(j + 1, 3) = HM(98, 3)
End If
Next j
Next i

For i = 1 To 5
For j = 1 To 3
Cells(m + 6, (i * 3) + j - 1) = HM(i, j)
Next j
Next i

Next m

Call Auto_Open
End Sub
castoridae Çevrimdışı   Alıntı Yaparak Cevapla
Eski 30-12-2017, 16:48   #2
castoridae
 
Giriş: 01/03/2016
Şehir: izmir
Mesaj: 22
Excel Vers. ve Dili:
2003
Varsayılan

Yabancı bir forumdaki cevap ile sorunumu halletmiş bulunuyorum.
Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Application.OnTime Now + TimeValue("00:05:00"), "!Sayfa1.Dene"
"!Sayfa1." eklemesi ile kod şuan sorunsuz çalışmakta.
Saygılar.
castoridae Çevrimdışı   Alıntı Yaparak Cevapla
Yanıtla


Konu Araçları
Görünüm Modları

Gönderme Kuralları
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Açık
SimgelerAçık
[IMG] kodu Açık
HTML kodu Kapalı


Saat 23:36


Bu forum Elit NET - www.elitnet.com.tr tarafından sunulmaktadır.

Excel Eğitimi - Mobil Uygulama - Çorlu - Çorlu Web Tasarım -- Beylikdüzü mali müşavir - Lingerie - Dyeing Machine - Karton Bardak- Karton Bardak- Çorlu Dil Konuşma Terapisti- Çorlu Dil Konuşma Terapisti- Çorlu Konuşma Terapisti- Çorlu Konuşma Terapisti- Çorlu Özel Eğitim- Site Yönetimi- Pronet Tekirdağ- Çorlu Kamera- Pronet Edirne- Pronet Çorlu- Çorlu Araç Takip- Çorlu Su Arıtma- Gebze Emlak- Rampa- Rotary- Çorlu İnternet Sitesi- Çorlu Sürücü Kursu- Çorlu Sürücü Kursu- Şişli Avukat- Edirne Serbest Muhasebeci- Çorlu Etüt- İstanbul Botanik- Çorlu Sigorta- Kağıt Bardak- Kaplan Tekstil- Çorlu Perde- Çorlu Havuz- Makina- Danışmazlar-
Powered by vBulletin Version 3.7.2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Advertisement System V2.6 By   Branden