Stránka 1 z 1
Excel 2003 - z buňky vybrat pouze číslo Vyřešeno
Napsal: 16 zář 2011 20:01
od Alcië
Dobrý den!
Vytvářím šablonu tabulky do fyziky v excelu a už si nevím rady.
Potřebuji z buňky (např. "a=5,25", "ab=11,20") získat pouze číslo, které dále použiji do dalších vzorců.
Našla jsem na fóru úspěšné řešení
http://www.pc-help.cz/viewtopic.php?t=64013&p=467254. Makro jsem uložila a funguje.
Problém je, že funkce vrací celé číslo a ingoruje desetinou čárku. Např. v buňce je "a=5,25", funkce vrátí číslo 525.
Prosím moc o radu, jak makro přepsat nebo jiné řešení.
Děkuji.
Re: Excel 2003 - z buňky vybrat pouze číslo
Napsal: 17 zář 2011 18:00
od guest
Měl bych tip bez makra:
1) Vybrat buňku (sloupec).
2) Data / Text do sloupců, Oddělovač, Jiné: =
Re: Excel 2003 - z buňky vybrat pouze číslo
Napsal: 17 zář 2011 18:38
od Alcië
Děkuji za odpověď.
Ale asi dělám něco špatně, protože se mi postup nedaří. :( Nevyjde číslo. Funkce, která byla v jedné buňce se rozdělí do dvou sloupců.
Raději popíšu situaci podrobněji. Doufám, že nějaké řešení existuje.
Ve dvou sloupcích jsou číselné hodnoty a v posledním řádku je vždy buňka s funkcí, která vypíše průměr sloupce ve formě l = 5,25 (pomocí fce hodnota.na.text a vnořené fce průměr).
Konkrétně: =HODNOTA.NA.TEXT(PRŮMĚR($B$2:$B$6); "Ī = " & "0.00" )
Ale už druhý sloupec čísel je závislý na průměru prvního sloupce. Proto z té buňky potřebuji získat jen to číslo, ne text "l = ".
Zatím jsem to vyřešila pomocí fce hodnota a vnořené fce část. Pokud se ale text změní např. na "Pa = 5.25", budu muset myslet na změnu fce část.
Teď potřebuji sestrojit rovnici l = průměr1 + průměr2 = výsledek. A tu bych zase musela použít několik fcí hodnota a vnořenou fci část (kterou bych při změně textu musela upravovat).
Pak na to navazují další vzorce a fce. Nejsnadnějším a hlavně nejpřehlednějším řešením vidím v nějaké možnosti vybrat konkrétní číslo a s ním dále pracovat.
Re: Excel 2003 - z buňky vybrat pouze číslo
Napsal: 17 zář 2011 18:56
od guest
Re: Excel 2003 - z buňky vybrat pouze číslo
Napsal: 17 zář 2011 19:06
od d1amond
Tady máš případně upravenou fci, akceptuje čárku "," jako desetinou.
Kód: Vybrat vše
Option Explicit
Function ExtractNumber(r As Range) As Double
Dim str As String
Dim i As Integer
Dim SStr As String
Dim ExtStr As String
str = r.Value
For i = 1 To Len(str)
SStr = Mid(str, i, 1)
If IsNumeric(SStr) Or SStr = "," Then ExtStr = ExtStr & SStr
Next i
ExtractNumber = CDbl(ExtStr)
End Function
Re: Excel 2003 - z buňky vybrat pouze číslo
Napsal: 17 zář 2011 19:18
od Alcië
Děkuji moc Vám oběma za odpovědi!
Články určitě prostuduji.
Použila jsem makro od d1amond. Funguje perfektně a vzorce nebudou na oko vypadat šíleně. :)
Re: Excel 2003 - z buňky vybrat pouze číslo
Napsal: 17 zář 2011 19:29
od d1amond
Není zač. Pokud je to vše, označ za vyřené

Re: Excel 2003 - z buňky vybrat pouze číslo
Napsal: 18 zář 2011 09:42
od Alcië
Ještě jeden dotaz. V buňce je např. l = 1,7 %. Potřebovala bych odtud získat opět pouze číslo, které použiju v podmíněném formátování. Zkoušela jsem opět na buňku použít getnumber, ale asi špatně. Jakoby stále vycházela hodnota vyšší něž 3.
V buňce: ="l = " & (ZAOKROUHLIT(getnumber(G3);3)*100) & " %"
V podmíněném formátování-vzorec: ="getnumber(ZAOKROUHLIT(getnumber(G3);3)*100)"<3