Excel-makro VBA zoradenie

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

Moderátor: Mods_senior

marek26
Level 1.5
Level 1.5
Příspěvky: 115
Registrován: duben 08
Pohlaví: Nespecifikováno
Stav:
Offline

Excel-makro VBA zoradenie

Příspěvekod marek26 » 08 dub 2008 11:40

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

Reklama
Uživatelský avatar
mike007
Master Level 7.5
Master Level 7.5
Příspěvky: 5860
Registrován: srpen 07
Bydliště: Pardubice
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Excel-makro VBA zoradenie

Příspěvekod mike007 » 08 dub 2008 12:42

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 pište do fóra. Od toho tu je.

marek26
Level 1.5
Level 1.5
Příspěvky: 115
Registrován: duben 08
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Excel-makro VBA zoradenie

Příspěvekod marek26 » 08 dub 2008 14:14

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: srpen 07
Bydliště: Pardubice
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Excel-makro VBA zoradenie

Příspěvekod mike007 » 08 dub 2008 14:50

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 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: srpen 07
Bydliště: Pardubice
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Excel-makro VBA zoradenie

Příspěvekod mike007 » 08 dub 2008 15:06

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 pište do fóra. Od toho tu je.

Jenda70
nováček
Příspěvky: 17
Registrován: duben 08
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Excel-makro VBA zoradenie

Příspěvekod Jenda70 » 08 dub 2008 15:14

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: srpen 07
Bydliště: Pardubice
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Excel-makro VBA zoradenie

Příspěvekod mike007 » 08 dub 2008 15:17

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 pište do fóra. Od toho tu je.

cauli
nováček
Příspěvky: 25
Registrován: březen 08
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Excel-makro VBA zoradenie

Příspěvekod cauli » 08 dub 2008 15:36

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: duben 08
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Excel-makro VBA zoradenie

Příspěvekod marek26 » 08 dub 2008 16:02

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: březen 08
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Excel-makro VBA zoradenie

Příspěvekod cauli » 08 dub 2008 16:07

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: duben 08
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Excel-makro VBA zoradenie

Příspěvekod Jenda70 » 08 dub 2008 16:52

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

:listen:

marek26
Level 1.5
Level 1.5
Příspěvky: 115
Registrován: duben 08
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Excel-makro VBA zoradenie

Příspěvekod marek26 » 08 dub 2008 17:06

diky slape to


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Makro pro myš Rapture Python
    od mmmartin » 27 srp 2023 15:18 » v Problémy s hardwarem
    9
    1147
    od mmmartin Zobrazit poslední příspěvek
    29 srp 2023 16:47
  • Excel a OneDrive
    od sginfo » 11 zář 2023 15:28 » v Kancelářské balíky
    16
    6382
    od mirekol Zobrazit poslední příspěvek
    20 říj 2023 08:31
  • Excel - vlastní formát Příloha(y)
    od Story-Long » 11 srp 2023 14:50 » v Kancelářské balíky
    3
    2062
    od Story-Long Zobrazit poslední příspěvek
    14 srp 2023 10:11
  • Excel komparacedvou soborů Příloha(y)
    od teichmann.ondrej » 15 dub 2024 17:26 » v Kancelářské balíky
    11
    3410
    od teichmann.ondrej Zobrazit poslední příspěvek
    22 dub 2024 15:45
  • excel-posun makra
    od actionboy » 12 bře 2024 18:59 » v Kancelářské balíky
    1
    456
    od Grimm Zobrazit poslední příspěvek
    12 bře 2024 21:43

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

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 34 hostů