@chey
To je jedno, stačí skopírovať format.
Sub Makro1()
Range("A1").Copy
Range("B1").PasteSpecial Paste:=xlPasteFormats, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
End Sub
@eLCHa
Ano, cyklus netreba. Len som chcel naznačiť, že pri vymazávaní riadkov je vhodnejší cyklus od konca.
Nebolo mi jasné prečo nechcel vymazávať riadky, preto som dal túto možnosť.
Samozrejme som vyskúšal odkaz(teda iba na posunuté bunky) a fungovalo to .
Ak bol odkaz na vymazané bunky, tak samozrejme ich nenašlo.
Ale pri kopírovaní ten odkaz je tak isto nejednoznačný.
Neviem aké vzorce tam autor používa.
Dal som to iba ako alternatívu. Samozrejme aj mne vaše makro fungovalo. Ale bližšie som to neanalyzoval.
Mne sa trochu nezdalo to obmedzenie autora:
"Nelze to však řešit skrytím prázdných řádků ani jejich odstraněním."
Iba preto som navrhol moje riešenie. Podľa mňa oveľa zrozumiteľnejšie laikovi. Aj keď nevylučujem, že tam môžu byť aj nejaké "muchy".
Nefungujú. Posledná od eLCHa vymazáva celé riadky.ENTIREROW.
Ale to moje makro ti neodstráni tie vedľajšie výpočty.
A okrem toho ich môžeš umiestniť na iný list. Potom môžeš vymazať aj celé riadky, ako napísal eLCHa v dvoch riadkoch.
@eLCHa
Neviem prečo nechce vymazávať celé riadky. Možno má niekde napravo nejaké iné tabuľky. Bola to iba otázka.
Ja som iba vymazal bunky B:K.
Ak to bude vyhovovať, tak môžeme optimalizovať. Nech rozhodne zadávateľ.
Prečo to nejde riešiť odstránením riadkov?
Toto by nestačilo?
Sub Makro1()
For i = Cells(Rows.Count, "B").End(xlUp).Row To 7 Step -1
If Cells(i, 2) = "" Then Range(Cells(i, "B"), Cells(i, "K")).Delete Shift:=xlUp
Next i
End Sub
No ja by som v prvom rade upravil trochu súbor.
Zlúčené bunky alebo riadky mi akosi nesedia.
No ja mám na notebooku tiež nastavený zip. Ak je tam rar, tak to musím rozbaľovať total comanderom a to sa mi vždy nechce. Takže občas odpovedám bez toho, aby som otvoril prílohu. No niekedy je rozdiel medzi napísaným a súborom dosť významný.
eLCHa napsal/a:
@marjankaj
Škoda že není "reverzní funkce" k HODNOTA.NA.TEXT - tedy já o ni nevím a proto se ptám - nic jsem nenašel.
Něco jako HODNOTA, ale s parametrem, v jakém formátu je text, takže nějak
=HODNOTA("20-pro-2012") česká verzia
=VALUE("20-dec-2012") anglická verzia
Text medzi apostrofmi sa nekonvertuje, teda treba to zabezpečiť inak. Makrom, alebo nejako zložito funkciou REPLACE(Nahradit) alebo SUBSTITUTE.
A zazipoval si ten súbor?
=IF(B1<>"";A1;"")
česky
=KDYŽ(B1<>"";A1;"")
Ako si to skopíroval? Odkiaľ?
Neviem, či som to dobre pochopil. Skús toto.
Sub Makro1()
Dim oblast As Range
Set oblast = Range(Selection, Selection.Offset(0, 8))
Range(oblast, oblast.End(xlDown)).Copy oblast.Offset(1, 0)
With Selection
Range(.Offset(0, 0), .Offset(0, 2)).ClearContents
Range(.Offset(0, 4), .Offset(0, 8)).ClearContents
End With
Set oblast = Nothing
End Sub
A tu je súbor. S prepínačmi.
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.