Your code is sorting only range A1. You need to sort all the
columns. Change
..Range("A1").Sort _
to
..UsedRange.Sort (...)
--
Cordially,
Chip Pearson
Microsoft MVP - Excel
Pearson Software Consulting, LLC
www.cpearson.com
"Squid" wrote in message
news:Po01c.457337$na.1094918@attbi_s04...
I have the following code. For some reason Key2 is not being
sorted the way
I need it. For my santity, I tried switching between
ascending/descending
in key2 and both results same. Any ideas why? The sort range
is columns
A:AJ. Column B contains numbers and Column D contains dates.
Private Sub Workbook_BeforeClose(Cancel As Boolean)
'sort contract workbook (Sheet1) only if Settlement4b.xls is
not open
Dim Wsheet As Worksheet
Set Wsheet = Worksheets("Sheet1") 'Contracts workbook
If Not WorkbookOpen("Settlement4b.xls") Then
With Wsheet
.Select
.Range("A1").Sort _
Key1:=.Range("B1"), Order1:=xlAscending,
Header:=xlYes, _
Key2:=.Range("D1"), Order1:=xlDescending,
Header:=xlYes
End With
End If
As aways Thanks!
Mike
End Sub