Wątek przeniesiony 2021-01-28 13:26 z Inne języki programowania przez cerrato.

VBA - zapisywanie złącznika jako CSV

0

Cześć Wszystkim Forumowiczom :),

Mam nadzieję, że będę mógł liczyć na Wasze wsparcie - otrzymuję na maila pliki, które chcę dalej przetwarzać. Wymyśliłem sobie, że po otrzymaniu wiadomości, oryginalny załącznik jest zapisywany w odpowiedniej lokalizacji (to działa ok), po czym od razu go przygotuję do dalszego przetwarzania i zapisuję jako CSV.
I tutaj zonk :) Wywołując kod z poziomu Oulooka, nie mogę zapisać pliku jako csv.
Macie jakieś pomysły z czego wynika błąd? Jakieś propozycje rozwiązań?

Sub Makro1()

Set xExcelApp = CreateObject("Excel.Application")
Set wbk = xExcelApp.Workbooks.Open("X:\Dane\plik_orygnialny.xls")


'czyszczenie pliku
wbk.ActiveSheet.Range("1:6").Delete
wbk.ActiveSheet.Range("J:J").Delete
wbk.ActiveSheet.Range("H:H").Delete
wbk.ActiveSheet.Range("C:C").Delete
    
xExcelApp.DisplayAlerts = False

wbk.SaveAs FileName:=wbk.Path & "\Plik_CSV_" & Format(Now(), "yyyymmdd_hhmmss") & ".csv", FileFormat:=xlCSV, CreateBackup:=False, Local:=True**
xExcelApp.DisplayAlerts = True
ActiveWorkbook.Close False



End Sub
0

A zamoast tych ** na końcu polecenia savas ni powinny być ))?

0
zibicoder napisał(a):

A zamoast tych ** na końcu polecenia savas ni powinny być ))?

Tych gwiazdek w ogóle nie powinno być

0

Zamień :

wbk.SaveAs FileName:=wbk.Path & "\Plik_CSV_" & Format(Now(), "yyyymmdd_hhmmss") & ".csv", FileFormat:=xlCSV, CreateBackup:=False, Local:=True**

na:

wbk.SaveAs wbk.Path & "\Plik_CSV_" & Format(Now(), "yyyymmdd_hhmmss") & ".csv", 6
0

Marcin - dziękuję! Działa!
Jak rozumiem Outlook nie rozpoznaje stałej xlCSV bez włączonych referencji :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1