Процедура экспорта текстового файла с разделителями-запятыми и кавычками в Excel
Сводка
В Microsoft Excel нет команды меню для автоматического экспорта данных в текстовый файл, чтобы текстовый файл экспортировался как с кавычками, так и с запятыми в качестве разделителей. Например, нет команды для автоматического создания текстового файла, содержащего следующие данные:
"Text1", "Text2", "Text3"
Однако эту функцию можно создать в Excel с помощью процедуры Microsoft Visual Basic для приложений.
Дополнительная информация
Корпорация Майкрософт предоставляет примеры программирования только в целях демонстрации без явной или подразумеваемой гарантии. Данное положение включает, но не ограничивается этим, подразумеваемые гарантии товарной пригодности или соответствия отдельной задаче. Эта статья предполагает, что пользователь знаком с представленным языком программирования и средствами, используемыми для создания и отладки процедур. Специалисты технической поддержки Майкрософт могут пояснить работу той или иной процедуры, но модификация примеров и их адаптация к задачам разработчика не предусмотрена.
Оператор Print # можно использовать в процедуре Visual Basic, аналогичной приведенной ниже, для экспорта текстового файла с кавычками и запятыми в качестве разделителей. Чтобы процедура правильно функционировала, выделите ячейки, содержащие данные, перед ее выполнением.
Прежде чем работать со следующим примером кода, выполните следующие действия:
Откройте новую книгу.
В Microsoft Office Excel 2003 или Microsoft Excel 2002 в меню Сервис наведите указатель мыши на макрос, а затем выберите Visual Basic Редактор. Кроме того, нажмите клавиши ALT+F11.
В Microsoft Office Excel 2007 откройте вкладку Разработчик , а затем выберите Visual Basic в группе Код . Кроме того, нажмите клавиши ALT+F11.
Примечание.
Чтобы отобразить вкладку Разработчик на ленте, нажмите кнопку Microsoft Office, выберите пункт Параметры Excel, выберите категориюПопулярные, выберите вкладку Показать разработчик в поле Лента проверка и нажмите кнопку ОК.
В Редактор Visual Basic в меню Вставка щелкните Модуль.
Введите или вставьте следующий пример кода на лист модуля.
Sub QuoteCommaExport() ' Dimension all variables. Dim DestFile As String Dim FileNum As Integer Dim ColumnCount As Long Dim RowCount As Long ' Prompt user for destination file name. DestFile = InputBox("Enter the destination filename" _ & Chr(10) & "(with complete path):", "Quote-Comma Exporter") ' Obtain next free file handle number. FileNum = FreeFile() ' Turn error checking off. On Error Resume Next ' Attempt to open destination file for output. Open DestFile For Output As #FileNum ' If an error occurs report it and end. If Err <> 0 Then MsgBox "Cannot open filename " & DestFile End End If ' Turn error checking on. On Error GoTo 0 ' Loop for each row in selection. For RowCount = 1 To Selection.Rows.Count ' Loop for each column in selection. For ColumnCount = 1 To Selection.Columns.Count ' Write current cell's text to file with quotation marks. Print #FileNum, """" & Selection.Cells(RowCount, _ ColumnCount).Text & """"; ' Check if cell is in last column. If ColumnCount = Selection.Columns.Count Then ' If so, then write a blank line. Print #FileNum, Else ' Otherwise, write a comma. Print #FileNum, ","; End If ' Start next iteration of ColumnCount loop. Next ColumnCount ' Start next iteration of RowCount loop. Next RowCount ' Close destination file. Close #FileNum End Sub
Перед выполнением макроса выберите данные, которые нужно экспортировать, а затем запустите подпрограмму QuoteCommaExport.
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по