Sypu si popel na hlavu. Děkuji.
Tak napsat do toho vzorečku DDD, abych dostal první dvě písmena názvu dne, to by mne nenapadlo. Zkoušel jsem tam předtím dávat jen DD, ale to mi vracelo číslo dne v měsíci, tj. pro 16.4.2017 mi to vrátilo 16. Kde se ty fígle dají vyčíst? V on line nápovědě k vzorci hodnota.na.text jsem to neviděl.
Děkuji oběma kolegům za cenné rady. Už jsem to využil v mé aplikaci EXCEL a zapsal řešení do své paměti pro příště.
Omlouvám se za jméno, že jsem napsal nejdřív Avomet a pak StandaAlois. Poprvé jsem nemohl najít přihlašovací údaje a použil jsem proto jednorázový vstup.
Napsal jsem to takto:
=VELKÁ2(ZLEVA(HODNOTA.NA.TEXT(DENTÝDNE(E7;1);"DDDD");2))
kde v E7 je příslušné datum. Jen do DENTÝDNE jsem musel napsat Typ 1, což je týden začínající nedělí. Pokud jsem tam měl logicky patřící Typ 2, tak byly dny o den posunuté. Nyní to píše poslušně Po až Ne podle aktuálního data.
Je to o hodně kratší výraz, než jsem to měl dříve jako 7x vložené "když.....". Jde to ještě nějak zkrátit?
Děkuji.
Pochopil jsi to naprosto přesně i s tím vylepšením, že místo obnovy vzorce mažeš řádek před a za vzorcem, což, pokud ten prázdný řádek vkládám ručně, tak dělám.
Geniálně jednoduché, jednoduše geniální, jen umět aktivně programovat ve Visual Basic. Funguje to naprosto přesně jak potřebuji.
Nyní to ještě přepsat do Makra v OpenOffice Calc. Tam lze mazat řádek selektivně tak, že se vzorce ponechají a mažou se jen data. Takže to mazání řádku je možno udělat najednou s ponecháním toho vzorečku.
PS: Asi si koupím nějakou příručku a ten VBA se začnu učit , i když mi táhne na 70.
Zdravím a prosím o pomoc. Jsem na VBA programování laik a potřebná makra si vytvářím jejich nahráním, případně něco opíšu z různých vzorů.
Nahrál jsem si toto makro:
Sub Makro2()
'
' Makro2 Makro
Range("B5:J5").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Range("B6").Select
ActiveSheet.Paste
Range("B5:J5").Select
Selection.ClearContents
Range("E6").Select
Selection.Copy
Range("E5").Select
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Range("B5").Select
End Sub
Funkce makra je jednoduchá. Vyberu od počáteční buňky (zde B5) řádek s 8 sloupci (až po J5) a pak oblast buněk až na konec oblasti s daty. Pak tuto oblast kopíruji o řádek níže (zde B6) a nakonec ten první řádek (B5:J5) vymažu a aktivuji buňku B5. Jinými slovy vkládám do oblasti dat prázdný řádek, ale nechci použít funkci vložení řádku, protože vpravo od vybrané oblasti jsou vzorce pro práci s daty, a ty bych vložením celého řádku musel obnovit. V mém Makru obnovuji jen jeden vzorec z E6 do E5 ve vymazaném řádku (vzorec má tvar =E5+C6+D6).
Potřeboval bych si před spuštěním makra vybrat libovolnou buňku v datovém sloupci B. Při spuštění makra celé makro proběhne stejně, jen začne na řádku vybrané buňky místo stávající pevné buňky B5. Takže řádky 5 a 6 v příkladu musí být nahrazeny proměnnou odvozenou od předem vybrané aktivní buňky.
Při "mém starším věku" již nemám sílu studovat všechna kouzla VBA a proto prosím o pomoc. Pokud by toto Makro z EXCEL někdo dokázal přepsat ještě také pro OpenOffice Calc, budu vděčen dvojnásobně.
Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.
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.