=IF(HOUR(A1)<6;"N";IF(HOUR(A1)<14;"R";IF(HOUR(A1)<22;"O";"N")))
Žiadne číslo nie je menšie ako 6 a zároveň väčšie ako 22.
Alebo skús toto makro
Sub Makro1()
Range("B1").EntireColumn.Insert
Range("A:A").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range("B1"), Unique:=True
Range("B:B").Copy
Range("A1").PasteSpecial Paste:=xlPasteValues
Range("A1").Select
Range("B1").EntireColumn.Delete
End Sub
No na bunky C3 a C5 by to malo fungovať.
Áno treba to najprv dať do iného stlpca a potom jednoducho skopírovať naspäť.
A dobré by bolo to zoradiť buď podľa abecedy alebo podľa veľkosti.
No išlo by to.
V makrách treba vypnúť zachytávanie udalostí a po vykonaní makra ho zase zapnúť. Potom sa to nezacyklí.
Application.EnableEvents = True/False
Vyber si ten zoznam
Choď na rozšírený filter
Zaškrtni "iba jedinečné hodnoty"
daj OK.
Napríklad rozšíreným filtrom.
A čo ak niekto chytrý nespustí excel, ale najprv si tie súbory skopíruje na USB. Načo ti bude také makro?
Veď ja to nekopírujem po bunkách, ale po celých súvislých oblastiach.
Ak vyberiem celý stlpec, tak sa skopíruje celý stlpec, takisto ako u teba.
Ak si zvolím oblasti napríklad A4:A10 a A20:A30, tak cyklus prebehne iba dvakrát a skopíruje sa každá oblasť ako celok. Nie po jednotlivých bunkách.
Pridám aj ja niečo.
Ak treba kopírovať aj vzorce, tak toto treba vyhodiť
Paste:=xlPasteValues
Sub PresunDoC()
Dim oblast As Range
kam = InputBox("Do ktorého stlpca sa majú hodnoty skopírovať? A,B,C,...")
posun = Range(kam & ":" & kam).Column - Selection.Column
For Each oblast In Selection.Areas
oblast.Copy
oblast.Offset(0, posun).PasteSpecial Paste:=xlPasteValues
Next
Application.CutCopyMode = False
End Sub
Alfi, funguje to perfektne.
Ešte by som dodal, že tie kopírované bunky si treba odklikať so stlačeným CTRL.
No ak to bude chcieť kopírovať z iného stlpca alebo do iného stlpca, tak si bude musieť makierko upraviť, alebo tam vsunúť INPUTBOXy.
No aj bez tlačítka a makra je to jednoduché.
1. Klikneš na "A" nad prvým riadkom
2. Stlač CTRL+X
3. Klikni na C nad prvým riadkom
4. A daj ENTER.
Na takéto "operácie" vymýšľať makro a ešte aj tlačítko sa mi zdá veľmi prešpekulované.
No trochu som upravil riešenie od chey.
Môžeš prepínač meniť v hociktorom liste a prenesie sa do ostatných.
CRTL+X z bunky odkiaľ
CRTL+V(alebo aj ENTER) do bunky kam.
No nie vždy. Záleží asi od konfigurácie operačného systému a aj Office.
Mám tu Office 2010 pre podnikateľov, slovenská verzia, A Windows XP profesional, nastavená slovenská klávesnica.
A ide mi iba CTRL+SHIFT+H.
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.