Temat: Zaznaczanie w VBA, Problem z scalonymi wierszami

Witam, jestem początkującym w programowaniu w VBA.
Mam problem z zaznaczeniem całej tabeli, ponieważ mam na jej środku 2 scalone komórki i zaznaczanie zatrzymuję się na nich i już nie idzie dalej.

Oto kod:
Range("A10").Select
Selection.Copy Destination:=Range(Cells(11, 1), Cells(raty, 1))

Range("C10", Range("C10").End(xlToRight)).Select
Selection.Copy Destination:=Range(Cells(11, 3), Cells(raty, 7))

Range("H10").Select
Selection.Copy Destination:=Range(Cells(11, 8), Cells(raty, 8))

Jak widać muszę specjalnie od F10 do G10 zaznaczać scalone wiersze.
Zmienna "raty" jest liczbą zależną od wprowadzonych danych, przyjmijmy że jest to liczba 20.

Czy jest jakaś funkcja by to ominąć?

Próbowałem Selection.AutoFill ale sypie błędami.

@Edit
Trochę skróciłem kodTen post został edytowany przez Autora dnia 30.12.17 o godzinie 16:26
Mariusz Jankowski

Mariusz Jankowski Programista
Excel/VBA

Temat: Zaznaczanie w VBA, Problem z scalonymi wierszami

Łukasz N.:
Witam, jestem początkującym w programowaniu w VBA.
Mam problem z zaznaczeniem całej tabeli, ponieważ mam na jej środku 2 scalone komórki i zaznaczanie zatrzymuję się na nich i już nie idzie dalej.

Absolutnie nigdy nie używaj scalania komórek wewnątrz tabeli! Takiej tabeli ani nie przesortujesz, ani nie przefiltrujesz, ani nie utworzysz tabeli przestawnej. Moim zdaniem jedyna opcja kiedy można użyć scalania komórek to sama góra arkusza (np. gdy mamy bardzo dużo kolumn i chcemy dla zwiększenia czytelności napisać jakie dane przechowują np. kolumny od A do E i potem zrobić podobnie dla następnych grup kolumn). Ale w takiej sytuacji musi być koniecznie jeden wiersz przerwy między scalonymi komórkami, a tabelą żeby można było swobodnie na niej działać.
Maciek Gluszak

Maciek Gluszak McGluszak
MacroIndustries

Temat: Zaznaczanie w VBA, Problem z scalonymi wierszami

Btw, ja bym wogóle zabrał guzik do scalania komórek z domyślnego menu excela.
To powinno być schowane, tak jak menu deweloper - żeby trzeba się było naszukać i żeby przypadkowo ludzie sobie krzywdy nie robili.



Wyślij zaproszenie do