Wpis z mikrobloga

Do zmiennej NowyArkusz musisz przypisać jakiś obiekt. Czyli np


@Wogybogy: nie musisz, chyba że to zmienili w jakiejś nowszej wersji. Mam excela 2007, oprócz nazwy wyświetlanej każdy arkusz ma swoją "prawdziwą" nazwę, dostępną w kodzie jako obiekt bez żadnych dodatkowych deklaracji.
tak tak ale wystarczy że będzie miał 2 aktywne skoroszyty i będzie miał syfh podczas wykonywania makra


@Wogybogy: no też prawda, ale z drugiej strony twoje rozwiązanie posypie się jak ktoś zmieni nazwę arkusza. Coś za coś. ( ͡° ͜ʖ ͡°)

Najbezpieczniejszą opcją jest chyba dodanie helpera który iteruje po ThisWorkbook.Worksheets i zwraca tego z odpowiednim codename.
tak tak ale wystarczy że będzie miał 2 aktywne skoroszyty i będzie miał syfh podczas wykonywania makra

@Wogybogy: no też prawda, ale z drugiej strony twoje rozwiązanie posypie się jak ktoś zmieni nazwę arkusza. Coś za coś. ( ͡° ͜ʖ ͡°)


@croppz: nie, nieprawda. Używanie codename arkusza jest najbardziej bezpieczną opcją, bo zawsze odnosi się do arkusza, ze skoroszytu, w którym znajduje się kod i choćby
@Wogybogy: nie możesz w ten sam sposób, ale możesz zrobić pętlę, która wyszuka arkusz z podanym codename. To jest całkiem dobry sposób, jeśli musisz znaleźć konkretny arkusz w innym skoroszycie, a istnieje ryzyko, że ktoś zmieni jego nazwę/kolejność arkuszy