< návrat zpět

MS Excel


Téma: Formát vstupního pole ve VBA rss

Zaslal/a 20.10.2013 17:37

Zdravím,
potřeboval bych poradit a to jak ve vstupním poli ve formuláři excelu (VBA) naformátovat číslo, aby mi oddělovalo např tisíce, nebo třeba přidalo %, pokud se odkazuji na pole v excelu, kde to tak je. Nejde mi to ve vlastnostech ovládacího prvku nastavit :-(
Plus ještě jeden dotaz, když mám otevřené okno formuláře (chci do něj do vstupních polí zapisovat), tak mi nejde překlikávat mezi jinými soubory v excelu, je na to nějaký fígl, jak tomu zamezit, spíše přeskakování povolit?
Moc děkuji za případné nápady a rady.
Jirka

Zaslat odpověď >

Strana:  « předchozí  1 2 3
icon #015835
eLCHa
Dobře, tak ještě jednou a pomalu

Textové pole (TextBox) vrací textovou hodnotu. Jak si ji zobrazíte, záleží na vás. Nicméně, i když tam máte číslo, je to pořád text.
Tento text můžete převést na číslo, ale když už to bude číslo, nebude to mít žádný formát (nebude mít oddělené tisíce).
S tímto číslem můžete provést nějaké výpočty a výsledek si naformátovat podle přání - naformátováním ho zase převedete na text.
Pokud s tímto výsledkem budete chtít něco dělat - budete ho muset znovu převést na číslo.

Nic jiného vám tady nikdo neřekne.citovat
#015838
avatar
Ale pry to jde, jen mi k tomu psali dost dlouhe makro na to abych to delal pro kazde vstupni pole...mam jich fakt dost...pry nasobit 1...ale nejak jednoduseji...me z toho trefi, musim to nejak zmaknout...no diky moc za nazor :-)citovat
icon #015839
eLCHa
To není názor, to je fakt ;)
Nevím kdo vám co říkal, ale asi jste to špatně pochopil ;)

Nepište makro pro každý prvek - napište jedno a odkazujte se na nějcitovat
#015841
Opičák
@ jirka32
píšete "... nějak jednodušeji ..."
tak pracujte s čísly jak psal eLCHa a výsledek pak zobrazit ..... třeba pozpátku 5
Už jsem to psal, jestli si zbytečně nekomplikujete makro (a tím i život).
Jen bych chtěl vědět, proč je nutné zobrazovat číslo s mezerou ? Chápu, že se lepší čte.citovat
#015846
avatar
Ano, presne, kvuli cteni, ten formular by mel byt jako vstpni pole, databazi necham pod tim v excelu, chci to postavit jen na formulari, ostatni zamknout a schovat, idealne i vstup do VBA, pokud to lze, trba na heslo :-)...asi jsem v tomto naivni...kazdopadne diky moc za rady :-)citovat
#015852
Opičák
V tom případě bych to co bude v textboxech nedával do excelovských buněk pomocí pojmenovaných buněk, protože to tam uloží tak, jak je v textboxu, tedy TEXT a ne číslo. Takže to do buňky zapsat jako číslo makrem, (...TextBox1.Value * 1)všechny výpočty v tabulce, která nebude vidět dělat s čísly (bez mezer) a pak zobrazit s mezerama.
Asi bych tedy postupoval obráceně, nejprve bych to vytvořil funkční s čísly v tabulce a pak na to narouboval userform a textboxy.citovat
#015866
avatar
Dávám do placu jiný možný postup a děkuji za předešlé nápady, budou se mi hodit :-)

Private Sub TextBox1_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
With TextBox1
On Error Resume Next
.Text = Format(CDbl(.Value), "#,##0.00")
Cancel = Err
If Cancel Then MsgBox "Opravte číslo", Buttons:=vbCritical
End With
End Subcitovat

Strana:  « předchozí  1 2 3

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