Seznami opravil

Danes vam bom predstavil zanimivo in uporabno VBA proceduro, ki vam lahko v Excelu olajša delo s seznami opravil.

Ljudje si namreč večkrat izdelujemo sezname opravil in se jih potem bolj ali manj držimo :). A danes ne bom govoril o vztrajnosti, temveč o tem, kako nam lahko Excel pomaga hitro označiti katere naloge smo že opravili in katere ne.

Ideja je preprosto v tem, da si v Excelu naredimo nek seznam opravil (recimo v stolpcu B), potem pa želimo v stolpcu A kljukico, če smo neko opravilo že izvedli oz. prazno mesto, če ga še nismo izvedli.

Najuporabnejše pa bi to seveda bilo, če naredimo tako, da nam kljukic ni potrebno vpisovati, temveč celico preprosto dvokliknemo in v njej se izriše kljukica. Če jo dvokliknemo še enkrat pa se celica zopet izbriše.

Za izdelavo tega bomo potrebovali majhno VBA funkcijo, ki se bo ob dvokliku na celico najprej vprašala ali je celica prazna in če je prazna bo vanjo izrisala kljukico, če je polna pa jo bo pobrisala.

Za izris kljukice je najlažje uporabiti nabor znakov, ki kljukico vsebuje – eden izmed takšnih je »Marlett«, ki ima kljukico namesto znaka a.

Funkcija, ki bo želeno stvar izvedla pa je sledeča:

Option Explicit

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
  If Not Intersect(Target, Range("A1:A100")) Is Nothing Then
    Cancel = True

    Target.Font.Name = "Marlett"
    If Target = "" Then
      Target = "a"
    Else
      Target = ""
    End If
  End If
End Sub

Da bi se vam ne bilo potrebno ukvarjati z vpisom funkcije v VBA urejevalnik pa vam prilagam tudi majhno testno datoteko, v kateri lahko vidite, kako lahko izvedete tudi več zaporedij, recimo prazno – kljukica – dve kljukici ali prazno – vprašaj – kljukica…

— naložite si testno datoteko —

Komentirajte prispevek

This site uses Akismet to reduce spam. Learn how your comment data is processed.