Menu



Główna

Kurs:

Wstęp

Edytor

Pierwszy program

Instrukcje warunkowe

Pętle


Przydatne makra:

Sheet delete

Nie zapisuj

Iloczyn macierzy

IP - ping

Macro: Sheet delete


Makro bedące "protezą" nieistniejącego zdarzenia "Workbook_SheetDelete". Procedura ta wykorzystuje zdarzenie "Workbook_SheetActivate", a natępnie sprawdza ilość arkuszy. Jeśli jest ich mniej niż w chwili otarcia skoroszytu pojawia się komunikat.

Sub UzupelnijListe(ByRef xlsCol As Collection)

'Procedura zwracająca kolekcję nazw
'arkuszy bieżącego skoroszytu
Dim oxlhSH As Worksheet
Set xlsCol = New Collection

For Each oxlhSH In ThisWorkbook.Worksheets
xlsCol.Add oxlhSH.Name
Next oxlhSH

End Sub

Private Sub Workbook_NewSheet(ByVal Sh As Object)
'Tworzymy kolekcję nazw arkuszy
'w momencie wstawienia arkusza
'by uniknąć uruchomienia procedury
UzupelnijListe xlsCol
End Sub

Private Sub Workbook_Open()
'Tworzymy wejściową kolekcję nazw arkuszy
'w momencie otwarcia skoroszytu
UzupelnijListe xlsCol
End Sub

Linki
VBA:


VBA Mania

Anhtony VBA

Shmitti's Vba

Excel Macro

Programy VBA