I didn't read your original post carefully enough. You want to save
only the highlighted selection to a new .csv file, and the macro I
gave you saves the entire sheet to a .csv file.
This will save the highlighted selection to a .csv file with the same
name as the original .xls file, and will reload the original .xls
file:
Sub SaveSelectionCSV()
Dim fnamexls As String
Dim fnamecsv As String
fnamexls = ActiveWorkbook.FullName
fnamecsv = Replace(fnamexls, ".xls", ".csv")
Selection.Copy
Sheets.Add
ActiveSheet.Paste
ActiveWorkbook.SaveAs Filename:=fnamecsv, _
FileFormat:=xlCSV, CreateBackup:=False
ActiveWorkbook.Close SaveChanges:=False
Workbooks.Open Filename:=fnamexls
End Sub
In either case, be careful you are not *starting* with a .csv file. If you answer "yes" to "do you want to overwrite the current file?", that's exactly what will happen.
On the other hand, if you are starting with an .xls file and you already have a .csv file of the same name, you can decide whether or not to overwrite the old .csv file as you see fit.