Jste zde: Úvodní stránka » excel » vba-priklady-kodu » prakticke-ukazky-kodu-excel-vba
VBA Excel - praktické ukázky kódu pro použití
kódy pro práci ve VBA...
Úvod
Sem tam potřebuji rychle nějaký příkaz v Excelu a jelikož není v hlavě tak musím složitěji hledat v nápovědě. Navíc ať neumusím odpovídat stále na stejné dotazy stačí když pošlu odkaz a dotyčný si může požadovaný příkaz najít.
Takže nebudu to okecávat a následuje seznam kódu. Ať slouží.
Práce s mřížkou
Sub VBA_Excel_Mrizka_zapnuti()
ActiveWindow.DisplayGridlines = True
End Sub
Sub VBA_Excel_Mrizka_vypnuti()
ActiveWindow.DisplayGridlines = False
End Sub
Sub VBA_Excel_Mrizka_opak()
stav_ve_kterem_je_mrizka = ActiveWindow.DisplayGridlines
ActiveWindow.DisplayGridlines = Not stav_ve_kterem_je_mrizka
End Sub
Odkazy v Excelu
Sub VBA_Excel_RC_odkazy()
With Application
.ReferenceStyle = xlR1C1
End With
End Sub
Sub VBA_Excel_normalni_odkazy()
With Application
.ReferenceStyle = xlA1
End With
End Sub
Hypertext
Sub VBA_Excel_hypertext_vlozit()
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:= _
"http://office.lasakovi.com", TextToDisplay:="office.lasakovi.com"
End Sub
Komentare
Sub VBA_Excel_komentar_vloz()
ActiveCell.AddComment
ActiveCell.Comment.Visible = False
ActiveCell.Comment.Text Text:="Pavel Lasák:" & Chr(10) & "Komentář"
End Sub
Sub VBA_Excel_komentar_zobraz()
ActiveCell.Comment.Visible = True
End Sub
Sub VBA_Excel_komentar_skryt()
ActiveCell.Comment.Visible = False
End Sub
Sub VBA_Excel_komentar_zmena_stavu()
stav_ve_kterem_je_komentar = ActiveCell.Comment.Visible
' odpověď střízlivý nedostanete :)
ActiveCell.Comment.Visible = Not stav_ve_kterem_je_komentar
End Sub
Sub VBA_Excel_komentar_smaz()
Selection.ClearComments
End Sub
Práce s listy
Sub VBA_Excel_Odstraneni_Listu()
ActiveWindow.SelectedSheets.Delete
End Sub
Sub VBA_Excel_Odstraneni_Listu_bez_dotazu()
Application.DisplayAlerts = False
'a Excel nedá dotaz zda opravdu chcete smazat... Pozor na to ...
ActiveWindow.SelectedSheets.Delete
End Sub
Závěr
Chybí Vám nějaký kód? Zanechte vzkaz v komentáři. Pokusím se doplnit (nebo doplní některý z čtenářů...).
Článek byl aktualizován: 23.02.2012 18:03
Další články k tématu
- Automatické spuštění skriptu
- Praktické ukázky kódu - právě čtete
Komentáře
Jackie
Přidáno: 19.01.11 14:08
Ve formuláři mám několik textboxů. Během zpracování formuláře je potřebuji vyprázdnit. Nechci v makru otrocky psát: Vymaž textbox1, 2 ... Jde to v cyklu?
DoE
Přidáno: 25.01.11 16:32
Lze naprogramovat funkci typu "když je splněna podmínka (např A1=A2) tak ulož do C1 hodnotu x, pokud splněná není ulož do D1 hodnotu y" ? diky
Pavel Lasák
Přidáno: 25.01.11 19:07
To DoE: Použil bych funkci KDYŽ v buňce C1 i D1 (což je nejednoduši) nebo to naprogramovat ve VBA (což je složitější)
Michal Manis
Přidáno: 31.01.11 09:48
Potřebuji makro nahrazující podmíněné formátování. Potřebuji cca 12 podmínek a Excel do 2007 má jenom 6. Mám Makro které podle hodnoty čísla zabarví stejnou buňku podle škály. Ale potřeboval bych aby se zabarvila jiná buňka než ta ve které je daná hodnota. Nejlépe aby se tam s formátem vepsalo i číslo. Přéklad mohu poslat mailem. Děkuji za pomoc. michal@manisovi.cz
Pavel Lasák
Přidáno: 02.02.11 20:10
To Michal: Osobně bych použil dva (tři) sloupce.
Marián
Přidáno: 07.02.11 15:19
Dobrý den. Prosím o radu. Po vyhledáni poslední vyplnené bunky v slopci : Set a = Columns(ActiveCell.Column) Set lastcell = a.Cells(a.Cells.Count).End(xlUp) lastcell.Offset(1, 0).Activate potrebuji doplnit součet hodnot v danem sloupci. Jak na to? Dekuji za odpoved.
Pavel Lasák
Přidáno: 07.02.11 19:15
To Marián: Doplnit do buňky funkci SUMA.
Pavel
Přidáno: 21.02.11 15:10
Dobrý den, chtěl bych vytvořit tlačítka na čísla 1 až 9, abych nemusel používat klávesnici. Postup by byl takový, že bych kurzorem označil jakékoliv buňky na listu a po zmáčknutí tlačítka by se do buněk zapsalo číslo. Jde něco takového vytvořit? Děkuji.
Pavel Lasák
Přidáno: 21.02.11 16:16
To Pavel: Potřebujete to z důvodu dotykového displeje? Jelikož toto bych řešil, programem ve windows, který po kliku na položku do které lze zapisovat zobrazí SW klávesnici.
Pavel
Přidáno: 21.02.11 18:19
Ne, mám normální notebook, ale přijde mi jednodužší než ťukat čísla přes klávesnici, tak na to mít tlačítka. Je to možné udělat přes VBA nebo přes makro v MS Excel?
Pavel Lasák
Přidáno: 22.02.11 16:03
To Pavel: Přes VBA makro to lze udělat. Vlož tlačítko ovladacího prvku ActiveX. Pojmenuj 1. Do kódu pro stisk tlačítka vlož:
ActiveCell.FormulaR1C1 = "1
Pavel
Přidáno: 22.02.11 19:37
Díky za radu. Bohužel tento příkaz pouze vloží číslo do posledně označené buňky. Já bych potřeboval, aby se číslo vepsalo do všech označených buněk.
Pavel Lasák
Přidáno: 23.02.11 15:58
To Pavel: Cyklem do označených buněk doplnit požadované číslo.
Petr Nový
Přidáno: 09.03.11 15:38
Dobrý den, jak nastavím spouštění formuláře po otevření sešitu? Diky.
Přidáno: 09.03.11 17:53
To Petr:
Private Sub Workbook_Open()
UserForm1.Show
End Sub
Předpokládám, že formulář máš pod názvem UserForm1
Petr Nový
Přidáno: 10.03.11 16:10
Děkuji, funguje to. Formulář se otevře ale hodnoty v něm nejsou aktivní. Součastně spouštím i makro které "naleje" hodnoty do formuláře. Je třeba formulář po otevření aktivovat?
Pavel Lasák
Přidáno: 10.03.11 18:20
To Petr: Těžko říct, nevím jak je formulář vytvořen.
Petr Nový
Přidáno: 11.03.11 11:38
Už jsem toto vyřešil a to tak že formulář otevírám až po startu makra. Ve formuláři mám popisky Label1 až label9. Dá se je naplňovat ve smyčce a jak?
Pavel Lasák
Přidáno: 11.03.11 20:23
To Petr: cyklem
For I = 1 To 10
...
Next I
Petr Nový
Přidáno: 11.03.11 20:38
Toto je mi jasné. Jak mám zapsat do smyčky definici popisků? For I = 1 To 10 UserForm1.LabelI = něco Next I tak to nefunguje
Pavel Lasák
Přidáno: 12.03.11 06:07
To Petr: nutno dat i do zavorek např.: userform1.textbox(i).value = format(0,"#,##0.00)
Petr Nový
Přidáno: 13.03.11 09:38
Sub mk1() Dim i Dim a For i = 1 To 5 a = a + 1 UserForm1.TextBox(i).Value = CInt(a) Next i End Sub Ve výsledku je chyba kompilace. Method or data member not found. Proč?
Pavel Lasák
Přidáno: 13.03.11 14:28
Dim i As Integer ? index = CInt(txt.Tag) ? Zrovna jsem u PC bez Excelu.
Petr Nový
Přidáno: 13.03.11 18:07
"Dim a, i as integer" Výsledek je stejný
Pavel Lasák
Přidáno: 14.03.11 15:58
A při změně definice CInt? CInt(txt.Tag)
Petr Nový
Přidáno: 14.03.11 19:00
Ta samá chyba. Kompilátor označi právě TextBox, tož právě v definici textboxu je třeba hledat chybu. A ta nápověda je na p...
Petr Nový
Přidáno: 14.03.11 21:38
tj. nápověda od MS ;-)
Petr Nový
Přidáno: 15.03.11 19:08
Tak tedy řešení je následující. Dim a As Integer For a = 1 To 10 UserForm1("TextBox" & CStr(a)).Value = "Stránka " & CStr(a) Next a Děkuji všem zúčastněným
Pavel Lasák
Přidáno: 16.03.11 16:55
To Petr: Gratuluji. Osobně než nápovědu Microsoftu používám strejdu googla. Jen se blbě ověřuje kód pokud člověk nemá na PC Excel.
Janek
Přidáno: 22.03.11 08:41
Dobry den, potrebuju napsat makro, ktere otevre soubor z adresare, ve kterem se nachazi vychozi soubor (ten, v kterem je makro umistene). Nevim jak napsat relativni cestu k souboru.
Pavel Lasák
Přidáno: 22.03.11 19:03
To Janek: Tento odkaz Vám nepomůže? http://groups.google.com/group/microsoft.public.excel.programming/msg/0f8e66f9e6f73cc4?pli=1
Michal
Přidáno: 08.04.11 01:29
Dobry den, neviem si dat rady s makrom, ktore by mi malo zmenit farby bunky v pripade, ze je na zaciatku riadku pismo napr. Arial bold 10. Dakujem za pomoc. s pozdravom.
Petr Nový
Přidáno: 19.04.11 16:42
Dobrý den, existuje v makru jednoduchá funkce na konverzí datumu/času na juliánské datum? Děkuji za radu
Pavel Lasák
Přidáno: 19.04.11 20:13
To Petr: Popsáno je na stránkách microsoftu http://office.microsoft.com/en-us/excel-help/insert-julian-dates-HP003056114.aspx přímo za použití klasických funkcí.
Bob
Přidáno: 02.05.11 11:08
Dobrý den, jak lze prosím zapsat kód, který by změnil název souboru na můj vlastní název (názvem myslím v levé části nahoře kde je např. Microsoft Excel - Sešt1. A já bych chtěl např. jen "Můj sešit" nebo i třeba Microsoft Excel - Můj sešit. 2.dotaz Líbí se mi, že některé procedury píší v dolním levém panelu co procedura dělá. Např.že zpracovává x tý řádek databáze a kolikátý je z celkového počtu nebo jen píše, že právě upravuje formát apod. Jak se toto programuje? Díky moc.
Pavel Lasák
Přidáno: 02.05.11 20:09
1) Název se změní tím že sešit uložíte:
ActiveWorkbook.SaveAs Filename:= "C:\Muj-sesit.xlsm"
2) do stavového řádku lze zapsat příkazem
Application.Statusbar = "Text ve stavovém řádku"
bob
Přidáno: 03.05.11 11:11
Díky za odpověď na vlastní název souboru. Ale já nemyslel ukládání nového souboru, ale jen, aby se v levé části nahoře zobrazoval můj definovaný název bez ohledu na skutečný název souboru. Např. soubor se bude jmenovat "Database.xls", ale vlevo nahoře budu chtít vidět text "Aplikace xy verze 1.0 pro planovani" nebo cokoliv jiného, třeba i v kombinaci skutečného názvu souboru + můj vlastní text. Díky
Pavel Lasák
Přidáno: 03.05.11 17:07
To Bob: ThisWorkbook.Application.Caption = "office.lasakovi.com" funguje v MS Excel. Kód pro MS Access bohužel nevím z hlavy.
Petr Nový
Přidáno: 18.05.11 08:18
Dobrý den, poraďte mi prosím jak spolehlivě dostanu data z DDE serveru do makra. Nalinkoval jsem buňky sešitu na DDE server, ale jednou za den komunikace spadne. Děkuji, Petr
jakub
Přidáno: 18.05.11 09:56
Dobrý den, potřeboval bych makro které mi vypíše absah všech vyplněných buněk do txt souboru, a jednotlívé záznamy oddělí středníkem.
Pavel Lasák
Přidáno: 18.05.11 19:02
To Petr: tohle bohužel nevím, možná poradí někdo z čtenářů.
Pavel Lasák
Přidáno: 18.05.11 19:03
To Jakub: Nešlo by soubor uložit jako *.csv a pak přejmenovat (export umí automaticky oddělovat středníkem)? V buňkách jsou pouze data, nebo i vzorce (vzorec jako číslo nebo daný vzorec)? desetinná čísla jsou oddělena čárkou nebo tečkou? Každý řádek bude mít odpovídající řádek v txt souboru, nebo všechna data v jednom "nekonečném" řádku?
awr
Přidáno: 31.05.11 19:36
Dobry den, mam dotaz jestli lze vlozit pomoci maker do nazvu ukladaneho exceloveho sesitu hodnotu z urcite bunky. Napriklad na listu "a" mam v bunce "A1" hodnotu "test" - tak by se ukladany soubor jmenoval "test.xlsx". Jde mi o to abych mohl hodnoty v bunce menit a ukladat tak soubor pod ruznymi nazvy pomoci nejakeho cyklu. diky
Pavel Lasák
Přidáno: 31.05.11 21:20
To awr: Jasně jde
ID_nazev = Worksheets("List1").Cells(1, 1)
UkladanySoubor = "C:\data\" & ID_nazev & ".xlsx"
awr
Přidáno: 31.05.11 22:07
Diky moc, uz to slape!
Fik
Přidáno: 01.07.11 16:32
Dobrý den, mam napragramované automaticke ukladani a potreboval bych nastavit do Filename ulozeni do mista ulozeni puvodniho souboru.
Pavel Lasák
Přidáno: 01.07.11 18:05
To Fík: Tj. Zjistit adresář v kterém se aktuální soubor nachází nebo kompletní cestu?
Fik
Přidáno: 04.07.11 13:00
Zjistit adresář, ve kterém se aktuální soubor nachází by mi stačilo, dál už bych to udělal sám
Tomas
Přidáno: 07.07.11 12:46
Zdravím všechny ve spolek řeším věc, u které si ani nejsem zcela jist, že to lze vyřešit : ) ... Potreboval bych vykoumat makro script, který by v podstatě dělal následující. Někde na disku je soubor s údaji o výkonnosti zaměstnanců (linka1 měla produktivitu 93% v týdnu1, z toho 2% ztrátovost, tyden 2 až třeba 20) a teďka to makro by mělo umět na zmáčknutí natáhnout tyto data do sebe, a potom z nich vytvořit grafy ve formátu graf 1 : linka1 OsaY=procenta, osaX=daný týden, s tím, že pro každou linku to uděla vlastní graf, ideálně na samostatný list, nebo stránku tak, aby se to pak dalo rovnou tisknout
Pavel Lasák
Přidáno: 07.07.11 20:32
To Fik:
Adresar = ThisWorkbook.Path
PavelD
Přidáno: 08.07.11 14:25
Dobrý den, prosim o radu, ve FRM zadám datum do Textboxu1 8/7 (zobrazí 8.7.2011) v Textoxu2 potřebuji aby dle data TXB1 byl ihned zobrazen automaticky den ( pátek ). Nevím zda to vůbec jde.
Pavel Lasák
Přidáno: 08.07.11 20:45
To PavelD: Stačí změnit formát a ten zobrazit.
Range("A2").Select
ActiveCell.NumberFormat = "DDDD"
TextBox2.ControlSource = "A2"
David Fiala
Přidáno: 10.08.11 12:32
Dobrý den, potřeboval bych najít pomocí VBA soubor (edgecam.exe), který se nachází vždy na C:\Program Files\ ..... nějaký jeden adresář ..... \CAM\EdgeCam.exe . Pokud máte nějaké návrhy na elegantní řešení , tak vám budu moc vděčen.
Fik
Přidáno: 18.08.11 11:33
Dobrý den, mám formulář s několika comboboxy, které se vnázvu lyší pouze číslem. Potřeboval bych jejich hodnoty zapsat do tabulky a nechce se mi to zadávat pro každý zvlášť, proto jsem zkusil napsat cyklus, ale nějak mi to nechce fungovat. For i = 1 To 6 If (cboPolozka & (i)) = "" = False Then (cboPolozka & (i)).Value = ActiveCell.Value End If i = i + 1 Next Děkuji
Petr Nový
Přidáno: 14.09.11 11:49
Dobrý den, potřebuji si spouštět skript každou minutu. Poraďte mi prosím jak se dá tohle v VBA jednoduše zařídit. Diky, Petr
Pavel Lasák
Přidáno: 15.09.11 16:42
To Petr:
Sub Spust1minuta()
Application.OnTime Now + TimeValue("00:01:00"), "MujSkript"
End Sub
Popsáno v článku http://office.lasakovi.com/excel/vba-triky/vba-excel-ukonceni-makrem/
Petr Nový
Přidáno: 26.09.11 15:26
OK, diky. Petr
Stano
Přidáno: 30.09.11 22:05
Zdravím všechny koumáky,prosím poraďte Pomocí DDE se mění data v buňce A1. Prosím poraďte jak je dostat do do aktivní buňky( ta se posouvá), tak aby se se změnou v A1 ( ta starší buňka bývale aktivní ) nepřepisovala. Moc díky!
Tomáš
Přidáno: 19.10.11 08:55
Ahoj vložil jsem si makro pro "hod kostkou" (randbetween), ale potřebuji, aby se mi tato hodnota nepřepočítávala, přičemž přepočet ostatních buněk musí fungovat i nadále. Díky za radu.
Pavel Lasák
Přidáno: 19.10.11 16:24
To Stano: S DDE nepracuji, takže odpověď nevím, ale možná někdo s čtenářů poradí.
Pavel Lasák
Přidáno: 19.10.11 16:26
To Tomáš: Co dát randbetwenn do podmínky if.
Tomáš
Přidáno: 20.10.11 08:40
Mám na mysli vytvoření tlačítka, po jehož stisknutí se mi do aktuální buňky vyplní hod kostkou. Pak si označím další buňku, provedu totéž, ale chci, aby se mi předchozí hod nenahradil novým náhodným hodem. Pokud to lze pomocí if, prosím konkretizovat (nejsem moc maker znalý). Děkuji pěkně
Martin
Přidáno: 09.11.11 18:22
Pěkný večer potřeboval bych radu jak provest součet hodnot ve sloupci když na první buňku sčítané oblasti ve sloupci(nikdy nesčítám celý sloupec) mě dostane podmínka a poslední buňka je poslední hodnota ve sloupci. Výsledný součet potřebuji zapsat do jiného sloupce a jiného řádku. Díky za návrhy
Zdeněk
Přidáno: 23.11.11 17:03
Zdravím, jsem makrový analfabet a potřeboval bych poradit. Pro automatické zkoušení slovíček používám toto makro:
Sub Makro1()
If Range("r3") <> "Zkoušení slovíček a konverzace pouze ručně." Then
'napiš Zkoušení slovíček a konverzace pouze ručně. do buňky f3 pro zastavení kódu
Application.OnTime Now + TimeValue("00:00:10"), "my_Procedure"
Else
MsgBox "To už vše umíš že končíš? Nebyl bych si tím tak jistý.", vbOKOnly + vbInformation, "Chceš opradu skončit automatické zkoušení?"
End If
End Sub
Vše v pohodě funguje, ale já bych potřeboval měnit čas cyklu v tomto případě 10 sekund třeba na 15 s. Doposud si vždy přepíšu čas v makru, ale potřeboval bych někde v listě mít proměnné číslo(čas), které by se měnilo automaticky v makru. Děkuji, případně sešit mohu poslat.
Pavel Lasák
Přidáno: 23.11.11 23:11
To Zdeněk:
MujCas = "12:12:12"
y = TimeValue(MujCas)
MsgBox y
Zdeněk
Přidáno: 27.11.11 16:01
Díky, ale jak jsem psal, jsem VBA analfabet (makro mi kdysi dělal známý) a já nevím, jak to mám do toho svého makra zadat :(
Pavel Lasák
Přidáno: 27.11.11 19:41
To Zdeněk: Pošlete soubor na lasak@centrum.cz pokusím se doplnit.
Luboš Novák
Přidáno: 14.12.11 11:59
Lze zamknout jen list. Potřebuji editovat sdílený sešit několika uživateli na "SVÝCH" listech, ke kterým by se dostali přes heslo. Nebo byste použili jiný způsob. Děkuji
Pavel Lasák
Přidáno: 14.12.11 17:30
To Luboš Novák: Lze v Excel 2007, 2010, karta Revize - zamknout list. A zvolíte si zda s heslem nebo bez hesla.
claire
Přidáno: 04.01.12 14:13
ahoj, mám dotaz.. mám v excelu asi 70 listů a potřebuju, aby jeden záznam makra fungoval po spuštění na všechny listy najednou, abych nemusela jednotlivě překlikávat a spouštět makro.. jak na to? díky!
Pavel Lasák
Přidáno: 04.01.12 16:02
To Claire: Vložit makro do ThisWorkbook nebo ho vytvořit v modulu. A doplnit jej o výběr všech listu.
Sheets(Array("List1", "List2", "List3")).Select
Zdeněk
Přidáno: 04.01.12 21:03
Zdravím, nějak nemůžu zkloubit dohromady funkci průměr a když. Udělal jsem nějaké měsíční vyhodnocení v buňce B1:B12. V buňce B13 mám vzorec =průměr(B1:B12). Pokud budu mít všechny měsíce vyplněny nějakou hodnotou, tak průměr funguje. Jenže když budu mít vyplněný třeba pouze leden 2012, tak celoroční průměr není pravdivý, protože data z února - prosince mít zatím nebudu. Potřeboval bych, aby vzorec v B13 ignoroval buňky s nulou. Děkuji za odpověď a přeji hezký večer.
Zdeněk
Přidáno: 04.01.12 21:34
Tak už jsem to zjistil co tam napíšu za vzorec :). =AVERAGEIF(B1:B12;"<>0"). Já se vzorec snažil stále napsat česky a nějak my to nešlo. Je možné, že vzorec lze napsat asi i jiným způsobem. Ale i tak děkuji. Vaše stránky, kde čerpám hodně informací a návodů jsou super. Ještě jednou díky.
Pavel Lasák
Přidáno: 05.01.12 16:39
To Zdeněk: Gratuluji a děkuji. Jak se říka, nejrychlejší pomoc najdeš na konci své paže :)
Petr_N
Přidáno: 24.02.12 13:29
Dobrý den, mohl byste mi poradit jak ve VBA operovat (tj číst a zapisovat) s jednotlivými bity v proměnné typu integer? Diky, Petr
Pavel Lasák
Přidáno: 24.02.12 21:52
To Petr_N: Přečíst údaj z buňky http://office.lasakovi.com/excel/vba-listy-bunky/precti-udaj-do-bunky-excel-vba/ a přes textové funkce najít požadovaný znak http://office.lasakovi.com/excel/funkce/ms-excel-funkce-textove/ jen je nutno ve VBA použít anglické názvy funkcí http://office.lasakovi.com/excel/funkce/ms-excel-funkce-cz-en/
Tomáš Sláma
Přidáno: 12.03.12 19:43
Dobrý den, někdo se tu v diskuzi ptal, jak udělat, aby se makro spouštělo opakovaně za určitý časový interval. Řeším ten samý problém. Dané řešení však provede makro MujSkript jen jednou:
Sub Spust1minuta()
Application.OnTime Now + TimeValue("00:01:00"),_ "MujSkript"
End Sub
Kód jsem upravil na:
Sub Spust5sekund()
Application.OnTime Now + TimeValue("00:00:05"),_ "Spust5sekund"
Call MujSkript
End Sub
Kód funguje, akorát bych potřeboval poradit, jak ho z prostředí listu vypnout, např. jiným tlačítkem a ne Ctrl+Break. Ještě bych se chtěl zeptat, jak časový interval opakování v sekundách zadat v buňce listu, aby se nemusel zadávat ve VBA kódu. Předem děkuji za odpověď!
Pavel Lasák
Přidáno: 13.03.12 19:39
To Tomáš Sláma:
Čas z buňky:
MujCas = "12:12:12"
y = TimeValue(MujCas)
MsgBox y
třeba přes jinou klávesu
Sub DemoOnKey()
Application.OnKey "{TAB}", "MojeZprava"
End Sub
Sub MojeZprava()
MsgBox "Stisk Tabelatoru"
End Sub
nebo doplnit o funkci if then, které bude kontrolovat stisk tlačítka
Lukas
Přidáno: 28.03.12 12:44
Ahoj, prosim Ta, vytvoril som uz nejaky formular, ale potreboval by som kontrolu zadanych udajov. Priklad: Mam 2 polia: meno a priezvisko. Tieto dve hodnoty zapisujem do buniek A1 a A2 po kliknuti na OK. Ale chcel by som pridat podmienku, ze ak je prazdne pole Meno alebo Priezvisko, tak vyhodi msgbox A opat sa vratim do formulara, kde ale osatnu vypisane vsetky predosle udaje a mozem doplnit chybajuce pole. Dufam, ze som to napisal zrozumitelne :)
Pavel Lasák
Přidáno: 28.03.12 20:41
TO Lukáš: to je na článek, zkusím připravit a publikovat
Lukas
Přidáno: 30.03.12 08:28
Ahoj opat. :) Predosly problem som uz vygooglil, len som tam pridal if a end sub ak nastane taky problem. Skor ma zaujima iny problem a to praca s premennymi. Mas formular ktory vyplnis, stlacis tlacitko OK a tieto vyplnene polia sa ti zapisu do buniek. Ale je tam dalsie tlacitko (Vytvor subor) ktore spusta export buniek do .txt suboru. Problem je, ze pokial vyplnim formular a nedam OK, ale rovno Vytvor subor tak neviem skontrolovat, ci v tych poliach vo formulari je nieco zadane alebo nie. Opat zavolat OK tlacitko nemozem, pretoze su v nom kontroly na prazdne polia... Proste by som potreboval vytiahnut nejaku hodnotu z jedneho sub a vediet s nou pracovat v druhom. Snad je to normalne napisane:)
Dan
Přidáno: 31.03.12 20:30
Dobrý den, potřeboval bych radu ohledně automatického filtru. Vím, že pokud chci zobrazit více položek ve filtru musím použít pole Array, ale nevím jak do něj dostat hodnoty těch položek když předem nevím kolik jich budu zobrazovat. Položky co se nacházejí v tom filtru mám na jiném listu a jejich zobrazení bych určoval hodnotou ano/ne ve vedlejší buňce. Děkuji za nějakou radu.
Kuvap
Přidáno: 04.04.12 13:33
Filtroval bych to přes kriteriální tabulku kterou bych vytvořil na základě vstupních položek a jejich logické hodnotě přes fci když.
Dan
Přidáno: 04.04.12 18:53
to Kuvap: tomu vůbec nerozumím.
Dan
Přidáno: 06.04.12 13:29
to Kuvap: Tak už jsem to udělal, dík za radu.
František
Přidáno: 10.05.12 23:49
Prosím vbs scriptem pustit Outlook. Nějak se mi to nedaří. Set object.Outlook = WScript.createObject("Outlook.Application") Outlook.Visible = true Outlook.Add End If ?? Děkuji ??
Pavel Lasák
Přidáno: 11.05.12 15:12
To František: Takhle funguje?
Shell ("OUTLOOK")
Přidání nového komentáře
Za obsah komentářů neodpovídám, jelikož jsou komentáře publikovány ihned po jejich napsání čtenářem. Toto nemohu nijak ovlivnit. Přesto si vyhrazuji možnost jakýkoli neslušný komentář smazat bez udání důvodu.
Nejnovější článek
Z článku o
excel jsem jako poslední přidal či upravil článek
14.05.2012:
Kombinování funkcí - vzorců.
Nejčtenější článek
Excel
- Základy MS Excel
- menu Soubor
- Formát dat
- Vložit
- Grafy
- Vzorce (Funkce)
- Matice
- Data
- Revize (Nástroje)
- VBA Úvod a seznamy článků
- VBA Teorie základy
- VBA Buňky cell
- VBA Listy sheet
- VBA Práce se soubory
- VBA Formuláře (UserForm)
- VBA Grafy
- VBA Application
- VBA Pás karet, Menu
- VBA Triky
- VBA praktické příklady kódu
- Praktické příklady
- Finanční poradce
- Šablony - Templates
- Testy
- Ostatní
Google+
Novinky
Matematické rovnice (vzorce) - Word 2010
Excel: 14.05.2012:
Kombinování funkcí - vzorců
Access: 28.04.2012:
VBA - Jak spustit v MS Access
Power Point: 25.04.2012:
SmartArt - PowerPoint 2010
Outlook 26.04.2012:
Outlook 2010 - jak vypadá
Project: 05.04.2012:
Kalendář ukázka
OneNote: 17.10.2010:
OneNote 2010 – popis obrazovky
Office 30.04.2012:
Kde hledat odpovědi na dotazy o MS Office
Poděkování
Translate
Stránky o MS Office produktu společnosti Micosoft. Neslouží jako technická podpora.
| Email na autora: lasak@centrum.cz | Copyright © : Pavel a Danka 2006 - 2012 |
| Doporučuji: Advokátní kancelář Brno - Dana Lasáková |
1953
Tento web zatím neprošel jazykovou korekturou. Beta verze redakčního systému.