PŘÍLOHA!!!
PŘÍLOHA!!!
MsgBox je nutne vzdy potvrdit (protoze metodu SendKeys nemohu doporucit) - je to prakticke, aby bylo jasne, ze uzivatel o hlasce skutecne vi.
Pokud tedy chcete nejake upozorneni, ze neco probehlo s tim, ze se objevi treba jen na sekundu - je lepsi pouzit bud:
1) UserForm
2) StatusBar
MsgBox nelze spustit jako 'Modeless', tedy nelze pri jeho zobrazeni pracovat v listu - resenim je opet UserForm.
to asi proto, ze napoveda k excelu se zabyva opravdu jen Excelem, ne jeho rozsirenim v podobe VBA.
Zkus se podivat sem: https://msdn.microsoft.com/en-us/library/bb332345%28v=office.12%29.aspx
Carove kody jsem nikdy nenacital, ale obecna vlastnost Excelu je takova, ze kdyz vyberes oblast a stisknes ENTER, tak se pohybuje pouze ve vybrane oblasti (tedy pro vas posun doprava). Ale nevim, jestli tuto vlastnost lze pouzit i s cteckou kodu.
Priloz prilohu, z toho je vzdy lepe videt, co potrebujes (prilohu muze vlozit jen registrovany uzivatel) - viz pravidla fora.
Tezko rict, co tim myslis, dynamicky menit sloupce podle vysledku vzorce (nebo hodnoty) bunky lze napr. pomoci funkce INDEX, pak uz jen zalezi na tom, ceho chces dosahnout, protoze to z dotazu jasne opravdu neni.
Ulehcete to lidem, kteri zde zdarma pomahaji a prilozte prilohu!
3. Příloha - pro snazší zodpovězení dotazu je vždy užitečné připojit přílohu (nedoporučuje se vkládat odkazy na externí úložiště), která je názornější než tisíc slov ... Registrovaní uživatelé mohou vkládat přílohy:
- ve formátech: .gif .jpg .png .txt .zip .rar .tar .7z,
- s maximální velikostí 256 kB a
- názvy neobsahující diakritiku
podívejte se na funkci NEPŘÍMÝ.ODKAZ (angl. INDIRECT)
Asi by to slo i elegantneji, ale tohle me napadlo prvni.
Sub PrevodDataNaText()
Dim i As Long
i = 1 'prvni datum je v prvnim radku
Do Until Len(Cells(i, 1)) = 0
Cells(i, 1) = Format(Day(Cells(i, 1)), "00") & "." & Month(Cells(i, 1)) & "."
i = i + 1
Loop
End Sub
Pokud ve sloupci A zacina datum hned prvnim radkem a v datech neni prazdny radek, lze to udelat takto (zacatek datumu lze samozrejme menit hodnotou 'i').
Sub PrevodFormatuDatumu()
Dim i As Long
i = 1 'prvni datum je v prvnim radku
Do Until Len(Cells(i, 1)) = 0
Cells(i, 1).NumberFormat = "dd.m."
i = i + 1
Loop
End Sub
Tento dotaz je pomerne dlouho bez odpovedi - myslim, ze je to proto, ze je dotaz polozen tak, ze neni jasne, co ma byt presne udelane.
Pri prvnim pohledu na zadani a prilohu me napadaji tyto dotazy:
1) Co je prvni den nasledujiciho mesice? V priloze je pri leden 2015 mnoho datumu od 3.1.2015 do 1.2.2015.
2) Jak spolu souvisi udaje 'leden 2015, unor 2015...' na listu "prijem_vydej" a stejne hodnoty v prvnim radku listu "ceny_zakaznici"
3) Jak se ma pocitat 'příjem' a 'Výdej' ve sloupcích listu "prijem_vydej" - na uvedenych datech neni zrejmy vypocet.
Chapu, ze jsi dal fiktivní data, ale pokud bys vyplnil tak, jak by mel vypadat vysledek, meli by to odpovidajici lehci, takto se v tom neda zorientovat, kdyz clovek problematiku nezna.
Upresni, prosim, svuj dotaz
Nevim, jestli je to tento pripad, ale vim, ze nejaky update MS z prosince zpusobil, ze nefunguji prvky ActiveX.
Na jinych forech jsem zjistil, ze staci odstranit nasledujici soubory:
- C:\Users\[user.name]\AppData\Local\Temp\Excel8.0\MSForms.exd
- C:\Users\[user.name]\AppData\Local\Temp\VBE\MSForms.exd
- C:\Users\[user.name]\AppData\Local\Temp\Word8.0\MSForms.exd
...samozrejme pri zavrenych aplikacich Office
Puvodni text: http://stackoverflow.com/questions/27411399/microsoft-excel-activex-controls-disabled
Pomerne snadno a presne se bunky daji vybrat pomoci 'Pole nazvu', ktere je umistene vlevo od 'Rádku vzorcu' (nebo chcete-li tesne nad oznacenim prvniho sloupce listu, tedy sloupce A).
Do tohoto 'pole nazvu' napiste oblast, kterou chcete oznacit, napr. A1:A1000, po stisku ENTER se uvedena oblast oznaci - toho se da dobre vyuzit pri kopirovani vzorcu:
Priklad
V bunce A1 mame vzorec, ktery chceme rozkopirovat do oblasti A1:A1000
1) Kopirovat A1 (pri oznaceni A1 stisk CTRL+C)
2) oznacit celou oblast (pouziti 'pole nazvu' viz vyse)
3) stisk CTRL+V
Tento postup lze samozrejme vyuzit i pri jine moznosti oznaceni oblasti, napr. jak mel zrejme na mysli AL, oznaceni posledni bunky A1000 a pouziti zkrakty CTRL+SHIFT+sipka nahoru.
Duvod, proc jsem popsal vyuziti pole nazvu je ten, ze tato metoda neni moc znama a mnohdy je rychlejsi nez hledani koncu oblasti pomoci posuvniku, kolecka mysi nebo treba klaves PageDown.
Ahoj,
nedival jsem se do souboru, ale pokud ve sve instalaci nemas nejaky soubor (myslim tim ten tvuj MSHFLXGD.OCX), tak ho nestaci jen do prislusneho adresare nakopirovat, ale musis ho take zaregistrovat do systemu.
Jak lze ovladaci prvek rucne zareigistrovat zjistis tady http://support.microsoft.com/kb/2746232
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.