Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno EXCEL Text do sloupců

Dobrý den, mám dotaz, mám buňku,v které mám až 4 čísla oddělené znakem +. Potřebuji ty čísla vzít a rozdělit je po sobě mezi ostatní buňky

příklad:

v buňce A2 je zapsáno 10+10+5+5 a já potřebuju aby v buňce B2 bylo 10, v buňce C2 bylo 10, v buňce D2 bylo 5 a E2 bylo 5.

problém je ten že do buňky A2 se ten text nezapisuje, ale importuje z jiného listu, proto když chci použít funkci text do sloupců, tak ta funkce se mi snaží rozdělit tu moji importovací funkci, a ne ty čísla, čili místo aby rozdělila 10+10+5+5 tak se snaží rozdělit =DOSADIT(A1;" ";"")....

doufám že to bude banalita, předem díky za rady....

edit. tak jsem vyřešil jak obelstit, aby mi funcke text do sloupců rozdělovala ty moje čísla, prostě to udělám na první straně a je to, ale problém nastavá, když zapíšu nové čísla , tak ony se ty sloupce nezaktualizují a furt tam jsou ty staré čísla, a nemůžu při každém novém zadání čísel znova zadávat tu funkci text do sloupců, potřebuju aby to bylo automatické....nějaké řešení prosím?

Předmět Autor Datum
Mají ta čísla nějakou určenou velikost (počet číslic)? Pokud jsou pořád stejné bylo by to jednoduché… nový
L-Core 01.08.2018 08:40
L-Core
tak makro už mám funkční Sub Makro2() ' ' Makro2 Makro ' ' Range("A1").Select Application.CutCopyMo… nový
coffee 01.08.2018 09:04
coffee
Range("b1:e1").Select ' vymaže obsah listu pro moznost opetovneho kopirovani dat Selection.ClearCont… nový
coffee 01.08.2018 09:38
coffee
čísla můžou být od 1 až 20 zadání může být různé, např 5+5+5+5 a nebo taky 15+10+5+15 musí to umět… nový
coffee 01.08.2018 08:53
coffee
nemůžu při každém novém zadání čísel znova zadávat tu funkci text do sloupců, potřebuju aby to bylo… nový
Jan Fiala 01.08.2018 09:49
Jan Fiala
super nápad ! našel jsem a funguje Private Sub Worksheet_Change(ByVal Target As Range) If Target.Ad… nový
coffee 01.08.2018 10:21
coffee
vyřešeno tímto článkem :) https://exceltown.com/navody/makra/vba-zajimave-ukazky-maker/makro-ktere-s… nový
coffee 01.08.2018 10:51
coffee
Přikládám makra zpracovávající všechny hodnoty na listě "List1". První varianta vkládá hodnoty po řá… poslední
Siki83 01.08.2018 22:31
Siki83

Mají ta čísla nějakou určenou velikost (počet číslic)? Pokud jsou pořád stejné bylo by to jednoduché vyřešit funkcí ČÁST.

Případně, na to otravné neustálé používání "text do sloupců" by šlo udělat makro a přiřadit ho k nějakému tlačítku či klávesové zkratce.

tak makro už mám funkční

Sub Makro2()
'
' Makro2 Makro
'

'
    Range("A1").Select
    Application.CutCopyMode = False
    Selection.TextToColumns Destination:=Range("B1"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
        Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _
        :="+", FieldInfo:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1)), _
        TrailingMinusNumbers:=True
End Sub

nevíte prosím jak se zbavit,aby mi se mi nezobrazovala hláška " tady už data jsou, chcete je přepsat?"

čísla můžou být od 1 až 20

zadání může být různé, např 5+5+5+5 a nebo taky 15+10+5+15

musí to umět počítat s mezerou mezi čísly ale to je drobnost....

jinak zkoušel jsem zaznamenat makro, ale při jeho použití mi to píše, že nemá žádná data k rozdělení, a to i potom, co jsem v makru ručně upravil TextToColumns Destination:=Range("A1") , protože generované makro tam mělo B1 a to bylo také bylo nefunkční, celé se to komplikuje totiž cílem při zadávání textu do sloupce, kdy chci, aby se to rozdělilo do mnou vybraných buněk.... viz příloha

super nápad ! našel jsem a funguje

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$D$8" Then
Call nazev_makra
End If
End Sub

nicméně to nefunguje v případě, když se ta buňka přepíše kopírováním, což by bylo pro mé účely vhodnější, nevíš jak na to ?

Zpět do poradny Odpovědět na původní otázku Nahoru