2015-03-24 3 views
0

У меня есть лист Excel с двумя столбцами, например:Сохранить ячейки разделены CSV файл в VBA

53400 10 
53480 1 
53470 1 
53460 1 
53450 1 
53440 1 

Я хотел бы сохранить новый .csv файл с помощью макроса VBA:

Application.SheetsInNewWorkbook = 1 
Worksheets("CSV").Range("A:B").Copy 

Workbooks.Add 

ActiveSheet.Paste 
Application.DisplayAlerts = False 

ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\file.csv", FileFormat:=xlCSV, CreateBackup:=False 

ActiveWorkbook.Close False 
Application.DisplayAlerts = True 

Worksheets("CSV").Range("A:B").ClearContents 

проблема в том, что я получаю .csv файл разделенные запятой, например:

53400,10 
53480,1 
53470,1 
53460,1 
53450,1 
53440,1 

И что я хочу аа .csv файл с одним значением в каждой ячейке, как исходные данные (я могу получить что-то подобное сохранение вручную):

53400 10 
53480 1 
53470 1 
53460 1 
53450 1 
53440 1 
+0

.csv - текстовый формат файла с «полями», разделенными разделительным символом, обычно запятой. Текстовые файлы не имеют ячеек. – pnuts

+0

Файл '.csv' не имеет ни одной ячейки !!! что вы хотите точно? Лист Excel?! –

+0

Я понимаю, что вы говорите, но если вы вручную сохраните файл как .csv (macintosh) в Microsoft Excel, вы получите файл без запятых, но разделяете ячейки. Я разместил здесь пример файла: [link] (http://www.filedropper.com/libro1) – Marc

ответ

0

Проблема была разделитель списка. Мне пришлось использовать «;» вместо ",". Я могу настроить его, добавив Local: = True при сохранении книги. Вы также можете заставить разделитель списка «;» используя другую команду.

Смежные вопросы