Soru Tümünü Yenile

Katılım
9 Ocak 2009
Mesajlar
557
Excel Vers. ve Dili
2002 TÜRKÇE
2007 TÜRKÇE
2010 TÜRKÇE
2019 TÜRKÇE
Merhabalar;

ActiveWorkbook.RefreshAll tümünü yenileme yapıyor. Peki sadece bir tanesini (örneğin adı merak olsun) yenilemek istersek nasıl bir makro yazılması gerekir.
 

BaY_KaPTaN

Kürşat
Altın Üye
Katılım
4 Mart 2008
Mesajlar
85
Excel Vers. ve Dili
Office 2007 Türkçe
Altın Üyelik Bitiş Tarihi
04-10-2028
Aşağıdaki kodu deneyiniz.

Kod:
ActiveWorkbook.Connections("merak").Refresh
 
Katılım
9 Ocak 2009
Mesajlar
557
Excel Vers. ve Dili
2002 TÜRKÇE
2007 TÜRKÇE
2010 TÜRKÇE
2019 TÜRKÇE
ActiveWorkbook.Connections("Sorgu - merak").Refresh

Sorgu eklenince sorun çözüldü. Teşekkür ederim.
 

mekist

Altın Üye
Katılım
13 Ağustos 2008
Mesajlar
263
Excel Vers. ve Dili
Office 365 ProPlus-Türkçe
Altın Üyelik Bitiş Tarihi
03-10-2026
Merhaba
Çalışma kitabımda 5 sayfa var, her sayfada queryden gelen tablolarım var, bunların 3 tanesini yenileyeceğim
Bir kaç yöntem denedim olmadı, sizde var mıdır yöntemi
 

BaY_KaPTaN

Kürşat
Altın Üye
Katılım
4 Mart 2008
Mesajlar
85
Excel Vers. ve Dili
Office 2007 Türkçe
Altın Üyelik Bitiş Tarihi
04-10-2028
Merhaba
Çalışma kitabımda 5 sayfa var, her sayfada queryden gelen tablolarım var, bunların 3 tanesini yenileyeceğim
Bir kaç yöntem denedim olmadı, sizde var mıdır yöntemi
Aşağıdaki kodda yenilenecek olanların isimlerini merak ile değişirseniz onları yeniler.

ActiveWorkbook.Connections("merak").Refresh
ActiveWorkbook.Connections("merak2").Refresh
ActiveWorkbook.Connections("merak3").Refresh
 

mekist

Altın Üye
Katılım
13 Ağustos 2008
Mesajlar
263
Excel Vers. ve Dili
Office 365 ProPlus-Türkçe
Altın Üyelik Bitiş Tarihi
03-10-2026
bunlar çalışmadı

aşağıdaki kodla yaptım, her tabloyu yeniledikten sonra diğerine geçtiği için zaman uzuyor, aynı anda yenilemeyi yaptırabilir miyiz
Kod:
Sub yenile()

Application.ScreenUpdating = False
Z = TimeValue(Now)
Sheets("Table 6").Select
Range("A1").Select
Selection.ListObject.QueryTable.Refresh

Sheets("Enflasyon").Select
Range("A1").Select
Selection.ListObject.QueryTable.Refresh BackgroundQuery:=False

Sheets("Table 0").Select
Range("A1").Select
Selection.ListObject.QueryTable.Refresh BackgroundQuery:=False

Sheets("USD Eklenmiş Veriler").Select
Range("A1").Select
Selection.ListObject.QueryTable.Refresh BackgroundQuery:=False

Sheets("ÖZET").Select
Range("F5").Select
Application.ScreenUpdating = True
MsgBox "Güncelleme" & CDate(TimeValue(Now) - Z) & " tamamlanmıştır", vbInformation
End Sub
 

BaY_KaPTaN

Kürşat
Altın Üye
Katılım
4 Mart 2008
Mesajlar
85
Excel Vers. ve Dili
Office 2007 Türkçe
Altın Üyelik Bitiş Tarihi
04-10-2028
bunlar çalışmadı

aşağıdaki kodla yaptım, her tabloyu yeniledikten sonra diğerine geçtiği için zaman uzuyor, aynı anda yenilemeyi yaptırabilir miyiz
Kod:
Sub yenile()

Application.ScreenUpdating = False
Z = TimeValue(Now)
Sheets("Table 6").Select
Range("A1").Select
Selection.ListObject.QueryTable.Refresh

Sheets("Enflasyon").Select
Range("A1").Select
Selection.ListObject.QueryTable.Refresh BackgroundQuery:=False

Sheets("Table 0").Select
Range("A1").Select
Selection.ListObject.QueryTable.Refresh BackgroundQuery:=False

Sheets("USD Eklenmiş Veriler").Select
Range("A1").Select
Selection.ListObject.QueryTable.Refresh BackgroundQuery:=False

Sheets("ÖZET").Select
Range("F5").Select
Application.ScreenUpdating = True
MsgBox "Güncelleme" & CDate(TimeValue(Now) - Z) & " tamamlanmıştır", vbInformation
End Sub
Office sürümünüz farklıymış.
Ondan dolayı bilemedim.
Konuyu inceleyen arkadaşlar için aşağıdaki kod ise tüm tabloları yeniler.

ActiveWorkbook.RefreshAll
 
Üst