Метод DoCmd.TransferText (Access)
Метод TransferText выполняет действие TransferText в Visual Basic.
Синтаксис
выражение.TransferText (TransferType, SpecificationName, TableName, FileName, HasFieldNames, HTMLTableName, CodePage)
выражение: переменная, представляющая объект DoCmd.
Параметры
Имя | Обязательный или необязательный | Тип данных | Описание |
---|---|---|---|
TransferType | Необязательный | AcTextTransferType | Нужный тип преобразования. Вы можете импортировать данные из текстовых или HTML-файлов с разделителями или полями фиксированного размера, экспортировать их в такие файлы или создать ссылку на них. Значение по умолчанию — acImportDelim. В проекте Microsoft Access (ADP) поддерживаются только типы передаваемых данных acImportDelim, acImportFixed, acExportDelim, acExportFixed и acExportMerge. |
SpecificationName | Необязательный | Variant | Строковое выражение, которое является именем спецификации импорта или экспорта, созданной и сохраненной в текущей базе данных. Для текстового файла с полями фиксированного размера необходимо указать аргумент или использовать файл schema.ini, который должен находиться в той же папке, что и импортируемый, связываемый или экспортируемый текстовый файл. Чтобы создать файл схемы, можно использовать мастер импорта и экспорта текста для создания файла. Для текстовых файлов с разделителями и файлов данных слияния Microsoft Word можно оставить этот аргумент пустым для выбора спецификаций по умолчанию для импорта и экспорта. |
TableName | Необязательный | Variant | Строковое выражение, являющееся именем таблицы Access для импорта, экспорта или связывания текстовых данных, либо запрос Access, результаты которого нужно экспортировать в текстовый файл. |
FileName | Необязательный | Variant | Строковое выражение, являющееся полным именем (включая путь) текстового файла для импорта, экспорта или связывания. |
HasFieldNames | Необязательный | Variant | Используйте значение True (1), чтобы использовать первую строку текстового файла в качестве имен полей при импорте, экспорте или связывании. Используйте значение False (0), чтобы считать первую строку текстового файла обычными данными. Если оставить этот аргумент пустым, предполагается, что используется значение по умолчанию (False). Этот аргумент игнорируется для файлов данных слияния Microsoft Word, которые всегда должны содержать имена полей в первой строке. |
HTMLTableName | Необязательный | Variant | Строковое выражение, являющееся именем таблицы (или списка) в HTML-файле, которую необходимо импортировать или связать. Этот аргумент игнорируется, если для аргумента TransferType не выбрано значение acImportHTML или acLinkHTML. Если данный аргумент не задан, импортируется или связывается первая таблица или список в HTML-файле. Имя таблицы или списка в HTML-файле определяется по тексту, который указан тегом CAPTION, если такой тег существует. Если тега CAPTION нет, имя определяется по тексту с тегом TITLE. Если несколько таблиц или списков имеют одно и то же имя, Access различает их, добавляя число в конец каждого имени таблицы или списка (например, "Сотрудники1" и "Сотрудники2"). |
Идентификаторы CodePage | Необязательный | Variant | Значение Long, указывающее кодировку кодовой страницы. |
Примечания
Используйте метод TransferText для импорта или экспорта текста между текущей базой данных Access или проектом Access (ADP) и текстовым файлом. Вы также можете связать данные в текстовом файле с текущей базой данных Access. Это позволит просматривать текстовые файлы через Access, при этом не теряя возможность работы с ними в текстовом редакторе. Вы также можете выполнить импорт из таблицы или списка в HTML-файле, экспортировать данные в них или создать связь с ними.
Вы можете экспортировать данные запросов на выборку Access в текстовые файлы. Access экспортирует результирующий набор запроса так же, как таблицу.
Пример
В следующем примере данные из внешнего отчета из таблицы Access экспортируются в текстовый файл с разделителями April.doc с использованием стандартного вывода спецификации.
DoCmd.TransferText acExportDelim, "Standard Output", _
"External Report", "C:\Txtfiles\April.doc"
В следующем примере коде показано, как создать новый документ Microsoft Word и выполнить слияние с данными, хранящимися в таблице Customers (Клиенты).
Public Sub DoMailMerge(strFileSavePath As String)
' Create new Word App, add a document and set it visible
Dim wdApp As New Word.Application
wdApp.Documents.Add
wdApp.Visible = True
' Open the data set from this database
wdApp.ActiveDocument.MailMerge.OpenDataSource _
Name:=Application.CurrentProject.FullName, _
OpenExclusive:=False, _
LinkToSource:=True, _
Connection:="TABLE Customers", _
SQLStatement:="SELECT Customers.* FROM Customers;"
' Add fields to the mail merge document
Dim oSel As Object
Set oSel = wdApp.Selection
With wdApp.ActiveDocument.MailMerge.Fields
oSel.TypeText vbNewLine & vbNewLine
.Add oSel.range, "First_Name"
oSel.TypeText " "
.Add oSel.range, "Last_Name"
oSel.TypeText vbNewLine
.Add oSel.range, "Company"
oSel.TypeText vbNewLine
.Add oSel.range, "Address"
oSel.TypeText vbNewLine
.Add oSel.range, "City"
oSel.TypeText ", "
.Add oSel.range, "State"
oSel.TypeText " "
.Add oSel.range, "Zip"
oSel.TypeText vbNewLine
oSel.TypeParagraph
oSel.TypeText "Dear "
.Add oSel.range, "First_Name"
oSel.TypeText ","
oSel.TypeText vbNewLine
oSel.TypeParagraph
oSel.TypeText "We have created this mail just for you..."
oSel.TypeText vbNewLine
oSel.TypeText vbNewLine
oSel.TypeText "Sincerely," & vbNewLine & "John Q. Public"
oSel.TypeText vbFormFeed
End With
' Execute the mail merge and save the document
wdApp.ActiveDocument.MailMerge.Execute
wdApp.ActiveDocument.SaveAs strFileSavePath
' Close everything and Cleanup Variables
Set oSel = Nothing
wdApp.ActiveDocument.Close False
Set wdApp = Nothing
End Sub
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.