Problém bude nejspíš v tom počítání souborů v adresáři. U mě to funguje i při prvním puštění správně. Smyčka Do - Loop spočítá všechny .xls mimo "krycí list". Vypadá to na jeden další .xls v adresáři, nebo je tam i 0.xls ? Zkus to otestovat jen se soubory 1,2,3, + krycí list.
Zkusil jsem něco vytvořit.
Soubor v příloze přidej do adresáře se soubory. Předpokladem je souvislá řada souborů .xls bez vynechání čísla! Mimo tyto soubory s číselným názvem a "krycí list" by tam neměly být jiné soubory .xls, ale můžou být jiné soubory Excelu (xlxs, xlsm).
Něco jsem zkusil, vyzkoušej.
Makro1 je nahrané, jako Data/Načíst externí data/Z textu - oddělovač středník. Tam je v makru napevno cesta k souborům D:\Temp, když jsou soubory jinde, je nutné to přepsat.
Makro Import vychází z mého souboru, kde načítám více *.csv Ukáže se adresář a makro z něho načte v cyklu všechny soubory csv. Upravil jsem na počet sloupců 7.
Data dá na aktuální list, který by měl být prázdný. Uložení a pojmenování souboru už je na tobě.
Třeba takto.
Skrýt nepoužívané sloupce, řádky?
Označit první sloupec ke skrytí. Stisknout a držet Shift, pak End, pak Šipka vpravo. Tím se označí sloupce do konce rozsahu, pak pravá myš, v menu vybrat Skrýt.
To samé pro řádky, jen se Šipkou dolů.
Děkuji. Objevily se přede mnou nové obzory, ale jsou hooodně daleko.
Nějak jsem to rozchodil, ale otázek by bylo... chtěl bych si ujasnit:
Set txt1.txtUni = TextBox1txt1 je název nově vytvořeného objektu?
txtUni je název nově vytvořené události v modulu class? nebo co tento název představuje?
Znám zápis: Set proměnná=objekt , proměnná.něco se vztahuje jen k tomu modulu Class nebo se dá použít vždycky, a na co?
lubo napsal/a:
Obvykle jde jen o pář řádků kódu a získáš univerzální jednotnou obluhu potřebných událostí na jednom místě.
Použil bych funkci SVYHLEDAT, ukázka v příloze.
Já o tom vím toto.
On Error Resume Next potlačí přerušení při chybě, pokračuje se dalším řádkem a umožní to vlastní zpracování chyby podle čísla chyby Err.Number
On Error Goto 0 zase zapne zachytávání chyb, nastaví kód chyby na Nothing
@Opičák:
Taky tu pilně studuju. Důkaz, že je to tak, je nejlíp vidět v právě v okně Locals, ve tvém makru. Tam je u NC Item 1,2,atd. uveden Typ Variant/Object/Range (a další údaje o buňce) , kdežto u NCA je Typ Variant/Double a víc nic. Nebo Variant/Text když se místo Cell.Value použije Cell.Text.
A zrovna se tu zeptám.
Kdy přesně bych měl použít Cell.Text. Pro jaké účely, jenom když chci dělit, spojit texty? Vždyť i Cell.Value mi dá text, když je text v buňce. Jsem samouk, něco použiju a když to ve výsledku funguje, víc to nepitvám. Zprvu jsem důsledně psal všude Cell.Value, nechal jsem toho, když jsem to okoukal ve zdejších nebo jiných kódech, že je zvykem to neudávat.
Tak tedy ještě vzorcem
Ano, to je to, co jsem potřeboval !! Děkuju. Teď si to musím víc rozebrat pro úplné pochopení, ale funguje to!
Zajímavé, navíc když jsem si nechal vypsat položky potřetí po kopii na konci makra, jsou zase 3 unikátní.
Ale nepomůžu, nevím. Snad něco se zdrojem colection držené v paměti??
Ta poznámka směřovala na Adosl.
Proč nejde použít kopii 16. řádku do 2., označit C1:P1, Přejít na-jinak/prázdné buňky, odstranit/posunout vlevo ? Je to moc klikání? Tak to nahrát do makra.
Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.
Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.