Kategorie szkoleń | Egzaminy | Kontakt
  • 2
  • 0
  • 1

W trakcie pisania makra napotkałem problem ze zmianą domyślnego kodowania - w efekcie potrzebuję uzyskać plik zapisany w formacie UTF-8 bez BOM. Moje makro zawiera następujący wiersz zapisujący plik w csv UTF-8 (niestety domyślnie z BOM):

ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" & "Rejestracja.csv", FileFormat:=xlCSVUTF8, CreateBackup:=False

Czy jest możliwe w miarę prosty sposób zmienić kodowanie na BEZ BOM? 

Z góry dziękuję za pomoc.

Michał_Balcerzak
  • Zapytał
  • @ Michał_Balcerzak | 09.03.2020
    • 0
    • 0
    • 0
Zaloguj się aby zadać pytanie
Pokrewne

Odpowiedzi (2)

  • 0
Tomasz_Kasprzycki
  • Odpowiedział
  • @ Tomasz_Kasprzycki | 10.03.2020
    • 2
    • 4
    • 8
Komentarze
wydaje mi się, że tak i też udało mi się dotrzeć do takich rozwiązań, aczkolwiek nie jestem w stanie zaadaptować tego kodu ze względu na adodb stream - wyskakują błędy.
Mój kod dodaje nowy arkusz, wkleja tam w kolumnę "A" dane oddzielone ";", następnie zapisuje CSV i usuwa ten arkusz. Tutaj jest problem, w kodzie mam zapis csv w kodowaniu UTF-8, niestety domyślnie jest to z BOM. Chciałbym to w jakiś łatwy sposób przekonwertować na kodowanie UTF-8 bez BOM i bez korzystania z programów zewnętrznych (np. notepad ++).
Skomentował : @ Michał_Balcerzak ,02.04.2020
  • 0
  • 0
  • 0
  • 0

Tak wygląda zapis pliku w csv UTF-8 z BOM w moim kodzie:

 ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" & "Rejestracja.csv", FileFormat:=xlCSVUTF8, CreateBackup:=False
 ActiveWorkbook.Close Savechanges:=False

Czy da się tu w łatwy sposób dorobić kodowanie na UTF-8 bez BOM?

Michał_Balcerzak
  • Odpowiedział
  • @ Michał_Balcerzak | 02.04.2020
    • 0
    • 0
    • 0