niedziela, 8 lipca 2012

Jak policzyć arkusze w skoroszycie Excel?

Tworząc skrypty dla Excel często pracujemy na wielu różnych arkuszach. Arkusze mogą być dodawane ręcznie przez użytkownika jak również przez kod VBA. Często więc nie wiemy ile jest arkuszy zebranych w skoroszycie ani jakie są ich nazwy.
Proponuję przeanalizowanie poniższego kodu, który powie nam ile jest arkuszy w skoroszycie a dodatkowo policzy te, których nazwa rozpoczyna się od "A":

Public Sub Policz_Arkusze()

Dim I, ileArkuszy, ileArkuszyOdA As Integer

' zmienna pokazuje ilość arkuszy których nazwa zaczyna się od A
ileArkuszyOdA = 0
' Sheets.Count wskazuje ilość arkuszy w skoroszycie
ileArkuszy = Sheets.Count
For I = 1 To ileArkuszy
'Dla każdego arkusza sprawdź czy jego nazwa
'zaczyna się od "A"
If InStr(Sheets(I).Name, "A") = 1 Then
ileArkuszyOdA = ileArkuszyOdA + 1
End If
Next

MsgBox ("Ilość arkuszy w skoroszycie: " & ileArkuszy _
& vbCrLf & "Nazwa " & ileArkuszyOdA & " arkuszy zaczyna się od A")
End Sub

Widzimy, że zmienna Sheets.Count przechowuje ilość arkuszy w skoroszycie.
W pętli For - Next możemy wykonać kod dla każdego z arkuszy. W naszym przypadku odczytujemy nazwy arkuszy ze zmiennej Sheets(I).Name, sprawdzamy czy rozpoczyna się od A i zliczamy.

Brak komentarzy:

Prześlij komentarz