
Uprava makra tak, aby sa pri kopirovani nezmenilo formatovanie cieloveho harku?
Ahojte, potreboval by som upravit nasledovny kod tak, aby ked kopirujem ten jeden treti riadok zo zdrojoveho harku (Sheet1) do cieloveho harku (Sheet5), tak formatovanie cieloveho harku bude zachovane. Myslene tak, ze napr. ked mam farbu pisma v nejakych bunkach cervenu, tak cervena ostane atd. Skusam sa s tym hrat, ale zatial sa mi moc nedari, potreboval by som vyriesit nasledovne. Kod je od pouzivatela Robert13, ktoremu vopred dakujem...
1. Zachovat formatovanie cieloveho harku. Ako vyriesit to, ze ked cez dany riadok, ktory kopirujem z harka 1 mam vlozeny nejaky objekt, napr. cierny obdlznik, tak mi jeho cast neprenesnie do cieloveho harku. Teraz mi to kopiruje komplet vsetko zo zdroja (komplet cele formatovanie + objekt, ktory prekryva dany treti riadok).
2. Suvisi s bodom 1. Ked v niektorej bunke nemam hodnotu v zdrojovom riadku, tak do cieloveho harku automaticky vklada nuly. Potrebujem, aby tie bunky zostali prazdne, neviem preco tam vlozi automaticky nuly, kedze v zdrojovom riadku nuly v prazdnych bunkach nie su.
3. Uz sa netyka daneho kodu, ale mam combo box, v ktorom potrebujem spravit to, ze ked do neho raz kliknem, tak mi automaticky oznaci cely text v nom tak, ze ked zacnem do neho pisat, tak sa cely ten text premaze. Pre ten combo box mam len do jednej bunky nalinkovany zoznam z ineho harku.
4. Este by sa mi hodilo, ze ked dany kod potvrdim, tak automaticky bude ten combo box aktivny a text v nom cely oznaceny.
Dakujem!
Private Sub CommandButton1_Click()
If Sheets(1).Range("A4") = "" Then
PR1 = 3
Else: PR1 = Sheets(1).Range("A3").End(xlDown).Row
End If
If Sheets(5).Range("A4") = "" Then
PR2 = 3
Else: PR2 = Sheets(5).Range("A3").End(xlDown).Row
End If
For i = 3 To PR1
For j = 3 To PR2
If Sheets(1).Range("A" & i) = Sheets(5).Range("A" & j) And Sheets(1).Range("B" & i) = Sheets(5).Range("B" & j) And Sheets(1).Range("C" & i) = Sheets(5).Range("C" & j) Then
Sheets(5).Range("E" & j) = Sheets(5).Range("E" & j) + Sheets(1).Range("E" & i)
Sheets(5).Range("F" & j) = Sheets(5).Range("F" & j) + Sheets(1).Range("F" & i)
Sheets(5).Range("G" & j) = Sheets(5).Range("G" & j) + Sheets(1).Range("G" & i)
Sheets(5).Range("H" & j) = Sheets(5).Range("H" & j) + Sheets(1).Range("H" & i)
Sheets(5).Range("I" & j) = Sheets(5).Range("I" & j) + Sheets(1).Range("I" & i)
Sheets(5).Range("J" & j) = Sheets(5).Range("J" & j) + Sheets(1).Range("J" & i)
Sheets(5).Range("K" & j) = Sheets(5).Range("K" & j) + Sheets(1).Range("K" & i)
Sheets(5).Range("L" & j) = Sheets(5).Range("L" & j) + Sheets(1).Range("L" & i)
Sheets(5).Range("M" & j) = Sheets(5).Range("M" & j) + Sheets(1).Range("M" & i)
GoTo DalsieI
End If
Next j
Sheets(1).Range("A" & i & ":M" & i).Copy (Sheets(5).Range("A" & (PR2 + 1)))
PR2 = PR2 + 1
DalsieI:
Next i
Sheets(1).Select
CommandButton1.BackColor = RGB(255, 255, 0)
ToggleButton1.Value = False
ToggleButton2.Value = False
End Sub