• DİKKAT

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

belirli bir süre sonrası makro çalışsın

  • Konbuyu başlatan Konbuyu başlatan maliex
  • Başlangıç tarihi Başlangıç tarihi
Katılım
22 Eylül 2019
Mesajlar
231
Excel Vers. ve Dili
professional plus 2016-türkçe
iyi günler

excel dosyası açıldıktan 5 saniye sonra makronun çalışmasını nasıl sağlıya bilirim
not 1: kur ları dosya açılır açılmaz webden çekip güncelliyor ama güncelleme sırasında hemen makro devreye girip hesaplama yapmaya başladığı için sorun oluyor
bu sebeple 5 saniyeyi webden kur güncelleme için ayırıyorum...(başka alternatif çözüm önerisi olan vardır die ek açıklama yaptım)

çok teşekkürler

not 2: aşağıdaki kod iş görmedi (beklemeyi yapmıyor)
Private Sub Workbook_Open()
Application.Wait (Now + TimeValue("0:00:05"))
 
Merhaba

Aşağıdaki şekildeki kod işinizi görür.

Selamlar...

Kod:
Private Sub Workbook_Open()
 DoEvents
 timer1 = Timer
 Do While Timer - timer1 < 5
 DoEvents
 Loop
 DoEvents
 Call İlgili_makro
End Sub
 
Elimde 2 adet makro var biri buton ile çalıştırılıyor. Makronun adı güncelle... Güncelleme makrosu çalıştırılınca 10 saniye sonra güncellenen verilerin kopyalanmasını sağlayacak diğer makro devreye girsin çalışsın istiyorum. Şu an ben butona tıkladığımda güncelleme yapılırken kopyalama işlemi de aynı anda yapıyor.. Ve güncelenen verinin tekrar kopyalanması için butona tekrar basıyorum... (Her iki makroyu tek makro içine aldım)
 
"Güncelle" makronuzun içeriği nedir?
 
Hisse senetleri :) internetten canlı alıyor ama manuel güncel istiyorum sayfa belli aralıklarla güncellemesin diye
 
XML:
Sub Anlık_Hisse_Guncelle()
'
' Anlık_Hisse_Guncelle Makro
'

    Sheets("CANLI").Select
    ActiveWorkbook.Connections("Bağlantı1").Refresh

' Hisseleri İSYATIRIM Sekmesine Kopyala
'ISYATIRIM sekmesini seçip görünür yapar. hücreleri kopyalayıp tekrar gizler.
Sheets("ISYATIRIM").Visible = True
Sheets("ISYATIRIM").Select
    Cells.Select
    Range("A98").Activate
    Selection.Copy
Sheets("ISYATIRIM").Select
ActiveWindow.SelectedSheets.Visible = False

'ISYATIRIM sekmesinden kopyalanan hücreleri ISYATIRIM_GUNCELLE sekmesine yapıştırır ve hisselerin adı yazılı hücrelerdeki en son boşluğu(? gibi bişey) değiştirden siler ve sekmeyi tekrar gizler.
Sheets("ISYATIRIM_GUNCELLE").Visible = True
Sheets("ISYATIRIM_GUNCELLE").Select
    Cells.Select
    Range("A119").Activate
    ActiveSheet.Paste
    ActiveWindow.SmallScroll Down:=-39
    Range("A138").Select
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = "GOODY ?"
    Range("A138").Select
    ActiveCell.FormulaR1C1 = "GOODY ?"
    Range("B135").Select
    Cells.Replace What:=" ?", Replacement:="", LookAt:=xlPart, SearchOrder _
        :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
    Range("A138").Select
    ActiveCell.FormulaR1C1 = "GOODY"
    Range("B141").Select
Sheets("ISYATIRIM_GUNCELLE").Select
ActiveWindow.SelectedSheets.Visible = False

