Příspěvky uživatele


< návrat zpět

Strana:  1 ... « předchozí  4 5 6 7 8 9 10 11 12   další » ... 18

Ono je to složitější a já to dobře nevysvětlím.
Musí se to napsat tak, aby to "Vlookup" dokázalo najít hodnotu z Comboboxu na zadaném listu. Ono tam překáželo hlavně to VAL(...) - převod na číslo. To u textového obsahu hlásilo tu chybu, nebylo to nijak ošetřené. Proto jsem to přepsal na ComboBox8.Text)bez VAL(..) a jde to, stejně tak ale tam funguje i ComboBox8.Value - vyzkoušejte. Naopak když se použije Vlookup(ComboBox7.Value, ....) tak to nefunguje tam je převod na číslo v pořádku.

Zkoušel jste ten můj upravený soubor? Funguje tak jak si to představujete? Jestli ano, tak ten rozdíl je:
WorksheetFunction.VLookup(Val(ComboBox7.Value)
- hledá na listu "Zařízení" číslo
WorksheetFunction.VLookup((ComboBox8.Text)
- hledá na listu "Parametry" text

první vyhodnocuje číslo, druhé text.

Nebude to profesionální řešení, ale jen rada jak postupovat.
V příloze je soubor, který jsem tu už dával víckrát, je to někde z netu sehnaný .xls, který vypíše obsah zvoleného adresáře (mimo jiné) a cestu.
Výstup doporučuju zkopírovat do nového souboru jako hodnoty a pak si vzorcema a přepisem jmen připravit dva finální sloupce, kde bude staré a nové jméno souboru s plnou cestou a příponou. Např.
C:\temp\1.jpg C:\temp\zkouška 1.jpg
Pak už jen do modulu vložit makro
Sub prejmenovat()
For i = 1 To Cells(Rows.Count, "A").End(xlUp).Row
Name Cells(i, 1) As Cells(i, 2)
Next i
End Sub

pomodlit se a spustit.

Myslím, že takto:
=SUMIFS(NEPŘÍMÝ.ODKAZ("DATA!M"&POZVYHLEDAT(A2;Data!A:A;0)&":BN"&POZVYHLEDAT(A2;Data!A:A;0));Data!M6:BN6;"<="&WEEKNUM(B4))

Jestli se jedná o Windows, asi to bude nějakou záplatou. Zkus smazat v local temp:
C:\users\username\AppData\Local\Temp\Excel8.0\MSForms.exd
Podrobněji k tomu ve vlákně
http://wall.cz/index.php?m=topic&id=22744&page=1#post-22756
a hlavně v tom odkazu co je tam uvedený.

Případně, jestli je tam tvarů víc, tak:
karta Domů > ikona Najít a vybrat > Přejít na-jinak
> Objekty > OK. Pak najednou smazat - Delete.
Edit: Pardon, předchozí příspěvek byl rychlejší. Ale i tak vyzkoušejte

Díky za pomoc, pochopil jsem.
Zbytečně vymýšlím složitosti tam, kde nejsou!
Po editaci do skutečného souboru velká úspora MB na velikosti a vteřin na regen.
V sezóně 2015 tak budu zas o něco rychlejší a tím na Velogames.com o něco víc vepředu. 5

Ahoj,
můžete mi někdo pomoci vysvětlit, proč nefunguje pojmenovaný vzorec, který když se zapíše do buňky v původní formě, dává normálně výsledek?
Problém je upřesněný v příloze, možná asi trochu nepřehledné, vysvětlivky a moje zkoušení je uprostřed u oranžového pruhu.
V listu 1 je původní řešení, kdy vzorec funguje, ale je asi nevhodný z hlediska použití funkcí Nepřímý.Odkaz a Posun (Al zde proti těmto neustále bojuje).
V listu 2 je moje snaha udělat to jinak, ale přestává to fungovat právě při použití vzorce jako pojmenovaného. Co s tím?
Je vůbec možné docílit výsledku bez původních funkcí jen s Indexem? Třeba jiným postupem?

Něco se řešilo tady: http://wall.cz/index.php?m=topic&id=17972
Než měnit odkaz na objektu, co vytvořit nový objekt s doc souborem? V příloze je soubor s tím prvním makrem z odkazovaného vlákna. Importuje doc zadaný cestou, buď jako ikonu nebo objekt se zobrazeným obsahem. Není to ale řešení dotazu, jen postrčení, námět ...

Já taky přidám řešení. (@Mosquito: opravdu nesoupeřím, kdo má lepší řešení 3 )
Už před 1,5 rokem jsem pro sebe dělal to samé! A zjistil jsem, že potřebuju přidávat do listu další sloupce a skrývání tím přestane fungovat.
Proto v příloze je navíc ještě univerzálnější řešení, kde se skrývaný sloupec hledá podle textu.

Mohlo by fungovat tohle:
ReDim Docasna_promenna(Range("Zkratky").Cells.Count - 1)
For i = 1 To Range("Zkratky").Cells.Count
Docasna_promenna(i - 1) = Range("Zkratky").Cells(i).Value
Next i

@Mosquito
Nespustí se? Já to dělám na Win7 64-bit, Excel 2010,2013 32-bit. Nevím. Mělo by to fungovat.
Neříkám lepší makro. Ale k určení složky je u mě vhodnější dialog, kde se ukáže přímo adresář a je to jednoznačné.
Když jsem zkoušel tvoje řešení, z UserForm "vyberte cestu",
1.pokus: vyberu C:\Temp, řádek Název složky = Temp, stisknu OK a napíše to "žádná složka"
2.pokus: to samé + ještě rozkliknu v okně Temp >> OK >> zase "žádná složka"
3.pokus: to samé + navíc ještě v Temp označím podadresář, třeba ABC, v řádku Název složky = ABC >> OK >> a v Userform je teprve cesta C:\Temp. Divné.

Makro na promazání v jedné úrovni jsem měl v pátek v poledne a začal to vylepšovat na podsložky. Ale Mosqito mě předešel, dal sem soubor, tak jsem to zabalil.
Teď jsem to tedy dotáhnul, i pro sebe, abych konečně víc pochopil, jak to funguje.
Základem je totiž soubor, který jsem kdysi našel někde na netu, původně dělal seznam souborů z adresářů dle přípony. Už sem ho sem taky pro někoho dával. Snad někdo neřekne, že se chlubím cizím peřím.
Předělal jsem ho na mazání, snad to bude ono.
Proti Mosqitovu řešení je tu asi lepší výběr složky, ten jeho líp pasuje na výběr souboru. A tu chybu mi to dává taky, je to něco s hledáním.
Vyzkoušej, ale pozor! Je to přeci jen mazání! 5

Pokud to má být opravdu jen na tuto zadanou oblast, tak např.
Sub kopirovat_oblast()
pocet = InputBox("Kolikrát vložit oblast?")
If Not (IsNumeric(pocet)) Then Exit Sub
If pocet <= 0 Then Exit Sub
For i = 6 To 3 + 3 * pocet Step 3
Range("A3:D5").Copy Cells(i, 1)
Next i
End Sub


Strana:  1 ... « předchozí  4 5 6 7 8 9 10 11 12   další » ... 18

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Helios iNuvio

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.

On-line nástroje