Excel Içindeki Tabloyu Access Vba Ile Refresh Etmek Hk.
#1
Herkese Merhaba,

Bir projemde .csv dosyadan veri aktarımı yapıyorum fakat access de ondalık ayraç virgülü ile veri ayrım virgülü çakışıyor. Ayrıca bazı sütun verilerini anlamsız şekilde bölüyor. Hem de sadece ayrım belirteci "," virgül olmasına rağmen. Fakat .csv yi excel powerquery ile yüklediğimde excele hatasız aktarım yapıyor. Bende access üzerinde okuyamazsam excel üzerinden veriyi okuyayım istedim fakat her seferinde ilgili exceli açıp tabloyu güncellemem gerekiyor. Bu aşamayı atlayabileceğim bir güncelleme kodu yazmak istiyorum accessde. Daha önceden exceli açıp hücrelere vei yazdırdığımız bir kod vardı aşağıdaki gibi. Ama burada veri yazdırmayacağım açılan sayfada yer alan tabloyu refresh edip exceli kapatacağım. Nasıl bir kod yazmalıyım.


Visual Basic
  1. Dim XLapp As Object
  2. Dim XLwb  As Object
  3. Dim XLsh  As Object
  4.  
  5. Set XLapp = CreateObject("Excel.Application")
  6.  
  7. Set XLwb = XLapp.Workbooks.Open("C:\ExcelPrg\Data\GrfData.xls")
  8.  
  9. Set XLsh = XLwb.Sheets(1)
  10.  
  11. XLapp.Visible = True
  12.  
  13. XLsh.[D2] = DFirst("GRF2", "GrfkVeri")
  14. XLsh.[D3] = DFirst("GRF3", "GrfkVeri")
  15. XLsh.[D4] = DFirst("GRF1", "GrfkVeri")
  16. XLsh.[D5] = DFirst("GRF4", "GrfkVeri")
  17. XLsh.[D6] = DFirst("GRF5", "GrfkVeri")
  18.  
  19. .......
  20. .......





  Alıntı
Bu mesajı beğenenler:
#2
cvs dosyası virgül ile sütunlar oluşturulmuş ise ondalık sayılar nokta ile ayrıştırılmış olması gerekir.
PC Bölgesel ayarlardan Liste ayırıcı genelde noktalı virgül olarak ayarlıdır, sonradan bu özellik virgül ile değiştirilmiş ise ondalık sayılar sorun çıkarır.
cvs dosyanın başına SEP=, seklinde yazılması excel'in dosyayı sihirbaz açmadan düzgün şekilde açar.

Örnek iki satırlık cvs dosyası olsa öneriler olur.

CreateObject("Scripting.FileSystemObject").OpenTextFile(DosyaAl, 1, -2) ile cvs dosyası açıp Split-virgül ile ayrıştırılabilir.


Koda
Visual Basic
  1. Dim pt As PivotTable
  2.    For Each pt In XLsh.PivotTables
  3.        pt.RefreshTable
  4.    Next pt


ekleme yapılabilir.



  Alıntı
Bu mesajı beğenenler:
#3
(04-08-2023, 02:29)dsezgin demiş ki: cvs dosyası virgül ile sütunlar oluşturulmuş ise ondalık sayılar nokta ile ayrıştırılmış olması gerekir.
PC Bölgesel ayarlardan Liste ayırıcı genelde noktalı virgül olarak ayarlıdır, sonradan bu özellik virgül ile değiştirilmiş ise ondalık sayılar sorun çıkarır.
cvs dosyanın başına SEP=, seklinde yazılması excel'in dosyayı sihirbaz açmadan düzgün şekilde açar.

Örnek iki satırlık cvs dosyası olsa öneriler olur.

CreateObject("Scripting.FileSystemObject").OpenTextFile(DosyaAl, 1, -2) ile cvs dosyası açıp Split-virgül ile ayrıştırılabilir.


Koda
Visual Basic
  1. Dim pt As PivotTable
  2.    For Each pt In XLsh.PivotTables
  3.        pt.RefreshTable
  4.    Next pt


ekleme yapılabilir.

Teşekkürler hocam. Accessten komut vermek yerine excelin workbook open yordamına ilgili tabloyu refresh edecek komut ve sonrasında da dosyayı kapatacak komut yazdım. Access tarafından sadece ilgili excel dosyasını aç komutu veriyorum Smile). Ama yine notlarıma bu çözümü de aldım, teşekkürler hocam.



  Alıntı
Bu mesajı beğenenler:


Benzer Konular...
Konu: Yazar Cevaplar: Gösterim: Son Mesaj
  [FORM] Bir Formdan Başka Bir Formdaki Butonun Click Olayını Aktif Etmek M_Kemal_Askeri 2 346 09-06-2026, 18:39
Son Mesaj: M_Kemal_Askeri
  [TABLO] Firmalardan Yapılacak Kesintileri Accesste Takip Etmek loocas 1 411 02-02-2026, 01:43
Son Mesaj: dsezgin
  [SORGU] Sorgu Ifadesi Içindeki Fonksiyon Ifade Içinde Kullanılamaz Hatası Mecnun24 7 871 27-08-2024, 16:53
Son Mesaj: Mecnun24
access-sql-18 Format([giris], "dd-mm-yyyy" Sorgu Ifadesi Içindeki Derleme Hatası. gncbil 5 751 07-06-2024, 10:48
Son Mesaj: dsezgin
  [TABLO] Excel Aktarımı kahramanselim 6 978 06-04-2024, 21:11
Son Mesaj: kahramanselim
  Access Yerel Bir Tabloyu Bağlantılı Bir Tabloya Kod Ile Dönüştürme Yapılabilir Mi? umutakkaya 4 654 12-03-2024, 15:13
Son Mesaj: umutakkaya
  Bir Belgenin Yazdırılmış Olması Durumunu Kontrol Etmek Hk? adnnfrm 7 1.070 03-02-2024, 03:24
Son Mesaj: dsezgin
  Access'e Yeni Tablo Oluşturarak Excel Import Etmek, Table'ı Sütunlara çevirmek... İlhanYaylıcı 25 3.435 02-10-2023, 13:32
Son Mesaj: halily

Foruma Git:


Bu konuyu görüntüleyen kullanıcı(lar): 1 Ziyaretçi