'ISYATIRIM_GUNCELLE sekmesindeki tanımlı hisseleri ISYATIRIM_KOPYALA sekmesinde düşeyara formulü ile sütunlardaki bilgileri alır ve bütün satırlara uygulattır. Daha sonra sekmeyi tekrar gizler.
Sheets("ISYATIRIM_KOPYALA").Visible = True
Sheets("ISYATIRIM_KOPYALA").Select
    Range("C6").Select
    ActiveCell.FormulaR1C1 = _
        "=IFERROR(VLOOKUP(RC[-1],ISYATIRIM_GUNCELLE!R99C1:R665C6,2,FALSE),"""")"
    Range("D6").Select
    ActiveCell.FormulaR1C1 = _
        "=IFERROR(VLOOKUP(RC[-2],ISYATIRIM_GUNCELLE!R85C1:R675C6,3,FALSE),"""")"
    Range("E6").Select
    ActiveCell.FormulaR1C1 = _
        "=IFERROR(VLOOKUP(RC[-3],ISYATIRIM_GUNCELLE!R81C1:R671C6,4,FALSE),"""")"
    Range("F6").Select
    ActiveCell.FormulaR1C1 = _
        "=IFERROR(VLOOKUP(RC[-4],ISYATIRIM_GUNCELLE!R85C1:R673C6,5,FALSE),"""")"
    Range("G6").Select
    ActiveCell.FormulaR1C1 = _
        "=IFERROR(VLOOKUP(RC[-5],ISYATIRIM_GUNCELLE!R3C1:R684C6,6,FALSE),"""")"
    Range("C6:G6").Select
    Selection.AutoFill Destination:=Range("C6:G877"), Type:=xlFillDefault
    Range("C6:G877").Select
Sheets("ISYATIRIM_KOPYALA").Select
ActiveWindow.SelectedSheets.Visible = False
    Sheets("CANLI").Select
    Range("C17").Select

End Sub
 
XML:
Sub Anlık_Hisse_Guncelle()
[COLOR=rgb(97, 189, 109)]'
' Anlık_Hisse_Guncelle Makro
'[/COLOR]

    Sheets("CANLI").Select
    ActiveWorkbook.Connections("Bağlantı1").Refresh

[COLOR=rgb(97, 189, 109)]' Hisseleri İSYATIRIM Sekmesine Kopyala
'ISYATIRIM sekmesini seçip görünür yapar. hücreleri kopyalayıp tekrar gizler.[/COLOR]
Sheets("ISYATIRIM").Visible = True
Sheets("ISYATIRIM").Select
    Cells.Select
    Range("A98").Activate
    Selection.Copy
Sheets("ISYATIRIM").Select
ActiveWindow.SelectedSheets.Visible = False

[COLOR=rgb(97, 189, 109)]'ISYATIRIM sekmesinden kopyalanan hücreleri ISYATIRIM_GUNCELLE sekmesine yapıştırır ve hisselerin adı yazılı hücrelerdeki en son boşluğu(? gibi bişey) değiştirden siler ve sekmeyi tekrar gizler.[/COLOR]
Sheets("ISYATIRIM_GUNCELLE").Visible = True
Sheets("ISYATIRIM_GUNCELLE").Select
    Cells.Select
    Range("A119").Activate
    ActiveSheet.Paste
    ActiveWindow.SmallScroll Down:=-39
    Range("A138").Select
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = "GOODY ?"
    Range("A138").Select
    ActiveCell.FormulaR1C1 = "GOODY ?"
    Range("B135").Select
    Cells.Replace What:=" ?", Replacement:="", LookAt:=xlPart, SearchOrder _
        :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
    Range("A138").Select
    ActiveCell.FormulaR1C1 = "GOODY"
    Range("B141").Select
Sheets("ISYATIRIM_GUNCELLE").Select
ActiveWindow.SelectedSheets.Visible = False

[COLOR=rgb(97, 189, 109)]'ISYATIRIM_GUNCELLE sekmesindeki tanımlı hisseleri ISYATIRIM_KOPYALA sekmesinde düşeyara formulü ile sütunlardaki bilgileri alır ve bütün satırlara uygulattır. Daha sonra sekmeyi tekrar gizler.[/COLOR]
Sheets("ISYATIRIM_KOPYALA").Visible = True
Sheets("ISYATIRIM_KOPYALA").Select
    Range("C6").Select
    ActiveCell.FormulaR1C1 = _
        "=IFERROR(VLOOKUP(RC[-1],ISYATIRIM_GUNCELLE!R99C1:R665C6,2,FALSE),"""")"
    Range("D6").Select
    ActiveCell.FormulaR1C1 = _
        "=IFERROR(VLOOKUP(RC[-2],ISYATIRIM_GUNCELLE!R85C1:R675C6,3,FALSE),"""")"
    Range("E6").Select
    ActiveCell.FormulaR1C1 = _
        "=IFERROR(VLOOKUP(RC[-3],ISYATIRIM_GUNCELLE!R81C1:R671C6,4,FALSE),"""")"
    Range("F6").Select
    ActiveCell.FormulaR1C1 = _
        "=IFERROR(VLOOKUP(RC[-4],ISYATIRIM_GUNCELLE!R85C1:R673C6,5,FALSE),"""")"
    Range("G6").Select
    ActiveCell.FormulaR1C1 = _
        "=IFERROR(VLOOKUP(RC[-5],ISYATIRIM_GUNCELLE!R3C1:R684C6,6,FALSE),"""")"
    Range("C6:G6").Select
    Selection.AutoFill Destination:=Range("C6:G877"), Type:=xlFillDefault
    Range("C6:G877").Select
Sheets("ISYATIRIM_KOPYALA").Select
ActiveWindow.SelectedSheets.Visible = False
    Sheets("CANLI").Select
    Range("C17").Select

End Sub

Yukarda; ilk satırlarda geçen;
XML:
Sub Anlık_Hisse_Guncelle()
'
[COLOR=rgb(97, 189, 109)]' Anlık_Hisse_Guncelle Makro
'[/COLOR]
[COLOR=rgb(184, 49, 47)]
    Sheets("CANLI").Select
    ActiveWorkbook.Connections("Bağlantı1").Refresh[/COLOR]

'[COLOR=rgb(97, 189, 109)] Hisseleri İSYATIRIM Sekmesine Kopyala[/COLOR] [B](YUKARIDAKİ GÜNCELEME İŞLEMİ UZUN SÜRDÜĞÜNDEN ALT TARAFI 10 SNYE GEÇ ÇALIŞTIRACAK)[/B]
[COLOR=rgb(97, 189, 109)]'ISYATIRIM sekmesini seçip görünür yapar. hücreleri kopyalayıp tekrar gizler.[/COLOR]
Sheets("ISYATIRIM").Visible = True
Sheets("ISYATIRIM").Select
.....
 
Geri
Üst