V prílohe je ale napísané toto:
Prodleva ve zpracování
(pokud bylo založeno v:
pátek -48 hodin
sobotu -48 hodin
neděli -24 hodin)
Tak ako je to?
Pre ten Váš popis vyššie, kde ŠT/PI je -48 a SO/NE je -24 môže byť napr.
=J2-(WEEKDAY(G2;2)>3)*48+(WEEKDAY(G2;2)>5)*24
=J2-(DENTÝDNE(G2;2)>3)*48+(DENTÝDNE(G2;2)>5)*24
???
=J2-((WEEKDAY(G2;2)>4)*48-(WEEKDAY(G2;2)=7)*24)
=J2-((DENTÝDNE(G2;2)>4)*48-(DENTÝDNE(G2;2)=7)*24)
=SUBSTITUTE(B4;"dddd";TEXT(G10;"d.m.")&YEAR(G10))
=DOSADIT(B4;"dddd";HODNOTA.NA.TEXT(G10;"d.m.")&ROK(G10))
Naschvál som rozdelil dátum na "d.m." a YEAR(), aby to nerobilo problém pri inej jazykovej mutácii Excelu. V CZ totiž rok nie je "yyyy" ale "rrrr", a to robí pri prípadnej multijazyčnosti problém.
Aleb dajte tej bunke vlastný formát
"V Praze, dne" d.m.yyyy
a do bunky iba vzorec
=G10
prípadne si to ošetrite na možnosť nevloženia žiadneho dátumu
=IF(G10="";"";G10)
=KDYŽ(G10="";"";G10)
prípadne to ošetrenie môžete urobiť priamo v tom formáte
"V Praze, dne" d.m.yyyy;;;
možností je habadej ...
Riešením by bolo aj to, aby ten text bol vo formáte bunky, a nie pred vzorcom. Takže Vlastný formát
"Celkový zisk v CZK:"•
# ##0,00
kde namiesto tej guličky • dáte Alt+010. V bunke bude následne iba číslo podľa vzorca
=SUBTOTAL(9;F2:F1000)
Nevýhoda je (neprišiel som na to ako to obísť), že musíte tie 2 stĺpce so SUBTOTAL rozšíriť na celkovú šírku takú, akú by mal vypisovaný text s číslom spolu, aj keď sú pod sebou. Odhadom asi o 1,5 cm.
Jednoducho pomocným stĺpcom
Milan-158 napsal/a:
...anebo v momentě když si to nepřejeme, to potlačit pomocí Application.EnableEvents = False...
Sub Ocisluj()
Dim N As Long
N = 1
Worksheets("Hárok1").Range("A1").Resize(N).Value = Evaluate("=ROW(1:" & N & ")*10")
End Sub
Prílohu som nevidel, skúsim od boku z mobilu bez skúšky:
TextBox1.Text = Left(TextBox1.Text, Len(TextBox1.Text) - 1)
A čo je na tom príklade inak, ako píšete ???
Sub TiskDoPdf()
Dim Mesic As Integer
Mesic = Sheets("Měsíc").Range("A1").Value
Sheets("Doplnění").PageSetup.PrintArea = Range("A1:G50").Offset(0, (Mesic - 1) * 8).Address
Sheets(Array("sm. A", "sm. B", "sm. C", "sm. D", "Doplnění")).Select
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
Sheets("Měsíc").Range("A2").Value & Mesic & ".pdf", Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True
Sheets("Docházka").Select
End Sub
Evidentne sa jedná o rovnako veľké oblasti a sú len posunuté. Ak sú posúvané rovnomerne, tak stačí jednoduchý Offset.
Niečo na spôsob:
PRVÁ_CIEĽOVÁ_OBLASŤ.Offset(0, X - 1).Value = ZDROJOVÁ_OBLASŤ.Value
a nie je treba pole...
??? Pole oblastí ??? Alebo o čo ide ?
Sub Kopiruj_do_oblasti_X()
Dim OBLAST() As Range
Dim X As Integer
ReDim OBLAST(1 To 3)
With List16
Set OBLAST(1) = .Range("D8:D19") 'naplnenie poľa oblastí, pri väčšom množstve cyklom
Set OBLAST(2) = .Range("E8:E19")
Set OBLAST(3) = .Range("F8:F19")
X = .Range("D4").Value 'index oblasti X
If IsNumeric(X) Then 'zápis zdroju do oblasti X
If X >= LBound(OBLAST) And X <= UBound(OBLAST) Then OBLAST(X).Value = .Range("C8:C19").Value
End If
End With
'Ak ide len o priradenie zdroju C9:C19 do premennej Range podľa X, a nie o kopírovanie hodnôt potom stačí:
'Set OBLAST(X) = List16.Range("C8:C19")
'ale tu nepoznáme presné použitie, o čo ide ...
End Sub
foundRange je 1 bunka? Je v tom istom riadku ako dátum? Je to naozaj dátum alebo text? ... Malo by to fungovať ...
Príloha
Cez OFFSET/POSUN sa dá nastaviť veľkosť oblasti (3. a 4. parameter), alebo INDIRECT/NEPŘÍMÝ.ODKAZ.
Príklad:
=AVERAGE(IF(WEEKDAY(OFFSET($N$1;;;D2);2)=C5;OFFSET($M$1;;;D2)))
=PRŮMĚR(KDYŽ(DENTÝDNE(POSUN($N$1;;;D2);2)=C5;POSUN($M$1;;;D2)))
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.