Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Rangebefehl mit variabler Spalte

Rangebefehl mit variabler Spalte
22.01.2013 13:07:17
Hasi

Sub Sortieren_nach_Datum()
Application.ScreenUpdating = False
Call Blattschutz_aufheben
ActiveWorkbook.Worksheets("Daten").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Daten").Sort.SortFields.Add Key:=Range("N18:N3000") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Daten").Sort.SortFields.Add Key:=Range("M18:M3000") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Daten").Sort
.SetRange Range("J18:Q3000")
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
'Range("J18").Select
Call Blattschutz_setzen
End Sub
Die Spalten N bzw. M sollen dabei variabel sein. Am besten wäre ein cells(z,s) da ich so mit Vorschüben arbeiten kann, aber ich weiß nicht wie ich es genau umsetze.
Vielen dank schon mal für eure Hilfe!

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Rangebefehl mit variabler Spalte
22.01.2013 13:41:59
Daniel
Hi
beim Key reicht es eigenlich aus, nur eine Zelle der Sortierspalte anzugeben.
dim S as long
S = 13 'spalte M
...Key:=Cells(18, S) ...
wenn du doch ganze Spalte verwenden willst, hier ein paar Varianten:
Key:=Range(Cells(18, S), Cells(3000, S))
Key:=Cells(18, S).Resize(3000-18+1, 1)
Key:=Range("18:3000").Columns(S)
Gruß Daniel

Anzeige
AW: Rangebefehl mit variabler Spalte
22.01.2013 14:06:31
Hasi
Hi Daniel!
danke für die große Auswahl. Ich bevorzuge diesen Ausdruck (kann ich mir am besten merken ;-) ):
Key:=Range(Cells(18, S), Cells(3000, S))
lg Hasi

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige