VB2008 - Office 2007-2003   zodpovězená otázka

VB.NET

Dobrý deň. Robím aplikáciu vo VB2008 a office 2007, kde určité údaje exportujem cez COM - Microsoft Excel 12.0 Object library do .xls (.xlsx). Všetko mi ide OK do doby, ak chcem aplikáciu používať na compe s nainštalovaným Office 2003. Je jasné že aplikácia nerozozná Microsoft.Interop.Excel12. nakoľko Office 2003 používa verziu 11. Problém by sa pravdepodobne vyriešil, ak by som mal nainštalovaný Office 2003 a pod ním aplikáciu vyvíjal (2007-čka by bola pravdepodobne kompatibilná, okrem .xlsx), no to nechcem. Dá sa nejako tento problém vyriešiť? Pridaním komponenty z Office2003,............ ? Ďakujem.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

No já když jsem řešil stejný problém, tak jsem aplikaci vyvijel s nainstalovaným Office 2003 a díky zpětné kompatibilitě bylo vše ok.

Nicméně řešením by mohla být instalace Packu na klientské počítače, který uvolnil Microsoft pro uživatele MS Office 2003 a který obsahuje sadu knihoven potřebných k otevření dokumentů v Office 2008 (takže i v Office 2003 otevřete dokument .docx)

Je to ale jenom nápad, nemám to ozkoušené. A navíc to má nevýhodu v tom, že by jste ten pack musel nainstalovat na všechny klientské počítače.

Jestli jde něják dostat do Vašeho PC knihovny ze starých office aniž by jste je musel instalovat nevím, ale můžete si zkusit Office 2003 nainstalovat (myslím si že můžete mít Office 2003 i 2008 současně) a pak hned zase odinstalovat. Myslím si že COM knihovny Vám zůstanou i po odinstalaci (to ale taky nevím na 100%)

nahlásit spamnahlásit spam 2 / 2 odpovědětodpovědět

A je nutné používat pro export dat COM rozhraní Excelu? Nestačilo by exportovat data do univerzálního CSV (jen pomocí prostředků VB) které lze rovněž otevřít v Excelu?

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Ďakujem za postrčenie. Vyskúšam pravdepodobne predsa len ten instal MS Office2003. Export cez CSV som síce ešte neriešil, no pri letmom zagooglovaní vyskočilo dosť odkazov, takže to môžem vyskúšať.

Ešte raz ďakujem.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Export do CSV je naprosto primitivní. Je to obyčejný textový soubor, kde hodnoty ve sloupcích jsou oddělené čárkami.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Nebo spíše středníkem (tedy bodkočiarkou).

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Podle specifikace RFC 4180 je to čárka a také to většina aplikací dodržuje. Středník používá z nepochopitelného důvodu pouze Excel.

nahlásit spamnahlásit spam 2 / 2 odpovědětodpovědět

Máte pravdu. Docela mne to překvapilo. Nicméně tuto "ptákovinu" asi přebírají všichni, kdo exportuji do CSV. Dělal jsem docela dosti parserů na CSV z různých zdrojů a setkal jsem se jenom se středníkem.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Ja v podstate potrebujem do už vytvorenej šablony len zapísať údaje z programu. Celkom ma zaujal článok VB – Word na ktorý som natrafil tuším v blogu. CSV by veru asi nevyriešilo moje problémy.

Ešte ma napadla jedna vec. Program spraviť pod Office 2007 a nakoniec odpojiť COM a na druhom compe pripojiť pred posledným skompilovaním COM z Office 2003(tieto jednoduché príkazy by mali podporovať rovnako obe verzie). Uvidím čo to spraví.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Nešlo by to vyřešit použitím funkce:

dim excl as object

excl = CreateObject("Excel.Application")

(bez použití interop)

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Že ma to skôr nenapadlo riešiť to cez objekty. Super, šlape to ako hodinky. Odskúšané na Office 2003 a 2007.

Moc Vám ďakujem.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback