Sortowanie alfabetyczne słów o tej samej długości VBA Excel.

Odpowiedz Nowy wątek
2016-12-15 12:07

Rejestracja: 3 lata temu

Ostatnio: 17 godzin temu

1

Witam.
Jak w temacie- czy mógłby mi ktoś podpowiedzieć (lub napisać fragment kodu) za pomocą którego może być zrealizowane alfabetyczne sortowanie słów(o jednakowej długości) umieszczonych w arkuszu Excela?

Pozostało 580 znaków

2016-12-15 12:29

Rejestracja: 17 lat temu

Ostatnio: 4 minuty temu

1

Jeżeli są w kolumnie A:

Dim lastrow As Long
lastrow = Cells(Rows.Count, 1).End(xlUp).Row
Range("A1:A" & lastrow).Sort key1:=Range("A1:A" & lastrow), _
   order1:=xlAscending, Header:=xlNo
edytowany 1x, ostatnio: Panczo, 2016-12-15 12:35

Pozostało 580 znaków

2016-12-15 13:54

Rejestracja: 3 lata temu

Ostatnio: 17 godzin temu

1

Dzięki... ale mam pewien problem... dopiero zaczynam z VBA i powiem szczerze, że słabo u mnie ze zrozumieniem tego... spróbuję w necie funkcja po funkcji poczytać ale byłbym ogromnie wdzięczny gdybyś jakoś mi to rozpisał pseudokodem albo jakoś żebym chociaż trochę zrozumiał te funkcje ;/ Pozdrawiam.

Pozostało 580 znaków

2016-12-15 14:08

Rejestracja: 17 lat temu

Ostatnio: 4 minuty temu

2

To za bardzo nie ma czego tlumaczyć...

'Deklarujemy zmienna lastrow o type Long
Dim lastrow As Long

'sprawdzamy do którego wiersza jest wypełniona kolumnna A
'i wynik przypisujemy do zmiennej lastrow
lastrow = Cells(Rows.Count, 1).End(xlUp).Row

'Wykorzystanie metody Obiektu Range Sort do posortowania danych w kolumnie
Range("A1:A" & lastrow).Sort key1:=Range("A1:A" & lastrow),  order1:=xlAscending, Header:=xlNo

Po polsku:

  1. sprawdź gdzie jest ostatni wpis w kolumnie a
  2. Zaznacz komórki od A1 do ostatniego wpisu
  3. Posortuj

Do poczytania

  1. Typy danych
  2. Obiekt Range
  3. Range.Sort Method

UPDATE:

Punkt startu: Excel VBA reference

edytowany 2x, ostatnio: Panczo, 2016-12-15 14:11

Pozostało 580 znaków

2016-12-15 14:16

Rejestracja: 3 lata temu

Ostatnio: 17 godzin temu

1

Dobra, dzięki za cierpliwość i za pomoc już zacząłem troche już sam ogarnąłem to .End(xlUp).Row tzn. że idziemy w dół (wiem, że up ale w sensie że "w górę" coraz większe nr. wierszy) aż napotkamy pierwszą pustą komórkę?? No niby tak ale babka na zajęciach ma podejście w stylu "zróbcie to" ale nic nie tłumaczy a ja nawet nie mam specjalnie żadnych materiałów żeby mieć szansę chociaż to ogarnąć (no oprócz neta oczywiście ;) ). Dzięki wielkie!!!

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0