Aktywne Wpisy
wortor +421
Czy dużą patologia będzie jak zacznę spotykać się z laską o 10 lat młodszą? Ja mam 83 lata, ona 73. Bardzo dobrze się dogadujemy, bo ona jest ogarnięta, ale dalej, to jest 10 lat różnicy. Jestem ciekaw opinii z zewnątrz, dlatego pytam
#zwiazki
#zwiazki
dotankowany_noca +34
i może #programista15k jakiś pomoże.
Mam plik excel z 2 arkuszami, nazwijmy je "Arkusz1" i "Arkusz2". Na arkuszu 1 mam tabelę "A2:Y5" sformatowaną przy użyciu formatowania warunkowego, w zależności od wiersza 1, czyli w zasadzie od wartości A1:Y1.
chcę kopiować zakres A2:Y5 z Arkusza1 do zakresu A7:Y10 w Arkuszu2, tak, by kolory komórek pozostały takie same jak na arkuszu1.
O ile jako-tako działa to z ręki, bo dodaje "!Arkusz1" do nazwy zmiennej w funkcji formatowania warunkowego, to w VBA już nie jest tak pięknie i każdy typ funkcji .pastespecial kopiuje formatowanie razem z odnośnikami, czyli mam formatowanie na Arkuszu2 względem wiersza 6 na arkuszu 2...
Ktoś, coś...?
Sub kopiuj_zakres()
Dim r1 As Range, r2 As Range
Dim w As Long, x As Long, k As Integer, y As Integer
Set r1 = Arkusz1.[a2:y5]
Set r2 = Arkusz2.[a7:y10]
w = r1.Rows.Count
k = r1.Columns.Count
For y = 1 To k
For x = 1 To w
r2.Cells(x, y).Value2 = r1.Cells(x, y).Value2
With r1.Cells(x, y).DisplayFormat.Interior
If .ColorIndex = xlColorIndexNone Then
r2.Cells(x, y).Interior.ColorIndex = xlColorIndexNone
Else
r2.Cells(x, y).Interior.Color = .Color
Tak myślałem, że trzeba będzie kopiować komórka po komórce, no cóż, trudno :)