Excel-makro VBA zoradenie

Programy pro práci v kanceláři (Word, Excel, Access…=>Office)

Moderátor: Mods_senior

Odpovědět
marek26
Level 1.5
Level 1.5
Příspěvky: 115
Registrován: 06 dub 2008 16:16

Excel-makro VBA zoradenie

Příspěvek od marek26 »

Tu na tomto kode vidite zoradenie buniek podla stl. "C", tam sa mi ale dalo (6.-ty riadok) Range C2:C27, a zase ked pozriete niz je Range(A1:F27), lenze tab. bude variabilna neda sa prosim Vas nahradit tieto pevne ohranicenia na inu syntax aby to zoradovalo tak ako je velka tab.? Este chcem upozornit ze oznacit treba celu tab. aby zoradovalo vsetko, aby to nebolo pomiesane.
ak by sa dalo, len nahradit Range syntax inym kodom
dakujem vam

Kód: Vybrat vše

Range("A1").Select
    Range(Selection, Selection.End(xlDown)).Select
    Range(Selection, Selection.End(xlToRight)).Select
    ActiveWorkbook.Worksheets("bratislava").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("bratislava").Sort.SortFields.Add Key:=Range( _
        "C2:C27"), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:= _
        xlSortNormal
    With ActiveWorkbook.Worksheets("bratislava").Sort
        .SetRange Range("A1:F27")
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
End Sub
Uživatelský avatar
mike007
Master Level 7.5
Master Level 7.5
Příspěvky: 5860
Registrován: 01 srp 2007 18:10
Bydliště: Pardubice
Kontaktovat uživatele:

Re: Excel-makro VBA zoradenie

Příspěvek od mike007 »

Jelikož nemám dokument ve kterém bych to vyzkoušel, tak hold kouzlím. Vyzkoušej to. Nemusí to ale fungovat korektně...

Kód: Vybrat vše

Sub test()
Range("A1").Select
    Range(Selection, Selection.End(xlDown)).Select
    Range(Selection, Selection.End(xlToRight)).Select
    ActiveWorkbook.Worksheets("bratislava").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("bratislava").Sort.SortFields.Add Key:=Range( _
        Cells(.Row, "C")), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:= _
        xlSortNormal
    With ActiveWorkbook.Worksheets("bratislava").Sort
        .SetRange Range(Cells(.Row, "A"), Cells(.Row, "F"))
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
End Sub
Nejlepší hra je Excel!
Pravidla fóra PC-helpJak označit téma za vyřešené
»»»»»»»»»»»»»»»»»»»»»»»
UPOZORNĚNÍ - můj Skype, Soukromé zprávy či email neslouží jako tech. podpora.
Dotazy prosím pište do fóra. Od toho tu je.
marek26
Level 1.5
Level 1.5
Příspěvky: 115
Registrován: 06 dub 2008 16:16

Re: Excel-makro VBA zoradenie

Příspěvek od marek26 »

rychla reakce vdaka

no takto, zastavilo to na .Row tam sa to oznacilo,je to ten prvy prikaz co si menil samozrejme na druhy prikaz co si menil to uz nepreslo. A Vypisalo tuto hlasku: compile eror
invalid or unqualified reference
tam asi nieco bude treba dopisat

inak je to obyc. tab od stlpca A1 po F1
riadkov ma 29 a to vzdy neplati zajtra moze byt riadkov 15 (85 atd.) treba ju najprv oznacit a zoradit podla "C" tak ako je v kode napisane len ten rozsah co ta prosim o pomoc mi nejde
Uživatelský avatar
mike007
Master Level 7.5
Master Level 7.5
Příspěvky: 5860
Registrován: 01 srp 2007 18:10
Bydliště: Pardubice
Kontaktovat uživatele:

Re: Excel-makro VBA zoradenie

Příspěvek od mike007 »

Jasně. Bude tam column, ne row. Občas se mi to plete :oops:
Každopádně i tak nevím, zda to bude korektně fungovat. Lepší když sem vložíš dokument s fiktivními daty a já si to v něm budu moci vyzkoušet než ti makro pošlu.
Nejlepší hra je Excel!
Pravidla fóra PC-helpJak označit téma za vyřešené
»»»»»»»»»»»»»»»»»»»»»»»
UPOZORNĚNÍ - můj Skype, Soukromé zprávy či email neslouží jako tech. podpora.
Dotazy prosím pište do fóra. Od toho tu je.
Uživatelský avatar
mike007
Master Level 7.5
Master Level 7.5
Příspěvky: 5860
Registrován: 01 srp 2007 18:10
Bydliště: Pardubice
Kontaktovat uživatele:

Re: Excel-makro VBA zoradenie

Příspěvek od mike007 »

Když teď tak přemýšlím... Nestačilo by to prostě jenom takto?

Kód: Vybrat vše

