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
Tak to nedělejte přes funcki HODNOTA.NA.TEXT, ale formátem buňky.

Příklady tady:

http://excelplus.net/news.php?readmore=109

http://excelplus.net/images/news/excel_ ... nky_01.png
B23

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é :bigups:

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