< návrat zpět

MS Excel


Téma: Ještě velikonoce rss

Zaslal/a 22.11.2011 14:22

Výborně Ricci odhalil jsi dvě zákeřnosti v převodu překrásného vzorce "KČ(("4/"&A1)/7+MOD(19*MOD(A1;19)-7;30)*14%;)*7-5" Excelu do VBA. Já bych rád upozornil na ty zákeřnosti.
1. Mod Excel se nechová jako Mod VBA - rozdíl je záporných číslech Ricci to vyřešil matematickou formulaci mod pro Excel - MOD(A1;19) možno ponechat nikdy nenabývá záporné hodnoty
2. funkce "Kč" nebo "Dollar" zaokrouhluje 0,5 nahoru proto nelze použít Round, pokud použijeme worksheetfunction.dollar máme problém s konverzi na číslo (může někdo poradit? - jednoduché řešení na jednom řádku ne for ale např. cdbl a mid, množná s val) Ricciho int s +0,5 je v tomto případě asi nejlepší. Takže fce velikonoce
Function Velikonoce(ROK As Integer) As Date
Velikonoce = Int((DateSerial(ROK, 4, 1) / 7 + ((19 * (ROK Mod 19) - 7) - 30 * Int((19 * (ROK Mod 19) - 7) / 30)) * 0.14) + 0.5) * 7 - 5
End Function

Máte někdo prosté řešení nebo jak řešíte problém v Excel 2010, že nezná konverzi datumu s tečkami z UserFormu přes Cdate. Dříve ještě 2007 jsem zadal do formuláře 21.11.2011 a cdate to zkonvertoval nyní to nejde?
Máte ještě nějaké výjimky mezi Excel a VBA?

Zaslat odpověď >

Nebyly zaslány žádné odpovědi.

Uživatelské menu

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

Menu

On-line nástroje

Formulář Faktura

Formulář Faktura IV

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

Aktivní diskuse