< návrat zpět

MS Excel


Téma: Presun riadok v Range rss

Zaslal/a 8.12.2011 16:22

Poprosil by som o pomoc pri presune riadku.
V B3:E15 mam nejake data. Ak v jednej bunke z B3:B15 manualne vynulujem obsah (klavesou Delete), potom potrebujem vyplnene riadky pod touto bunkou posunut(shiftup) a riadok vynulovanej bunky (obsah z B :E), vlozit na prvy novo vzniknuty volny riadok. Moze sa to uskutocnit len v rozsahu B3:E15. Data v ostatnych stlpcoch a v riadku 16 sa nesmu menit. Nejde o posun a presun celeho riadku. Ak sa vynuluje posledna vyplnena bunka v rozsahu, tak sa nic neudeje.
Za pomoc dakujem.

stop Uzamčeno - nelze přidávat nové příspěvky.

icon #006660
Poki
Zkuste tento kod do modulu prislusneho listu:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim C As Variant
Dim D As Variant
Dim E As Variant

If Not Intersect(Target, Range("B3:B14")) Is Nothing Then
If IsEmpty(Target) Then

'ulozeni hodnot z radku smazaneho Becka
C = Cells(Target.Row, 3)
D = Cells(Target.Row, 4)
E = Cells(Target.Row, 5)
Range(Cells(Target.Row, 3), Cells(Target.Row, 5)).ClearContents

'posun casti pod smazanym B
Range(Cells(Target.Row + 1, 2), Cells(15, 5)).Cut Destination:=Range(Cells(Target.Row, 2), Cells(14, 5))
Range("c15") = C
Range("d15") = D
Range("e15") = E
End If
End If
End Sub
citovat
#006662
avatar
Dakujem za odpoved. Uvedene makro vklada riadok vynulovanej bunky vzdy do 15. riadku. Chcel som, aby riadok vynulovanej bunky bol vlozeny do prveho volneho riadku. Napr ak z oblasti B3:E15 (vyplna sa dynamicky) je vyplnena len cast B3:E10, potom po zmazani niektoreho B3:B10 sa zmazany riadok vlozi do riadku 10. Ak je vyplnena cela oblast B3:E15, potom zmazany riadok sa vlozi do riadku 15 (ak sa zmaze B15, tak sa nic nedeje).citovat
icon #006664
Poki
V tom pripade asi takto:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim C As Variant
Dim D As Variant
Dim E As Variant
Dim Radek As Long

If Not Intersect(Target, Range("B3:B14")) Is Nothing Then
If IsEmpty(Target) Then

'ulozeni hodnot z radku smazaneho Becka
C = Cells(Target.Row, 3)
D = Cells(Target.Row, 4)
E = Cells(Target.Row, 5)
Range(Cells(Target.Row, 3), Cells(Target.Row, 5)).ClearContents

'posun casti pod smazanym B
Range(Cells(Target.Row + 1, 2), Cells(15, 5)).Cut Destination:=Range(Cells(Target.Row, 2), Cells(14, 5))


'vlozeni 'umazaneho' radku
Radek = Cells(16, 5).End(xlUp).Row + 1
Cells(Radek, 3) = C
Cells(Radek, 4) = D
Cells(Radek, 5) = E
End If
End If
End Sub
citovat
#006667
avatar
Super, ako vzdy Poki trefa do cierneho.
Dakujemcitovat

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje