Posljednja promjena  06.12.2005

 

   U ovom dijelu bih govorio o programiranju koje se odnose na događaje na nivou cijele knjige i na nivou samog lista. 

   Događaji na nivou knjige su  makroi koji se pišu u Modul knjige (kad otvorite VBA editor u dio Project i kad kliknete na ThisWorkbook i otvori se modul u kojem možete unositi makroe koji će izvršavati određene radnje na nivou cijele Knjige (WorkBook-a). (slika 1)

   Ako kliknete na jedan od naziva listova (Shee1 ili Sheet2)i kad se otvori modul toga lista unosite makroe koji će dijelovati samo prilikom promjena i rada samo na tom listu. (slika 2)

 

 

Slika 1

 

Private Sub Workbook_Open()

'Prilikom otvaranje knjige isključiti prisustvo trake sa izbornicima
Application.CommandBars("Worksheet Menu Bar").Enabled =
False
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)

'Prilikom zatvaranje knjige uključiti prisustvo trake sa izbornicima
Application.CommandBars("Worksheet Menu Bar").Enabled =
True
End Sub

 

Private Sub Workbook_Open()

'Prilikom otvaranje knjige pokrenuti korisničku formu
UserForm1.Show

End Sub

Back to Top

 

Slika 2

 

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column <> 1 Then Exit Sub
If WorksheetFunction.CountBlank(Target) > 1 Then Exit Sub
Target.Offset(0, 2) = Date & " " & Time
End Sub


Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count <> 1 Then Exit Sub 
If Target.Column <> 1 Then Exit Sub 
Target.Offset(0, 1) = Date & " " & Time
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("B2:F2")) Is Nothing Then Exit Sub
If WorksheetFunction.CountA(Range("B2:F2")) <> 5 Then Exit Sub
If Not IsNumeric(Range("f2")) Then Exit Sub
Range("G2").Value = Now
Range("f2").NumberFormat = "#,##0.00"
unos

End Sub


Private Sub unos()
Dim i As Integer
i = Cells(Rows.Count, 10).End(xlUp).Row + 1
Range("b2:g2").Copy Destination:=Cells(i, 10)
Range("B2:G2") = ""
Range("B2") = Application.Max(Range("j3:j" & i)) + 1
Range("n1") = Application.Sum(Range("n3:n" & i))
Range("c2").Select
Columns("J:O").AutoFit
End Sub

 Knjige i listovi Download - 18 118 b

Back to Top