Stránka 1 z 1

Import dat List 2 v MS Excel  Vyřešeno

Napsal: 03 lis 2009 11:10
od Lueticky_kretek
Zdravím, mám následující dotaz.

Lze naimportovat obsah z MS excell na listu 2 z externího programu?

Např: C:\pokus.xls List 2

Díky

Re: Import dat List 2 v MS Excel

Napsal: 03 lis 2009 12:52
od navstevnik
Dotaz neni prilis jasne formulovan.
Importovat lze leccos kamkoliv.
Jedna se o importovani listu z excelovskeho souboru (C:\pokus.xls List 2) do aktivniho excelovskeho souboru? Cely list vcetne vzorcu, formatovani a pripadnych procedur v modulu tohoto listu? Import pouze hodnot?

Re: Import dat List 2 v MS Excel

Napsal: 03 lis 2009 12:54
od Lueticky_kretek
Import všeho co je v List 2.
Je program,který importuje data z xls souborů.
nyný nastal problém ten,že jsou data v LIST 2 tzn. nelze použít klasickou cestu C:/pokus.xls ,ale C:/pokus.xls LIST 2

Měly by tam být pouze hodnoty, bez vzorů,procedur,maker atd.

Re: Import dat List 2 v MS Excel

Napsal: 03 lis 2009 14:18
od navstevnik
Nadale jsi neuvedl, zda ma byt importovano do aktivniho excelovskeho souboru, predpokladam, ze ano a ze je nutno zdrojovy soubor otevrit.
Pak lze pouzit nasledujici proceduru VBA (je v nejjednodussim tvaru, nejsou osetreny chyby, vstup parametru (cestu, soubor a nazev listu je nutno v procedure upravit),...):

Kód: Vybrat vše

Option Explicit

Sub ImportFromXls()
  Dim PathFile As String, SWshtName As String, SWbk As Workbook
  Dim SWSht As Worksheet, SBlok As Range
  Dim TWsht As Worksheet
  Set TWsht = ActiveSheet
  PathFile = "e:\excel\zvyraznitrc.xls"
  SWshtName = "list1"
  Set SWbk = Workbooks.Open(PathFile)
  Set SWSht = SWbk.Worksheets(SWshtName)
  Set SBlok = SWSht.UsedRange
  TWsht.Range(SBlok.Address).Value = SBlok.Value
  SWbk.Close False
End Sub

Re: Import dat List 2 v MS Excel

Napsal: 03 lis 2009 14:26
od Lueticky_kretek
To jsme se nepochopili. Nejde o přetahování v rámci Excelu - pokusím se to vysvětlit. Představ si program, kde je možnost importu externích dat z xls. Takže existuje xls soubor s hlavičkou Jméno, Příjmení, Funkce a tato data potřebuji importovat. Takže v importním okně je klasické zadání cíle přes procházet - zde se naklikám do C:\pokus.xls - ale bohužel, ta data jsou v xls souboru uložena v List 2. Tzn. otázka zní, jak se dostanu pomocí cílového odkazu na data v souboru pokus.xls - list 2 ? (něco jako C:\[pokus.xls]!List 2. Už si rozumíme ? Díky

Re: Import dat List 2 v MS Excel

Napsal: 03 lis 2009 15:39
od navstevnik
to Lueticky_kretek:
Vzhledem k neprilis jasne formulaci dotazu, jsem se ptal, zda se jedna o import do excelovskeho souboru, bohuzel v odpovedi nebylo upresneno; vypada to na to, ze budu muset svou vesteckou kouli upgradovat. Nejspise ti odpovi nekdo jiny.

Re: Import dat List 2 v MS Excel

Napsal: 03 lis 2009 15:48
od Lueticky_kretek
Nejedná se o export do xls souboru.

Když dáš ve windows Start/spustit ,lze nějak napsat cestu k souboru pokus.xls ,tak aby se otevřel list 2 a ne defaultně list 1?

Víc vyspecifikovat to zase neumím už já.-)

Re: Import dat List 2 v MS Excel

Napsal: 03 lis 2009 17:52
od mike007
Leze to z tebe jak z chlupatý deky a ještě stylem, že tomu nikdo moc nerozumí. Zkusíme to dát nějak dohromady, aby jsme se něčeho dobrali. Takže jestli to dobře chápu, ty se snažíš do nějakého programu (bohužel nám nechceš prozradit jaký) naimportovat data z excelovského dokumentu, z listu 2. Je to tak, pochopil jsem to dobře? Program ale defaultně "sosá" data z listu1 a to nechceš, pravda? Jestli tomu tak je, bude potřeba ten program naučit, pokud to lze, aby ti při zvolení importu dal na výběr z jakého xls sešitu a listu chceš data tahat. S tím ti ale bohužel nepomůžeme, protože nevíme jaký program používáš a zda v něm něco takového lze nastavit.

Re: Import dat List 2 v MS Excel

Napsal: 04 lis 2009 12:23
od Lueticky_kretek
Pochopil jsi to naprosto přesně - takže jsem to popsal dobře :wink: Ten program to sám o sobě určitě neumí, takže není vůbec podstatné z jakého to je. Podstatné je, to co jsi asi už napsal - myslel jsem, že to není o vlastnosti programu, ale že existuje klasický odkaz v příkazovém řádku, pomocí kterého se JAKÝKOLIV program, který importuje z xls dokáže "dívat" na jiný list xls dokumentu, než list 1 (list2...).

To že to jde při propojení mezi xls soubory vím a myslim si, že by to mělo jít i mezi externím programem a ecxelem. Přece existuje příkaz při propojení buněk dvou různých xls souborů, kde se jedna buňka z pokus.xl "kouká" do pokus1.xls|list2. Takže přesně tohle, ale ne mezi Excelem, ale mezi Excelem a externím programem.

Píšu to tak polopaticky jak jen to jde, takže se omlouvám odborné veřejnosti, pokud tu vypadám jak blb :D

Díky za pomoc

Re: Import dat List 2 v MS Excel

Napsal: 04 lis 2009 14:09
od navstevnik
...- myslel jsem, že to není o vlastnosti programu, ale že existuje klasický odkaz v příkazovém řádku, pomocí kterého se JAKÝKOLIV program, který importuje z xls dokáže "dívat" na jiný list xls dokumentu, než list 1 (list2...).
To že to jde při propojení mezi xls soubory vím a myslim si, že by to mělo jít i mezi externím programem a ecxelem. Přece existuje příkaz při propojení buněk dvou různých xls souborů, kde se jedna buňka z pokus.xl "kouká" do pokus1.xls|list2.

Soubor *.xls je v podstate jen datovy soubor, nikoliv program. Programen je MS Excel, ktery pak s temito daty vykonava operace, tedy trebas i tebou uvadene "koukani" do bunek mezi sesity. A pokud lze v Excelu otevrit i jine nez excelovske soubory, jsou k tomu v Excelu potrebne nastroje.
Tedy tebou pozadovane "C:\pokus.xls List 2 vcetne importu" ( uz ti to uvedl mike007) musi umet ten tvuj program.
PS.: Pri otevreni sesitu v Excelu je aktivni list, ktery byl aktivni pri zavreni. Pokud je pozadovan pri otevreni sesitu jiny aktivni list, je potreba v procedure Workbook_Open tento list aktivovat, nebo jeste pred zavrenim v procedure Workbook_BeforeClose.