Переписать все латинские буквы верхнего регистра из каждой строки в новый файл

Обновлено: 06.07.2024

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

Данная статья применима к файлам баз данных Microsoft Access (MDB и ACCDB).

Аннотация

В данной статье описаны способы преобразования данных текстового типа в необходимый формат регистра букв.

Дополнительная информация

Значения типа текст можно преобразовать в необходимый формат регистра букв с помощью одного из указанных ниже способов.

Способ 1. Использование встроенной функции преобразования строк

Способ 2. Применение пользовательской функции

Примечание. Перед использованием какого-либо из этих способов создайте таблицу-пример с именем MyTestTextList. Для этого выполните указанные ниже действия.

Создайте в Access пустую базу данных.

Создайте таблицу с полем, указанным ниже.

Сохраните таблицу с именем MyTestTextList.

Добавьте в поле testText следующий текст:

Сохраните базу данных с именем MyTestDatabase.

Способ 1. Использование встроенной функции преобразования строк

Откройте базу данных MyTestDatabase в Microsoft Access.

В меню Вставка выберите команду Запрос.

Примечание. В Microsoft Office Access 2007 нажмите кнопку Конструктор запросов в группе Другие на вкладке Создание.

В диалоговом окне Новый запрос щелкните элемент Конструктор.

Примечание. В Access 2007 пропустите этот этап.

В диалоговом окне Добавление таблицы нажмите кнопку Закрыть.

В меню Вид выберите пункт Режим SQL.

Примечание. В Microsoft Office Access 2007 нажмите кнопку SQL в группе Результаты на вкладке Конструктор.

Введите в режиме SQL следующий код:

В меню Запрос выберите пункт Запуск.

Примечание. В Microsoft Office Access 2007 нажмите кнопку Выполнить в группе Результаты на вкладке Конструктор.

В результате будет выведен следующий текст:

Примечание. Метод StrConv(<Text>,3) преобразует первую букву каждого слова в тексте в верхний регистр. Это происходит только в том случае, если слова разделены пробелом или знаком табуляции. Специальные знаки, такие как «-» или «$», разделителями слов не считаются.

Способ 2. Применение пользовательской функции

Откройте базу данных MyTestDatabase в Microsoft Access.

В меню Вставка выберите команду Модуль.

Примечание. В Microsoft Office Access 2007 щелкните стрелку раскрывающегося списка под кнопкой Макрос в группе Другие на вкладке Создание.

Введите в текущем модуле следующий код и сохраните изменения:

Примечание. Чтобы эта функция работала правильно, в разделе объявлений модуля необходимо указать директиву Option Compare Database.

В меню Файл выберите команду Закрыть и вернуться в Microsoft Access.

Примечание. В Access 97 выберите в меню Файл команду Закрыть.

В меню Вставка выберите пункт Запрос.

Примечание. В Microsoft Office Access 2007 нажмите кнопку Конструктор запросов в группе Другие на вкладке Создание.

В диалоговом окне Новый запрос щелкните элемент Конструктор.

Примечание. В Access 2007 пропустите этот этап.

В диалоговом окне Добавление таблицы нажмите кнопку Закрыть.

В меню Вид выберите пункт Режим SQL.

Примечание. В Microsoft Office Access 2007 нажмите кнопку SQL в группе Результаты на вкладке Конструктор.

Введите в режиме SQL следующий код:

Обратите внимание, что за исключением вызова функции этот запрос аналогичен тому, который использовался в способе 1.

В меню Запрос выберите пункт Запуск.

Примечание. В Microsoft Office Access 2007 нажмите кнопку Выполнить в группе Результаты на вкладке Конструктор.

В результате будет выведен следующий текст:

В обоих случаях результаты одинаковы, но второй способ позволяет выбрать любой формат регистра букв. Можно определить необходимый формат регистра букв или другой разделитель слов, например «-» или «_». Для этого следует изменить функцию Proper, код которой был приведен на этапе 3.

Ссылки

Дополнительные сведения см. в следующих статьях базы знаний Майкрософт:

298607 ACC2002: Использование функции StrConv для преобразования первых букв слов и фраз в заглавные (Эта ссылка может указывать на содержимое полностью или частично на английском языке)

253911 ACC2000: Использование функции StrConv для преобразования первых букв слов и фраз в заглавные (Эта ссылка может указывать на содержимое полностью или частично на английском языке)

302499 ACC97: Использование функции StrConv для преобразования первых букв слов и фраз в заглавные (Эта ссылка может указывать на содержимое полностью или частично на английском языке)

209903 ACC2000: Не удается использовать внутренние константы в запросах, формах и отчетах (Эта ссылка может указывать на содержимое полностью или частично на английском языке)

Читайте также: