Pøeskoèit navigaci | Pøeskoèit na novinky
     

Jste zde: Úvodní stránka » excel » vba-listy-sheet » jak-na-listy-sheet-VBA-Excel
Microsoft Excel logo

Jak na listy vyuitm VBA Excel

Videokurzy Excel

Ve spoluprci se SEDUO jsem vytvoil nkolik videokurz:

Podvejme se na prci s listy vyuitm VBA v Microsoft Excel. I takov vbr listu, koprovn, nebo njak jin operace s listem jako pidn/mazn, zamknut, vs me pkn potrpit.

vodem do prce s listy vyuitm VBA

Co ve se d s listy provdt a jak vs mohou ekat omezen, nebo komplikace jsem se pokusil sepsat v nkolika samostatnch lncch. Z dvod pehledu a rychl pouit, jsem si sepsal tento lnek /poteboval jsem rychl pehled kdu tkajcch se listu/. pokud mte v pojmech jasno teba se bude hodit i vm. Pro pehlednost je lnek rozdlen na jednotliv kapitoly, a se mete rychle dostat k poadovanmu cli.

Odkazy na souvisejc lnky jsou pmo u jednotlivch kapitol.


Pojmy Sheet, Worksheet, Charts

Pokud vte jak je rozdl mezi jednotlivmi pojmy, mete peskoit, pokud si nejste jist doporuuji lnek.

Jinak pro pipomenut pr kdu

MsgBox (ActiveSheet.Name) Debug.Print Worksheets(1).Name ' listy s bukami Debug.Print Charts(1).Name ' listy s grafem Debug.Print Sheets(1).Name ' ve grafy i listy s bukami

Rozdl Select - Activate

Pokud znte rozdl a vte e Select nen a tak poteba, mete lnek peskoit, pokud si nejste jist doporuuji samostatn lnek ve kterm se problematice vnuji.

Jinak pro pipomenut pr kdu.

Sheets("3").Select Sheets("3").Activate MsgBox (ActiveSheet.Range("A1").Value) Sheets(Array("1", "2", "3")).Select Sheets("3").Activate

Jak na Select

Pedpokldm, e ji mte jasno mezi Select a Acctivate, tak se podvm jen na Select. Jak se vyvarovat problmm )skryt list). Jak oznaovat dle nzvu nebo poad, ale co nzev listu jako slo. Pro je vhodn promnn definovat a pro rd pouvm kdov jmno listu (code name). Vce v samostatnm lnku

Jinak pro pipomenut pr kdu.

' List1.[A1].Select MujKodovyNazevListu.[A1].Select Dim wb As Workbook Dim ws As Worksheet Set wb = ActiveWorkbook Set ws = Sheet("List1") wb.ws.Select ' zobrazovat list/y List6.Visible = True ' zobrazit List6.Visible = xlSheetVeryHidden

Vce o zobrazovn s skrvn v samostatnm lnku

Poznmka vm e Select mnohdy nen poteba, ale krsn se mi na nm ukazuje, kter buky jsou vybran atd. Pokud mte jin trik, jak pi vzdlvn ukzat do kterch bunk bude Excel zapisovat, kdy napklad program krokuji, budu rd za tip v komentch.

Udlosti listu

Na zklad urit innosti, pepoet, zmna v buce me VBA Excel nco provst. Vce v samostatnm lnku

Pro rychlou orientaci

Poad udlost

  • 1. CalculateWorksheet_Calculate
  • 2. ChangeWorksheet_Change
  • 3. SelectionChangeWorksheet_SelectionChange

Seznam udlosti

  • Activate
  • BeforeDoubleClick
  • BeforeRightClick
  • Calculate -
  • Deactivate
  • FollowHyperlink
  • Change -
  • PivotTableAfterValueChange
  • PivotTableBeforeAllocateChanges
  • PivotTableBeforeCommitChanges
  • PivotTableBeforeDiscardChanges
  • PivotTableChangeSync
  • PivotTableUpdate
  • SelectionChange