sub sort()
Range("A1").Select
    Range(Selection, Selection.End(xlDown)).Select
    Range(Selection, Selection.End(xlToRight)).Select
    ActiveWorkbook.Worksheets("bratislava").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("bratislava").Sort.SortFields.Add Key:=Range( _
        "C2"), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:= _
        xlSortNormal
    With ActiveWorkbook.Worksheets("bratislava").Sort
        .SetRange Range("A:F")
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
End Sub


Proč to dělat složitě.
Nejlepší hra je Excel!
Pravidla fóra PC-helpJak označit téma za vyřešené
»»»»»»»»»»»»»»»»»»»»»»»
UPOZORNĚNÍ - můj Skype, Soukromé zprávy či email neslouží jako tech. podpora.
Dotazy prosím pište do fóra. Od toho tu je.
Jenda70
nováček
Příspěvky: 17
Registrován: 08 dub 2008 00:29

Re: Excel-makro VBA zoradenie

Příspěvek od Jenda70 »

Pouzij pro zjisteni velikosti tabulky row (Column) a potom vztvor Range z cisel radku a sloupcu

Trebas takhle pomocne promenne xx a yy:
xx = Selection.Rows.Count
yy = Selection.Column.Count

Potom je sloupec C range(cells(1,3),cells(xx,3))
Cele potom trebas range(cells(1,1),cells(xx,yy)) nevim jak je cela tabulka velika.

Rozhodne me prijde lepsi pouzivat pro souradnice bunek v VBA cisla nez pismenka jako v XLS listech. Da se s nimi lepe manipulovat a vytvaret promenne oblasti (Range).
Uživatelský avatar
mike007
Master Level 7.5
Master Level 7.5
Příspěvky: 5860
Registrován: 01 srp 2007 18:10
Bydliště: Pardubice
Kontaktovat uživatele:

Re: Excel-makro VBA zoradenie

Příspěvek od mike007 »

Svatá pravda, Jendo :smile:
Nejlepší hra je Excel!
Pravidla fóra PC-helpJak označit téma za vyřešené
»»»»»»»»»»»»»»»»»»»»»»»
UPOZORNĚNÍ - můj Skype, Soukromé zprávy či email neslouží jako tech. podpora.
Dotazy prosím pište do fóra. Od toho tu je.
cauli
nováček
Příspěvky: 25
Registrován: 19 bře 2008 14:42

Re: Excel-makro VBA zoradenie

Příspěvek od cauli »

Zkuste použít tohle:
Mohlo by to funfovat jak potřebujete.

Kód: Vybrat vše

Sub pokus()
Range("A1").Select
    Range(Selection, Selection.End(xlDown)).Select
    Range(Selection, Selection.End(xlToRight)).Select
    ActiveWorkbook.Worksheets("bratislava").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("bratislava").Sort.SortFields.Add Key:=Range( _
        ("C:C")), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:= _
        xlSortNormal
    With ActiveWorkbook.Worksheets("bratislava").Sort
        .SetRange Range("A:F")
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
End Sub
marek26
Level 1.5
Level 1.5
Příspěvky: 115
Registrován: 06 dub 2008 16:16

Re: Excel-makro VBA zoradenie

Příspěvek od marek26 »

us to de, dakujem vam
posledny riadok su sumy aj te mi setridi, posledny sumarny riadok by mel zostat namieste . Ide to urobit aj tak, ze posledny sumarny riadok zostane na mieste? a ostatne setridit........
vdaka
cauli
nováček
Příspěvky: 25
Registrován: 19 bře 2008 14:42

Re: Excel-makro VBA zoradenie

Příspěvek od cauli »

Nejlehci moznost asi bude posunout sumu o jeden radek niz ale nevim jestli to tak bude fngovat, budu to muset zkusit.
Jenda70
nováček
Příspěvky: 17
Registrován: 08 dub 2008 00:29

Re: Excel-makro VBA zoradenie

Příspěvek od Jenda70 »

NEBO NAPIS:
xx = Selection.Rows.Count-1

:listen:
marek26
Level 1.5
Level 1.5
Příspěvky: 115
Registrován: 06 dub 2008 16:16

Re: Excel-makro VBA zoradenie

Příspěvek od marek26 »

diky slape to
Odpovědět
  • Podobná témata
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Přechod z Excel 21 na Excel 24
    od Snekment » » v Kancelářské balíky
    2 Odpovědi
    14437 Zobrazení
    Poslední příspěvek od Snekment
  • Pohoda a excel
    od brownwld » » v Kancelářské balíky
    1 Odpovědi
    7368 Zobrazení
    Poslední příspěvek od atari
  • Tisk sloupců vedle sebe na A4 - Excel
    od atari » » v Kancelářské balíky
    5 Odpovědi
    5935 Zobrazení
    Poslední příspěvek od atari
  • Excel 2016 - vzorec kombinace podmínek
    od MK_Vs » » v Kancelářské balíky
    5 Odpovědi
    6162 Zobrazení
    Poslední příspěvek od lubo.

Zpět na „Kancelářské balíky“