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
  [TABLO] Excel Aktarımı kahramanselim 6 219 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 121 12-03-2024, 15:13
Son Mesaj: umutakkaya
  Bir Belgenin Yazdırılmış Olması Durumunu Kontrol Etmek Hk? adnnfrm 7 221 03-02-2024, 03:24
Son Mesaj: dsezgin
  Access'e Yeni Tablo Oluşturarak Excel Import Etmek, Table'ı Sütunlara çevirmek... İlhanYaylıcı 25 1.227 02-10-2023, 13:32
Son Mesaj: halily
  Excel Birleştir Ve Süz Bora34 6 794 16-02-2023, 18:33
Son Mesaj: Bora34
access-sql-18 Access'e Dosya Bul Butonu Ile EXcel'den Veri çekme snapper 2 282 06-12-2022, 11:51
Son Mesaj: snapper
access-sql-9 [VBA] access den makro ile excel çalışma kitabı açmak omur34 10 9.453 09-05-2022, 12:37
Son Mesaj: dsezgin
access-sql-18 [VBA] Sql Içindeki Alanların Uyuşmaması alperalper 3 196 29-04-2022, 20:19
Son Mesaj: alperalper

Foruma Git:


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