Wątek przeniesiony 2021-09-16 10:10 z Inne języki programowania przez cerrato.

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

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?

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

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.

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

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!!!

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