VBA Excel pętle for each

Wątek przeniesiony 2021-01-28 13:32 z Inne języki programowania przez cerrato.

0

Dzień dobry,

Czy ktoś może mi powiedzieć co jest nie tak z tą pętlą?

Sub clear_data()

Dim WS As Worksheet

For Each WS In ActiveWorkbook.Sheets

Range("A2:C10").ClearContents

Next WS

MsgBox "Done"

End Sub

Polecenie działa tylko na pierwszym arkuszu.

Z góy dziękuję za pomoc.

1

O ile dobrze przepisałeś ten kod, to powinno być w pętli:
WS.Range().Clear....

0

Faktycznie, teraz działa.
Dziękuję :)

0

A takz ciekowości, wiesz dla czego teraz działa?

0
zibicoder napisał(a):

A takz ciekowości, wiesz dla czego teraz działa?

Rozumiem to tak, że zadeklarowałam WS jako arkusz, a później wskazując zakres nie wskazałam, że pętla ma działać w obrębie WS, dlatego next WS nie wykonywało operacji w kolejnych arkuszach.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.