Ahojte,
prosím mrkol by sa mi niekto na Makro?
Chcel by som pouzit na priradenie Sviatku k dátumu.
Cize ak v stlpci A je datum na ktorý pripada sviatok (zoznam sviatkov D2:E4 - momentalne vymysleny)tak vedla dátumu zapise "sviatok". Pouzil som worksheetFunkciu VlookUp, ale pada mi to na chybe. Pokial sviatok najde, tak OK, akonahle na dany dan sviatok nepripadne, tak sa makro zastavi.
Sub svaitok()
i = 1
While i < 31
Cells(1 + i, 2) = Application.WorksheetFunction.VLookup(Cells(1 + i, 1), Range("D2:E4"), 2, False)
i = i + 1
Wend
End Sub
Vopred vdaka za pomoc :).
VLoopUP VBA skorektnenie príkazu Vyřešeno
VLoopUP VBA skorektnenie príkazu Vyřešeno
- Přílohy
-
- sviatok.xlsm
- (16.44 KiB) Staženo 14 x
Re: VLoopUP VBA skorektnenie príkazu
Řešení má nevýhodu, že v případě, že není splněno hledané kritérium, funkce vrátí chybovou hodnotu #NENI_K_DISPOZICI. Toto můžete obejít doplněním funkce SVYHLEDAT o funkci IFERROR - viz: http://office.lasakovi.com/excel/funkce ... kce-excel/
Re: VLoopUP VBA skorektnenie príkazu
Ahoj, sice nechápu proč zrovna tuto věc chceš řešit pomocí makra, ale budiž.
Do kódu doplň dva řádky:
On Error Resume Next = při chybě dovolí přeskočit na další řádek a pokračovat v kódu
On Error GoTo 0 = Vypne přeskočení na další řádek v případě chyby
Do kódu doplň dva řádky:
On Error Resume Next = při chybě dovolí přeskočit na další řádek a pokračovat v kódu
On Error GoTo 0 = Vypne přeskočení na další řádek v případě chyby
Kód: Vybrat vše
Sub svaitok()
i = 1
While i < 31
On Error Resume Next
Cells(1 + i, 2) = Application.WorksheetFunction.VLookup(Cells(1 + i, 1), Range("D2:E4"), 2, False)
On Error GoTo 0
i = i + 1
Wend
End Sub
Re: VLoopUP VBA skorektnenie príkazu
ďakujem, toto je len medzičlánok (napája sa to na ďalšie) preto som to chcel riešiť Makrom :).
Kdo je online
Uživatelé prohlížející si toto fórum: Seznam[Bot] a 7 hostů