Len nápad: Hľadať reťazce "()" a "(*)", prípadne "Sub" a "Function" - tým by si mal byť schopný zistiť zoznam makier. V druhom kroku potom hľadať reťazce z daného zoznamu.
Čiže, predpokladajme, že existuje Makro1
jeho kód bude začínať ako
Sub Makro1()
alebo
Sub Makro1(zoznam argumentov)
v tom druhom kroku potom budeš hľadať reťazec "Makro1"
pokiaľ sa nikde v kóde tento reťazec nevyskytuje, tak Makro1 nie je odnikade volané (samozrejme, platí len pre daný projekt, pokiaľ by si to chcel prejsť i za iné projekty, tak si ich budeš musieť pootvárať a prehliadnuť i v nich)
Píšeš: Mam uz pomocou VBA nastavene, aby mi to filtrovalo v jednom stlpci. Ak zadam parameter do druheho stlpca, tak mi zmizne z prveho.
A ten kód máš kde? V tom archíve nie je. No nič, spusti si záznamník makra, zapni autofilter a vyber kritériá pre 2 stĺpce. Zastav záznamník a pozri, čo Ti zapísal, z toho pochopíš, ako kombinovať kritériá.
Option Explicit
Sub Makro1()
Dim i As Integer
For i = 2 To 1000
Cells(i, 1).Formula = "=List" & i & "!A1"
Next i
End Sub
Myslel som samozrejme kolegov na fóre, s kolegami v práci to mám podobne :)
Misocko, k otázke, ako sa da sa zistit aktualna cesta na ktoru je system prepnuty:
CurDir
Pokiaľ budem mať čas, tak na to hodím oko, ale než sa k tomu dostanem, tak Ťa skôr zachráni niekto z kolegov :)
Oba adresáre, t.j. pôvodný, i ten, na ktorý sa chceš cez Chdir dostať, sú na rovnakom disku?
Pokiaľ nie, dal by som tam pre istotu pred Chdir ešte ChDrive.
Ten výstup z rozšíreného filtru si môžeš dať na samostatný list, kritériá výberu si môžeš (i dodatočne)meniť podľa potreby, priznám sa, že nerozumiem, v čom máš problém a prečo rozšírený filter nevyhovuje..
To, čo popisuješ, ide podľa môjho názoru úplne najjednoduchšie cez rozšírený filter.
Skús sa pozrieť sem, je to popísané hodne polopatysticky
http://www.contextures.com/xladvfilter01.html
@Pavlus a marjankaj: dík, chvíľu som bol nesvoj a pripadal si ako nejaké úplné ucho :) K Vašim posledným komentom nemám výhrad.
@Pavlus: nejak nechápem, čo myslíš týmto:
Rozdíl je pak i např. při změně pozice buňky. Pokud buňku "B2" přesuneš na "D2", pak bude odkaz "=$B$2" směřován na D2... Ale "=B2" bude stále směřováno na B2.
Mohol by si skúsiť ešte raz? Dík.
Tak tu máš ten maticový, keď ma Milan namotivoval :)
=INDEX($J$1:$J$29;POZVYHLEDAT(PRAVDA;$J$1:$J$29>A1;0))
prípadne, pokiaľ chceš aby napr. 80 nepriradilo 100, ale 80, tak takto:
=INDEX($J$1:$J$29;POZVYHLEDAT(PRAVDA;$J$1:$J$29>=A1;0))
Takto?
0#"."###"/"###
Pokiaľ by sa užívateľom nepáčili jedničky a nuly, tak si môžeš vytvoriť vlastný formát, kedy kladné číslo budeš zobrazovať ako "P" a nulu ako písmeno "O" a font použiješ Windings2 - zobrazené znaky budú pre jedničku zatrhávatka a pre nulu krížiky :)
Neznalek, veľkosť poľa by si mal byť schopný zistiť, pokiaľ sa nepletiem, i dodatočne, cez UBound a LBound, alebo?
Ahoj, hodne času ušetríš, pokiaľ nahradíš postupné zapisovanie do jednotlivých buniek v tvare Cells(a,"aa")=hodnota niečím v tomto zmysle:
Vytvoríš si výstupné pole, zistíš jeho rozmer a potom ho vložíš celé naraz do oblasti buniek s rovnakým rozmerom, aký má dané výstupné pole.
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.