Private Sub Worksheet_Calculate() MsgBox ("Zmna Worksheet_Calculate") End Sub Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range) MsgBox ("Zmna Worksheet_SelectionChange") End Sub Private Sub Worksheet_Change(ByVal Target As Excel.Range) MsgBox ("Zmna Worksheet_Change") End Sub ... Pozor zmny v bunce vyvola zmenu > osetrit ... Application.EnableEvents = False ... Potebn zmna v buce nevyvola zmenu... Application.EnableEvents = True

Prce s listy

Pvodn mlo bt v jenom lnku, ale monost co lze s listy provdt je hodn a s tm souvis i mon problmy, proto jsme se rozhodl postupn rozdlit. Zde jen rychl vod a ukzky, kdy lovk vc co a pro. Vce v samostatnm lnku/ch/, kter jsou zmnn u jednotlivch kapitol.

Pidvat, pejmenovvat, smazat list/y

Jak na pidvn list, mazn a pojmenovvn. opt se mete odkazovat pes poad, nzev, nebo mj oblben kdov nzev.

Rychl ukzka kdu pro pipomenut

' --------------------------- ' - pridavat/mazat listy + prejmenovat + pesouvat ' --------------------------- Sheets.Add ' pidat list Sheets.Add.Name = "Mj nzev" 'piadit mu nzev ' pidat za/ped list, na konec Sheets.Add(After:=Sheets(Sheets.Count)).Name = "Mj nzev" ' funguje i Before - msto potiu dodat jmno ' smazat SelectedSheets.Delete List9.Delete Sheets("List9").Delete Application.DisplayAlerts = False ' True

Koprovn, koprovn/pesun jinam, pesun

Jak pesouvat nebo koprovat cel list. Vce v samostatnm lnku.

Pr kdu

' ------------------------------------ ' - kopirovat, presun/kopie jinam, - ' ------------------------------------ Sheets("List1").Copy Before:=Sheets(3) Sheets("List3").Select Application.CutCopyMode = False Sheets("List3").Move Before:=Sheets(2) Sheets("List1").Select Sheets("List1").Move After:=Sheets(2)

Vypnut pekreslovn a zobrazovn chybovch hlek

Pozor u vypnan chybovch a dialogovch oken, nemuste se dozvdt o chybovch hlkch a hledte chybu jinde.

' --------------------------- ' - pekreslovn, varovn hlen ' --------------------------- Application.DisplayAlerts = False Application.DisplayAlerts = True Application.ScreenUpdating = False ' True

Barva osuka list

barva ouka

' --------------------------- ' - barva ouka/karty With ActiveWorkbook.Sheets("List1").Tab .ThemeColor = xlThemeColorAccent1 .TintAndShade = 0.399975585192419 End With

Tisk, uloit jako *.pdf

Potebuji li list uloit jako pdf-ko. Jak na ukldn je popsno podrobnji v samostatnm lnku tisk/uloen do *.pdf vyuitm VBA.

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _ Filename:=""D:\testy\test.pdf"", _ Quality:=xlQualityStandard, _ IncludeDocProperties:=True, _ IgnorePrintAreas:=False, _ OpenAfterPublish:=True

Stavy listu

Jak na rzn stavy listu, je zamen, existuje....

' - zamknuto nezamknuto ActiveSheet.ProtectContents ' - ne/exituje list On Error Resume Next If Sheets("NeexistujiciList") Is Nothing Then MsgBox ("neexistuje") else MsgBox ("existuje") End If On Error GoTo 0 ' - pocty, poradi, nazvy i kodove PocetListu = Sheets.Count JmenoListu = Sheets(1).Name ' poradi listu PoradiListu = Worksheets("VBA").Index n = ActiveSheet.Index JmenoListu = Sheets(1).Name ' kodove jmeno listu Debug.Print Worksheets("3").CodeName

Bezpenost - zmek

Jak na bezpenost, zamykn/odemykn, ppadn jak list skrvat. Ppadn jak nastavit listu at je superskryt. Opt pokud pouvte a znte mete peskoit. Ppadn odkaz na podrobnj popis.

Souhrn kdu

' --------------------------- ' - zobrazovat/skrvat list/y ' --------------------------- List6.Visible = True ' zobrazit List6.Visible = False ' zobrazit List6.Visible = xlSheetVeryHidden List6.Visible = xlSheetHidden List6.Visible = xlSheetVisible ' Nemuste se odkazovat jen pes kodov jmno listu

