Příspěvky uživatele


< návrat zpět

Strana:  1 ... « předchozí  28 29 30 31 32 33 34 35 36   další » ... 41

Pokud se ptáš na funkce v E 2016, tak to dělají funkce CONCAT, případně (asi lépe) TEXTJOIN.

Příště raději připiš verzi excelu, ve které pracuješ.

Nevšiml jsem si doplňujících obrázků. Vše bylo napsáno.
Jediné, co funkce CONCATENATEv tomto případě udělá je, že převede čísla na text.

Pokud to trochu zjednoduším, tak můžeme považovat value za objekt a value2 za hodnotu.

Používám value2 pro čtení i pro zápis (podle dat a potřeb, některé vlastnosti se nepřenášejí), po zápisu raději zkontroluji.
Je to o hodně rychlejší a pro větší data se práce vyplatí. Pokud použijeme v testu value2, dostaneme o dost jiný čas.


Sub test()
Dim t As Double
t = Evaluate("=NOW()")
Dim i As Byte
Dim a
Dim b

b = Selection.Value2
For i = 0 To 254
a = Application.Transpose(b)
Next i
Debug.Print WorksheetFunction.Text(Evaluate("=NOW()") - t, "m:ss.000")
End Sub

Pokud je to číslo tak třeba
=SVYHLEDAT(9E307;G:G;1)

Pokud text tak

=SVYHLEDAT("žžžžžžžžžžžž";G:G;1)

Nebo lze také upravit makro a nechat ho zpracovat jednotlivé sešity.

Trochu netradičně:

=WORKDAY.INTL(A1-1;1;"0111111")

první po nebo středa:
=WORKDAY.INTL(A1-1;1;"0101111")

...

Lze snadno doplnit o slovo "pracovní"

(V A1 je první den měsíce)

@123456

Pokud žádám o radu, tak si dám práci a napíšu co opravdu chci. Opakovaně jste byl upozorněn, naposledy od xlnc, že dotaz/požadavek není srozumitelný. A podle reakce, se mi to jeví tak, že jste opravdu při nejmenším dost nechápavý.

Pokud má být výstupem jedna řádka, tak použijte filtr na zdrojovou tabulku a máte to bez vzorců a maker.
Ale to také hádám.

Jednoduchá varianta - pomocný sloupec a třeba

=MOD(ŘÁDEK();10)

pak filtrem buď skrýt zbytečné řádky, nebo data zkopírovat jinam.

Pokud lze použít xy graf lze postup zozšířit:
Obvykle jsou zajímavá místa, kde se něco děje.
tj. třeba do dalšího sloupce

=KDYŽ(ABS(A11-PRŮMĚR(POSUN(A10;-9;0;10;1)))>2*SMODCH.P(POSUN(A10;-9;0;10;1));0;10)

- vloží 0 pokud akt. bod se významněji liší od předchozích 10 hodnot

V tomto případě je ale krok nestejný mezi body a je tedy vhodné použití xy grafu.

(doporučuji filtrovat hodnotu 0, pak se dá snadněji měnit počet vybraných položek a není třeba na tyto drobnosti myslet)

Neuvedl jste verzi. U mne (2010) při manuální aktualizaci excel tvrdí, že pokud je připojen průřez, tak zdroj nezmění.

Pokud takto, tak je potřeba znovu kt průřezu připojit.

Druhá varianta - vytvořte tabulku nebo pojmenujte dynamickou oblast a uveďte je jako zdroj. Potom refresh stačí.

Count je long tj. max číslo je 2147483647

Už dávno se používá

ActiveSheet.Cells.CountLarge což je variant.

Pokud jsou ve sloupci A hodnoty unikátní, vyberte sloupce A a B a podmíněným formátem označte duplicty.

Co není ve sloupci A vybarveno chybí ve sloupci B

Bez zjednodušení to nepůjde.

Zkuste použít aspoň procedury:

např. v Layout se pořád opakuje
If DataPrace.Zakazka01.Enabled = True And DataPrace.TbLinka01.Value = "" Then DataPrace.TbLinka01.Value = "WH RH"
If DataPrace.Zakazka02.Enabled = True And DataPrace.TbLinka02.Value = "" Then DataPrace.TbLinka02.Value = "WH RH"
...


Udělejte z toho proceduru, kde parametrem je potřebný text, celý kód bude čitelnější.

V DataPrace se pořád opakují stejné operace, zkuste procedury


sub Udelej(TbLinka as object, TbHodPrace as object, ...)
TbLinka.Value =c
TbLinka.Height = 50
...

end sub

pak v kódu

Udelej TbLinka02, TbHodPrace02,



Jednotlivé prvky můžete vložit do pole

Na začátku


Dim Zakazka(1 to 18) as object

Private Sub UserForm_Initialize()
set Zakazka(1)=Zakazka01
set Zakazka(2)=Zakazka02
set Zakazka(3)=Zakazka03
...

End Sub

for i =10 to ubound(Zakazka)
Zakazka(i).visible= true
next

Z legendy se to odstraní klávesou delete, tlačítka nahoře lze skrýt.

Zbývá zneviditelnit samotná data.

Možnosti:
- Zobrazit na vedlejší ose, vhodně nastavit rozsah a formát osy
- Změnit formát nepohodlné řady tak, aby zmizela (rozsah osy bude ale nutné nastavit ručně).
- Použít pomocnou proměnnou, která bude "malá". Např. "soucet nedostupnosti" / 1000
a třídit podle pomocné proměnné.

Tak tady je

A) ve sloupci A směs čísel a textů. Doporučuji sjednotit.
B) Hledaná hodnota je text. Ve funkci převést na typ, který bude ve sloupci A.
C) Funkce SVYHLEDAT bez 4. parametru předpokládá setříděný sloupec A. V tomto případě není, jen to tak vypadá. (Číslo je při porovnání menší než text.)

xlnc navrhuje vše opravit vzorcem, já bych spíše doporučil udělat pořádek v datech.

Nejvyšší hodnota, kterou lze vložit jako čas je 9999:59:59,9999

Pokud se zadá vyšší hodnota, je vložena jako text.

Nejvyšší hodnota času, kterou lze vložit pomocí funkce je 71003160:00:00,0. Tj. 31.12.9999 23:59:59, případně 2958465,999999.


Pokud budete zadávat jen hodiny:minuty (vloží se text) můžete to pro výpočet převést na čas vzorcem

=DOLLARDE(DOSADIT(A1;":";",");60)/24

Do H2:

=KDYŽ(JE.ČISLO(I2);COUNTIFS($I$2:$I$42;"<"&I2;$C$2:$C$42;C2)+1;I2)


Strana:  1 ... « předchozí  28 29 30 31 32 33 34 35 36   další » ... 41

Uživatelské menu

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

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