Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

[VB] Tworzenie pliku .xls

jplac 04 Mar 2012 10:34 1950 5
  • #1 04 Mar 2012 10:34
    jplac
    Poziom 2  

    Witam,
    Posiadam Office 2010 i tworząc w VB plik .xls z danymi mam problem z jego otwarciem. System dopuszcza do otworzenia, ale dopiero po akceptacji w oknie komunikatu. Chciałbym, unikać takiej sytuacji, ponieważ plik .xls ma być importowany do innego systemu bez ingerenci użytkownika.
    Czy aby dobrze zapisać plik .xls zgodny z Office 97-2003 muszę stosować jakieś extra funkcje?

    0 5
  • #2 04 Mar 2012 11:02
    marcinj12
    Poziom 40  

    Mowa o Visual Basicu czy VBA ? W jaki sposób tworzysz ten plik?

    0
  • #3 04 Mar 2012 11:08
    jplac
    Poziom 2  

    Plik tworzony jest w VBA ale nie spod poziomu excela a zewnętrznego systemu, który również ma tę możliwość. Tworzony jest object excela i podawana nazwa dla pliku z rozszerzeniem .xls

    0
  • #4 04 Mar 2012 11:13
    marcinj12
    Poziom 40  

    A jaki komunikat otrzymujesz przy otwieraniu tego pliku? Możesz wrzucić plik utworzony w ten sposób plik na forum?

    0
  • #6 04 Mar 2012 11:36
    marcinj12
    Poziom 40  

    Taki komunikat otrzymujesz, kiedy plik który próbujesz otworzyć nie jest prawidłowym plikiem typu, na który wskazuje jego rozszerzenie (np. kiedy plik zapiszesz jako .xlsx a potem zmienisz mu rozszerzenie na .xls). W przypadku tego "zewnętrznego systemu" o którym piszesz może być tak, że zapisuje on dane w standardzie OpenXML (Office >= 2007), natomiast plik .xls z Office 2003 wymaga starszego standardu, bodaj Biff8.
    Musiał byś coś więcej napisać o tym "zewnętrznym systemie" - to jakaś aplikacja? Masz do niej dostęp, możesz wkleić kod tworzący plik? Z jakich bibliotek korzysta? Rozumiem, że jeśli aplikacja tworzy pliki .xlsx to problem komunikatu przy otwarciu nie występuje?
    PS. Spróbuj zapisu tego pliku przez SaveAs, nie przez Save, podając FileFormat excela 2003 (składnię wyłuskasz przy nagrywaniu makra w czasie tej czynności).

    0