Pro zamkn a odemykn

' --------------------------- ' - zamykat/odemykat listy ' --------------------------- Worksheets("List1").Protect Password:="Heslo" Worksheets("List1").Unprotect Password:="Heslo" ActiveWorkbook.Protect Structure:=True, Windows:=False Range("F17:F18").Locked = False ' True Range("F17:F18").FormulaHidden = False ' True

List a pprava pro tisk

Jak nastavit list na tisk a pak jeho vytisknut. nejen nastaven okraj, barev, konc strnek, zhlav a zpat. opt jen to dleit co potebuji vce v samostatnch lncch.

Pr potebnch VBA kdu pro tisk

' --------------------------- ' - nastaven pro tisk ' --------------------------- ActiveSheet.PrintOut Preview:=True Worksheets("List2").PrintPreview Sheets("List3").Visible = True ActiveSheet.PrintOut nastaven tiskrny Application.Dialogs(xlDialogPrinterSetup).Show AktualniTiskarna = Application.ActivePrinter MsgBox (AktualniTiskarna)

Pr potebnch VBA kdu pro zhlav a zpat

' vlozit do zahlavi - texty z bunk. With ActiveSheet.PageSetup .LeftHeader = Range("A1") .CenterHeader = Range("A2") .RightHeader = Range("A3") End With ' Pro zapati: With ActiveSheet.PageSetup .LeftFooter = "&P" ' aktualni stranka ' &N pocet stranek ... D datum, T cas .CenterFooter = "Text zadan pmo" .RightFooter = "" End With

Zvrem

Tento lnek slou primrn jako pomcka pro m samotnho. Nkter kdy nemus bez dal znalosti a zbytku kdu dvat smysl, proto kapitoly odkazuji na lnky kde se snam jt do vt hloubky a popsat ppadn problmy )text a slo u odkazovn na list, skryt, kdov oznaen, atd.)

Pokud ale mte tip, co zde nen a bylo by zhodno doplnit budu rd. Pokusm se vylepit a doplnit.

Èlánek byl aktualizován: 19.09.2020 11:07

Odmìna

Ušetøil vám tento web èas, peníze? Pomohl vyøešit problém? Jste ochotni poskytnout symbolickou odmìnu na další rozvoj? Vybrte si formu odmìny, která vám vyhovuje.


Pavel Lasák - autor webu

Pavel Lasák

Microsoft Office (Word, Excel, Google tabulky, PowerPoint) se vìnuji od roku 2000 (od 2004 na této doménì) - V roce 2017 jsem od Microsoft získal prestižní ocenìní MVP (zatím jsem jediný z ÈR v kategorií Excel). Své vìdomosti a zkušenosti dávám k dispozici i on-line ve videích pro SEDUO. Ve firmách školím a konzultuji, uèím na MUNI. Tento web již tvoøím pøes 15 let. Zdarma je zde pøes 1.000 návodu, tipù a trikù, vèetnì pøes 250 rùzných šablon, sešitù.

   Pavel Lasák LinkedIn Profil    Pavel Lasák Google+ Profil    Pavel Lasák facebook Profil    Pavel Lasák twitter Profil

" ; echo "google_adtest=\"on\"; " ; echo "" ; echo "TEST REKLAMNIHO SYSTEMU" ; } else { echo "" ; } ?>

Komente zatm nejsou

Mete bt prvnmi co zanechaj smyslupln koment.



" ; echo "google_adtest=\"on\"; " ; echo "" ; echo "TEST REKLAMNIHO SYSTEMU" ; } else { echo "" ; } ?>



Sdlejte

Pomohl Vm nvod?
Sdlejte na Facebooku, G+
LinkedIn...

Nov lnky


Reklama


TOPlist Licence Creative Commons webarchiv rss XML

Strnky o MS Office (Excel) produktu spolenosti Microsoft. Neslou jako technick podpora.
| Email na autora: pavel.lasak@gmail.com | Copyright © : Pavel Lask 2004 - 2020 |