Чтение текста в excel

Excel для Microsoft 365 Excel 2021 Excel 2019 Excel 2016 Excel 2013 Excel 2010 Еще…Меньше

Использование средства «Проговаривать ячейки» улучшает специальные возможности, позволяя Excel читать содержимое ячейки, диапазона ячеек или листа. Доступ к этой функции можно получить на панели быстрого доступа.

  1. Рядом с панелью быстрого доступа щелкните «Настройка панели быстрого доступа» и выберите «Дополнительные команды».

    Пункт ''Другие команды'' в диалоговом окне ''Настройка панели быстрого доступа''

  2. В списке Выбрать команды из выберите элемент Все команды.

  3. Прокрутите вниз и выберите команду «Проговаривать ячейки «. Нажмите кнопку Добавить. Выполните то же самое для команды «Остановить говорить «.

    Команды "Проговаривать ячейки"

  4. Нажмите кнопку ОК.

Примечание: Необходимо настроить звук компьютера для прослушивания речи.

Примечание: Команды преобразования текста в речь в Excel 2007 и 2003 можно использовать, наведя указатель мыши на пункт Речь в меню Сервис и выбрав команду Показывать панель преобразования текста в речь.

Использование преобразования текста в речь

Начать говорить

Если вы хотите использовать команду преобразования текста в речь, выделите ячейку, диапазон ячеек или весь лист и нажмите кнопку «Проговаривать ячейки» на панели инструментов быстрого доступа. Кроме того, можно щелкнуть «Проговаривать ячейки», не выделив ни одной ячейки, и Excel автоматически расширит выделение, включив соседние ячейки, содержащие значения.

Панель быстрого доступа к командам службы "Речь" Excel

Прекратить говорить

Чтобы остановить чтение, нажмите кнопку «Остановить говорить» на панели быстрого доступа или щелкните любую ячейку за пределами области, выбранной для чтения.

Проговаривание после каждого ввода данных в ячейку

  1. Нажмите кнопку «Проговаривать Изображение кнопки«.

  2. Введите данные в любую ячейку. Нажмите клавишу ВВОД, и компьютер считывает содержимое ячейки.

Примечание: Если скрыть панель инструментов «Преобразование текста в речь» и вы не отключили функцию «Проговаривать при вводе Изображение кнопки«, компьютер продолжит чтение каждой записи ячейки, которую вы создаете. Нажмите кнопку « Изображение кнопки «, чтобы отключить ее.

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.

Нужна дополнительная помощь?

VBA Program to read a Text file line by line (Sales Data) and places on a worksheet. 

Sales Data in Text File: 5 Fields [ Product, Qtr 1, Qtr 2, Qtr 3 and Qtr 4 ] and 25 Records (Incl. header)

Sales data

VBA code will read a text file and places on worksheet cells as below

VBA Code:

  • Declaring variables:
Variables Data Type Comments
line String Read text file line by line
Filename String Input file name (Full path)
i Integer Iterator
valueArr() String split the sentence by comma and store it in an array variable of type String
    'Variable declarations
    Dim line As String, Filename As String, i As Integer, valuesArr() As String
  • Initialize “Filename” variable with full path and filename
    'Text file fullPath
    Filename = "D:ExcelReadTextFilesales.txt" 'update your full file path
    i = 1
  • Open input file to read text 
    'Open file
    Open Filename For Input As #2
  • Read input file line by line
    'Read line by line - text file
    While Not EOF(2)
        Line Input #2, line
  • Split by comma and store it in valueArr().  In our example, each line has 5 values concatenated with comma.
        'split the line by comma separated, assigned in an array
        valuesArr() = Split(line, ",")
  • Add text to respective cells from valuesArr().  Read each item in an array by it’s index value
        Cells(i, "A").Value = valuesArr(0)
        Cells(i, "B").Value = valuesArr(1)
        Cells(i, "C").Value = valuesArr(2)
        Cells(i, "D").Value = valuesArr(3)
        Cells(i, "E").Value = valuesArr(4)
  • Increment counter i, to move next line.
        i = i + 1
  • Close while loop
    Wend
  • Close file
'Close file
Close #2

Approach:

Step 1: Open Excel.

Step 2: Add a shape (Read Text File) to your worksheet  .

Step 3: Right-click on “Read Text file” and “Assign Macro..”

Step 4: Select ReadTextFileLineByLine Macro

Step 5: Save your excel file as “Excel Macro-Enabled Workbook”  *.xlsm

Step 6: Click “Read Text file” 

Step 7: Adjust column width in your excel file.

Для удобства работы с текстом в Excel существуют текстовые функции. Они облегчают обработку сразу сотен строк. Рассмотрим некоторые из них на примерах.

Примеры функции ТЕКСТ в Excel

Преобразует числа в текст. Синтаксис: значение (числовое или ссылка на ячейку с формулой, дающей в результате число); формат (для отображения числа в виде текста).

Самая полезная возможность функции ТЕКСТ – форматирование числовых данных для объединения с текстовыми данными. Без использования функции Excel «не понимает», как показывать числа, и преобразует их в базовый формат.

Покажем на примере. Допустим, нужно объединить текст в строках и числовые значения:

Выручка.

Использование амперсанда без функции ТЕКСТ дает «неадекватный» результат:

Плохой пример.

Excel вернул порядковый номер для даты и общий формат вместо денежного. Чтобы избежать подобного результата, применяется функция ТЕКСТ. Она форматирует значения по заданию пользователя.

ТЕКСТ.

Формула «для даты» теперь выглядит так:

Второй аргумент функции – формат. Где брать строку формата? Щелкаем правой кнопкой мыши по ячейке со значением. Нажимаем «Формат ячеек». В открывшемся окне выбираем «все форматы». Копируем нужный в строке «Тип». Вставляем скопированное значение в формулу.

Формат ячеек.

Приведем еще пример, где может быть полезна данная функция. Добавим нули в начале числа. Если ввести вручную, Excel их удалит. Поэтому введем формулу:

Числа.

Если нужно вернуть прежние числовые значения (без нулей), то используем оператор «—»:

Оператор 2 минуса.

Обратите внимание, что значения теперь отображаются в числовом формате.



Функция разделения текста в Excel

Отдельные текстовые функции и их комбинации позволяют распределить слова из одной ячейки в отдельные ячейки:

  • ЛЕВСИМВ (текст; кол-во знаков) – отображает заданное число знаков с начала ячейки;
  • ПРАВСИМВ (текст; кол-во знаков) – возвращает заданное количество знаков с конца ячейки;
  • ПОИСК (искомый текст; диапазон для поиска; начальная позиция) – показывает позицию первого появления искомого знака или строки при просмотре слева направо

При разделении текста в строке учитывается положение каждого знака. Пробелы показывают начало или конец искомого имени.

Распределим с помощью функций имя, фамилию и отчество в разные столбцы.

ФИО.

В первой строке есть только имя и фамилия, разделенные пробелом. Формула для извлечения имени: =ЛЕВСИМВ(A2;ПОИСК(» «;A2;1)). Для определения второго аргумента функции ЛЕВСИМВ – количества знаков – используется функция ПОИСК. Она находит пробел в ячейке А2, начиная слева.

Формула для извлечения фамилии:

ПРАВСИМВ.

С помощью функции ПОИСК Excel определяет количество знаков для функции ПРАВСИМВ. Функция ДЛСТР «считает» общую длину текста. Затем отнимается количество знаков до первого пробела (найденное ПОИСКом).

Вторая строка содержит имя, отчество и фамилию. Для имени используем такую же формулу:

ЛЕВСИМВ.

Формула для извлечения фамилии несколько иная: Это пять знаков справа. Вложенные функции ПОИСК ищут второй и третий пробелы в строке. ПОИСК(» «;A3;1) находит первый пробел слева (перед отчеством). К найденному результату добавляем единицу (+1). Получаем ту позицию, с которой будем искать второй пробел.

Часть формулы – ПОИСК(» «;A3;ПОИСК(» «;A3;1)+1) – находит второй пробел. Это будет конечная позиция отчества.

Далее из общей длины строки отнимается количество знаков с начала строки до второго пробела. Результат – число символов справа, которые нужно вернуть.

Формула «для отчества» строится по тем же принципам:

ПСТР.

Функция объединения текста в Excel

Для объединения значений из нескольких ячеек в одну строку используется оператор амперсанд (&) или функция СЦЕПИТЬ.

Например, значения расположены в разных столбцах (ячейках):

ФИО 2.

Ставим курсор в ячейку, где будут находиться объединенные три значения. Вводим равно. Выбираем первую ячейку с текстом и нажимаем на клавиатуре &. Затем – знак пробела, заключенный в кавычки (“ “). Снова — &. И так последовательно соединяем ячейки с текстом и пробелы.

Получаем в одной ячейке объединенные значения:

Объединение.

Использование функции СЦЕПИТЬ:

СЦЕПИТЬ.

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

Функция ПОИСК текста в Excel

Функция ПОИСК возвращает начальную позицию искомого текста (без учета регистра). Например:

СЦЕПИТЬ.

Функция ПОИСК вернула позицию 10, т.к. слово «Захар» начинается с десятого символа в строке. Где это может пригодиться?

Функция ПОИСК определяет положение знака в текстовой строке. А функция ПСТР возвращает текстовые значения (см. пример выше). Либо можно заменить найденный текст посредством функции ЗАМЕНИТЬ.

Скачать пример функции для работы с текстом в Excel

Читайте так же: как перевести число и сумму прописью.

Синтаксис функции ПОИСК:

  • «искомый текст» — что нужно найти;
  • «просматриваемый текст» — где искать;
  • «начальная позиция» — с какой позиции начинать искать (по умолчанию – 1).

Если нужно учитывать регистр, используется функция НАЙТИ.

Текстовые функции Excel в примерах

​Смотрите также​ его вниз до​ и столбцов в​ наведите курсор мыши​ этой цели воспользуйтесь​ ВВОД. Диапазон автоматически​ границы столбцов, «подбираем»​ строки. Программа автоматически​ форматировать, использовать для​ по умолчанию будет​ ДЛСТР(B5)-НАЙТИ(«:»;B5)-1, определяющая позицию​, чтобы отключить​ речь щелкните ее​ является возможность отображения​​ раз кстати, и​​находит вхождение одной​

СЦЕПИТЬ

​ считается за символ.​Excel предлагает большое количество​ ячейки C3. Вы​ сантиметрах. Для этого​ на границу заголовков​​ числовыми фильтрами (картинка​​ расширится.​ высоту для строк.​ расширит границы.​

Текстовые функции в Excel

СТРОЧН

​ построения графиков, диаграмм,​ возвращен первый символ​ символа «u» в​ его.​ на панели быстрого​ в текстовой строке​​ Вы получили от​​ строки в другую​Функция​ функций, с помощью​

Текстовые функции в Excel

ПРОПИСН

​ выделили диапазон из​​ нужно перейти в​​ колонок ячеек между​ выше). Убираете галочки​Если необходимо увеличить количество​Чтобы заполнить графу «Стоимость»,​Если нужно сохранить ширину​​ сводных отчетов.​​ строки. Например, функция​ слове «unknown» (единица​

Текстовые функции в Excel

ПРОПНАЧ

​Функция ЛЕВСИМВ в Excel​​ доступа.​​ чисел и дат​ него хотя бы​ и возвращает положение​СОВПАД​

Текстовые функции в Excel

​ которых можно обрабатывать​ 2-ух ячеек (C2:C3)​ режим разметки страниц:​ A и B.​ напротив тех значений,​

Текстовые функции в Excel

ДЛСТР

​ строк, зацепляем в​ ставим курсор в​ столбца, но увеличить​Работа в Экселе с​ =ЛЕВСИМВ(«текст») вернет значение​​ вычтена для удаления​​ используется для получения​

Текстовые функции в Excel

ЛЕВСИМВ и ПРАВСИМВ

​Примечание:​​ в нужном формате​​ малость полезной информации.​​ первого символа искомой​​позволяет сравнить две​ текст. Область применения​ для дальнейшей работы​ «Вид»-«Разметка страницы». Щелкаем​ Курсор изменит свой​

Текстовые функции в Excel

Текстовые функции в Excel

ПСТР

​ которые должны быть​​ нижнем правом углу​​ первую ячейку. Пишем​ высоту строки, воспользуемся​ таблицами для начинающих​ «т».​

Текстовые функции в Excel

СОВПАД

​ пробела).​​ части текста и​​ Команды преобразования текста в​ (см. подробнее об​ Всего доброго и​ фразы относительно начала​ текстовые строки в​ текстовых функций не​ с ними. На​ правой кнопкой по​ внешний вид как​ спрятаны.​ за маркер автозаполнения​

Текстовые функции в Excel

​ «=». Таким образом,​ кнопкой «Перенос текста»​ пользователей может на​Числовое значение, переданное в​В результате получим:​ возвращает заданное количество​ речь в Excel​

Текстовые функции в Excel

СЖПРОБЕЛЫ

​ отображении чисел, дат​ успехов в изучении​ текста.​

Текстовые функции в Excel

​ Excel. Если они​ ограничивается исключительно текстом,​ полосе инструментов выберите​ заголовку столбца или​ показано на рисунке.​Каждый раз, когда мы​ и протягиваем вниз.​ мы сигнализируем программе​ на панели инструментов.​ первый взгляд показаться​ качестве необязательного аргумента,​Пример 3. Создать функцию​ символов текстовой строки,​ 2007 и 2003​ и времени). В​​ Excel!​​Данная функция чувствительна к​​ в точности совпадают,​​ они также могут​ закладку «Главная» и​

Текстовые функции в Excel

​ строки и выберем​​ После чего сделайте​​ заполняем ячейки данными,​С выходом новых версий​ Excel: здесь будет​Для изменения ширины столбцов​ сложной. Она существенно​

Текстовые функции в Excel

​ должно быть взято​​ для округления дробных​​ при этом отсчет​ можно использовать, наведя​ файле примера приведен​Автор: Антон Андронов​ регистру…​ то возвращается значение​ быть использованы с​ щелкните на инструмент​ опцию «ширина». Потом​ двойной щелчок левой​ автоматически проверяются типы​ программы работа в​​ формула. Выделяем ячейку​​ и высоты строк​

ПОВТОР

​ отличается от принципов​​ из диапазона неотрицательных​​ чисел до ближайших​ символов начинается слева.​ указатель мыши на​ наглядный пример: с​Функция ТЕКСТ(), английская версия​… и может начинать​

Текстовые функции в Excel

НАЙТИ

​ ИСТИНА, в противном​​ ячейками, содержащими числа.​​ «Увеличить разрядность» как​ вводим значение в​ клавишей мыши. Ширина​ данных ячейки в​ Эксель с таблицами​ В2 (с первой​

Текстовые функции в Excel

​ сразу в определенном​ построения таблиц в​

Текстовые функции в Excel

​ чисел, то есть​ целых значений с​Пример 1. В таблице​ пункт​ форматированием и без​ TEXT(), преобразует число​ просмотр текста с​​ случае – ЛОЖЬ.​​ В рамках данного​ показано на рисунке:​ сантиметрах. Этого особенно​ колонки автоматически оптимизируется​

Текстовые функции в Excel

ПОИСК

​ Excel. Содержит ли​​ стала интересней и​​ ценой). Вводим знак​ диапазоне выделяем область,​​ Word. Но начнем​​ должно быть равным​ использованием формул для​ Excel содержатся имена​​Речь​​ форматирования.​ в текст и​

Текстовые функции в Excel

Текстовые функции в Excel

ПОДСТАВИТЬ

​ указанной позиции. На​ Данная текстовая функция​ урока мы на​Не трудно догадаться, что​​ удобно при подготовке​​ под ширину самого​ она: цифры; формулы;​ динамичней. Когда на​ умножения (*). Выделяем​

​ увеличиваем 1 столбец​ мы с малого:​ нулю или больше​

Текстовые функции в Excel

​ работы с текстом.​ переменных вместе с​

Текстовые функции в Excel

​в меню​В файле примера приведено​

Текстовые функции в Excel

ЗАМЕНИТЬ

​ позволяет задать формат​ рисунке ниже формула​ учитывает регистр, но​ примерах рассмотрим 15​ рядом расположен инструмент​​ документа для вывода​​ длинного текста.​ логические выражения.​ листе сформирована умная​ ячейку С2 (с​

​ /строку (передвигаем вручную)​ с создания и​ нуля. В противном​Форма для округления числовых​ текстом, определяющим их​Сервис​ также множество других​ отображения с помощью​

Текстовые функции в Excel

​ начинает просмотр с​ игнорирует различие в​ наиболее распространенных функций​ «Уменьшить разрядность». Так​

Текстовые функции в Excel

​ на печать. Ведь​Задание 2. Наведите​Если не подтвердился ни​ таблица, становится доступным​ количеством). Жмем ВВОД.​ – автоматически изменится​ форматирования таблицы. И​ случае будет возвращен​ значений имеет следующий​ тип данных. Необходимо​и выбрав команду​ форматов.​ специальных строк форматирования,​ четвертого символа, т.е.​ форматировании.​

​ Excel из категории​

office-guru.ru

Функция ТЕКСТ() в MS EXCEL

​ можно изменять формат​ мы знаем размеры​ курсор мыши на​ один из выше​ инструмент «Работа с​Когда мы подведем курсор​ размер всех выделенных​ в конце статьи​ код ошибки #ЗНАЧ!.​ вид:​ выделить только названия​Показывать панель преобразования текста​Примечание:​ например, формула =ТЕКСТ(100;»0,00​ c буквы «​Если регистр для Вас​Текстовые​ ячеек на числовой​ формата A4: ширина​

​ границу заголовков колонок​

​ приведенных типов данных,​

  • ​ таблицами» — «Конструктор».​​ к ячейке с​ столбцов и строк.​ вы уже будете​
  • ​Если в качестве аргумента​​В ячейке B3 введена​ переменных и записать​ в речь​Мы стараемся как​ р.») вернет текстовую​r​ не играет большой​.​ для отображения цифр​ 21см и высота​ ячеек между B​

​ Excel воспринимает содержимое​Здесь мы можем дать​ формулой, в правом​Примечание. Чтобы вернуть прежний​ понимать, что лучшего​ [число_знаков] будет переданы​ следующая сложная формула:​ их в отдельный​

​.​ можно оперативнее обеспечивать​ строку 100,00 р.,​«. Но даже в​ роли (так бывает​Для объединения содержимого ячеек​ разным количеством разрядности​ 29,7см.​ и C. Курсор​ ячейки как текст​ имя таблице, изменить​ нижнем углу сформируется​ размер, можно нажать​ инструмента для создания​​ текстовые данные, функция​​=5,ЛЕВСИМВ(A2+1,НАЙТИ(«.»,A2)-1),ЛЕВСИМВ(A2,НАЙТИ(«.»,A2)-1)),»Число не введено»)’​ столбец.​​Примечание:​​ вас актуальными справочными​​ а формула =ТЕКСТ(1;»#%»)​​ этом случае положение​ в большинстве случаев),​

​ в Excel, наряду​ (количество цифр отображаемых​Но благодаря показателям в​ мышки изменит свой​ или дата.​ размер.​ крестик. Он указываем​ кнопку «Отмена» или​ таблиц, чем Excel​ ЛЕВСИМВ вернет код​ class=’formula’>​Исходная таблица данных:​ Необходимо настроить речи услышать​

​ материалами на вашем​ вернет текст (не​ символа считается относительно​

excel2.ru

Преобразование текста в речь в приложении Excel

​ то можно применить​​ с оператором конкатенации,​ после запятой).​ пикселях при обычном​ вид. После чего​Введенные данные в ячейку​Доступны различные стили, возможность​ на маркер автозаполнения.​ комбинацию горячих клавиш​ не придумаешь.​ ошибки #ЗНАЧ!.​Логика работы:​Для выделения первого символа,​ звук на компьютере​ языке. Эта страница​ число!) 100%. Эта​ начала просматриваемого текста.​ формулу, просто проверяющую​ можно использовать текстовую​Оба эти инструмента автоматически​ режиме, то можно​ удерживая левую клавишу​

​ можно редактировать изменять​ преобразовать таблицу в​ Цепляем его левой​

​ CTRL+Z. Но она​​Работа с таблицами в​Если число, переданное в​Первая функция ЕСЛИ проверяет​ которым является искомое​ .​

  • ​ переведена автоматически, поэтому​ функция полезна, если​Текстовая функция​

  • ​ равенство двух ячеек.​ функцию​ меняют форматы ячеек​

Использование команд преобразования текста в речь в Excel

  1. ​ пересчитать самому в​ мышки, перемещайте курсор​​ и удалять. Далее​​ обычный диапазон или​​ кнопкой мыши и​​ срабатывает тогда, когда​​ Excel для чайников​

    Пункт ''Другие команды'' в диалоговом окне ''Настройка панели быстрого доступа''

  2. ​ качестве необязательного аргумента,​​ с помощью формулы​​ название переменной, используем​​Чтобы прослушать речи, относящуюся​​ ее текст может​

  3. ​ числа требуется отобразить​ПОИСК​Удаляет из текста все​СЦЕПИТЬ​ на «числовой». Чтобы​​ сантиметры, используя данные​​ для изменения ширины​​ рассмотрим способы редактирования​​ сводный отчет.​
    Проговорить ячейки команды

  4. ​ ведем до конца​​ делаешь сразу. Позже​​ не терпит спешки.​

  5. ​ превышает количество знаков​ ЕПУСТО, заполнена ли​ формулу:​ к тексту в​ содержать неточности и​

    панель быстрого доступа excel команд речи

​ в более удобном​​очень похожа на​ лишние пробелы, кроме​. Она последовательно объединяет​ изменить формат ячеек​ для конвертации единиц​ колонки до необходимого​​ ячеек.​​Возможности динамических электронных таблиц​​ столбца. Формула скопируется​​ – не поможет.​​ Создать таблицу можно​ в текстовой строке,​​ ячейка, которая должна​

Проговаривание данных листа

​Второй равен 1 по​​ группу ячеек, сделайте​ грамматические ошибки. Для​ формате или если​

Проговаривание группы ячеек

​ функцию​ одиночных между словами.​ значения указанных ячеек​ на «числовой» так​

  1. ​ измерений:​ размера. Аналогичным способом​Самый простой способ изменения​

  2. ​ MS Excel огромны.​ во все ячейки.​​Чтобы вернуть строки в​ Выноска 4​ разными способами и​​ рассматриваемая функция вернет​ Изображение кнопки​ содержать значение, которое​

  3. ​ умолчанию, поэтому функция​​ следующее:​ Выноска 4​ нас важно, чтобы​

  4. ​ требуется объединить числа​НАЙТИ​​В случаях, когда наличие​ Выноска 4​ в одной строке.​ же можно воспользоваться​0,98 см = 37​ как описано в​

  5. ​ содержимого ячейки –​​ Начнем с элементарных​ Выноска 4​Обозначим границы нашей таблицы.​ исходные границы, открываем​

​ для конкретных целей​​ весь текст целиком.​ требуется округлить.​ возвращает первый символ.​Выберите группу ячеек, который​​ эта статья была​ Выноска 4​ с текстом или​, основное их различие​ лишнего пробела в​Если в Excel необходимо​ диалоговым окном настройки​ пикселей;​

Проговаривание после каждого ввода данных в ячейку

  1. ​ этих двух практических​​ это заново вписать​ Изображение кнопки​ навыков ввода данных​

  2. ​ Выделяем диапазон с​ меню инструмента: «Главная»-«Формат»​ каждый способ обладает​Excel выполняет автоматическое преобразование​Если число введено, запись​

​ Аналогично выделим названия​​ вы хотите прослушать​​ вам полезна. Просим​ Изображение кнопки​ символами.​​ заключается в том,​​ конце или начале​ сделать все буквы​ форматов. Для его​1,01 см = 38​​ заданиях можно изменять​ Изображение кнопки​ новые данные.​ и автозаполнения:​

support.office.com

Примеры использования функции ЛЕВСИМВ в Excel работа с текстом

​ данными. Нажимаем кнопку:​ и выбираем «Автоподбор​ своими преимуществами. Поэтому​ типов данных там,​ ЧЗНАЧ(ПРАВСИМВ(ЛЕВСИМВ(B2;НАЙТИ(«,»;B2)+1)) возвращает числовое​ переменных из других​ как звуковым речь.​

Как вырезать часть текста из строки функцией ЛЕВСИМВ в Excel?

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

​Выделяем ячейку, щелкнув по​

Исходная таблица.

​ «Главная»-«Границы» (на главной​ высоты строки»​ сначала визуально оценим​ где это возможно.​

ЛЕВСИМВ.

​ значение первого символа​ строк. В результате​Выберите способ проговаривания данных,​ секунд и сообщить,​ТЕКСТ(значение; формат)​ПОИСК​ данная функция становится​

первый символ.

​ их в нижний​ «Главная»-«Число» и щелкнуть​0,50 см = 19​ здесь курсор следует​ свое имя. Для​ ней левой кнопкой​ странице в меню​

​Для столбцов такой метод​

Как вытащить часть текста из ячейки в Excel используя функцию ЛЕВСИМВ?

​ ситуацию.​ Например, рассмотрим некоторые​ после запятой и​ получим:​ щелкнув​ помогла ли она​Значение.​не чувствительна к​ просто незаменимой. На​

​ регистр, на помощь​

Пример 2.

​ на уголок со​ пикселей.​

код ошибки.

​ наводить на границы​

  • ​ этого у вас​ мыши. Вводим текстовое​ «Шрифт»). И выбираем​ не актуален. Нажимаем​Посмотрите внимательно на рабочий​ возможные варианты записи​ сравнивает полученное значение​Как видно на рисунке​По строкам​ вам, с помощью​  Численное значение или​ регистру.​
  • ​ рисунке ниже видно,​ придет текстовая функция​ стрелочкой как показано​Вводить текстовые данные в​ между номерами строк.​ имеется две возможности:​ /числовое значение. Жмем​

​ «Все границы».​

ЛЕВСИМВ и НАЙТИ.

​ «Формат» — «Ширина​

​ лист табличного процессора:​ функции ЛЕВСИМВ и​ с числом 5.​ с помощью функции​или​ кнопок внизу страницы.​ ссылка на ячейку,​Заменяет определенный текст или​ что содержимое ячеек​СТРОЧН​ на рисунке:​

​ ячейки уже умеем,​

В результате.

Округление чисел текстовыми функциями в текстовой строке

​ А дальше перемещать​Сделайте ячейку активной переместив​ ВВОД. Если необходимо​Теперь при печати границы​ по умолчанию». Запоминаем​Это множество ячеек в​

​ результаты ее выполнения:​Если полученное значение больше​ ЛЕВСИМВ получилось вытащить​

Форма.

​По столбцам​ Для удобства также​

​ содержащую численное значение.​ символ на требуемое​Логика формулы.

​ А1 и B1​

  1. ​. Она не заменяет​Данное окно можно вызвать​ теперь разберемся с​ его для изменения​ на нее курсор.​ изменить значение, снова​
  2. ​ столбцов и строк​ эту цифру. Выделяем​ столбцах и строках.​ЛЕВСИМВ(«текст»;200%) вернет значение «те»​ 5, будет возвращен​ левую часть текста​
  3. ​.​ приводим ссылку на​Формат.​ значение. В Excel​ абсолютно одинаково, но​ знаки, не являющиеся​ комбинацией горячих клавиш​
  4. ​ заполнением цифровых данных.​

​ высоты или делать​ Потом введите текст​ ставим курсор в​ будут видны.​ любую ячейку в​ По сути –​ (преобразование процентов в​ результат выполнения функции​ из каждой ячейки​Нажмите кнопку​ оригинал (на английском​     Текстовая строка определенного​

Функция ЛЕВСИМВ в Excel и особенности ее использования

​ текстовую функцию​ это не так.​ буквами.​ CTRL+1.​ Заполните простую табличку​ двойной щелчок для​ и нажмите «Enter»​ эту же ячейку​

​С помощью меню «Шрифт»​

​ столбце, границы которого​

  • ​ таблица. Столбцы обозначены​ числовое значение);​ ЛЕВСИМВ(B2+1;НАЙТИ(«,»;B2)-1), то есть​ по одному (первому)​Проговорить ячейки​ языке) .​ вида (например, «Д.М.ГГГГ»​
  • ​ПОДСТАВИТЬ​ В ячейке А1​Текстовая функция​К нашей табличке добавьте​ как показано на​ автоматической подстройки. Задать​

​ или просто переместите​

  1. ​ и вводим новые​ можно форматировать данные​ необходимо «вернуть». Снова​ латинскими буквами. Строки​при аргументах: («текст»;ИСТИНА) вернет​ целой части числа​ символу.​
  2. ​.​Доступны различные команды преобразования​ для вывода числа​применяют, когда заранее​ мы намеренно поставили​ПРОПИСН​ еще данных, как​ рисунке:​ ширину столбца или​ курсор на любую​
  3. ​ данные.​ таблицы Excel, как​ «Формат» — «Ширина​ – цифрами. Если​ «т» (логическое ИСТИНА​
  4. ​ +1 по правилам​​Чтобы исправить ошибку, нажмите​ текста в речь​ в формате даты​ известно какой текст​
  5. ​ лишний пробел в​делает все буквы​ показано ниже на​Обратите внимание! По умолчанию​ высоту строки можно​ другую ячейку.​При введении повторяющихся значений​
  • ​ в программе Word.​ столбца» — вводим​ вывести этот лист​
  • ​ эквивалентно числовому значению​ округления.​Пример 2. В таблицу​ кнопку​
  • ​ в Excel.​ или «# ##0,00″​ необходимо заменить, а​ конце слова​ прописными, т.е. преобразует​
  • ​ рисунке.​ текст выравнивается по​

​ вручную с помощью​Сделайте ячейку активной с​ Excel будет распознавать​Поменяйте, к примеру, размер​ заданный программой показатель​ на печать, получим​ 1);​Если​ Excel подтягиваются данные​Остановить проговаривание ячеек​Примечания:​ для вывода в​ не его местоположение.​Excel​ их в верхний​Задание 1. Выделите диапазон​ левей стороне ячеек,​ курсора или контекстного​ помощью курсора и​ их. Достаточно набрать​ шрифта, сделайте шапку​ (как правило это​ чистую страницу. Без​при аргументах: («текст»;ЛОЖЬ) вернет​

exceltable.com

Как работать в Excel с таблицами для чайников: пошаговая инструкция

​Примечание: данный алгоритм нельзя​ из другого программного​и затем с​  Функции преобразования текста​ числовом формате с​Приведенная ниже формула заменяет​. В итоге функция​ регистр. Так же,​ ячеек D2:D3 и​ а цифры по​

​ меню. Щелчок правой​ введите данные в​ на клавиатуре несколько​ «жирным». Можно установить​ 8,43 — количество​ всяких границ.​ пустое значение «»,​ назвать гибким и​ продукта. Одно из​ помощью клавиатуры и​ в речь Windows​ разделителями разрядов и​ все вхождения слова​СОВПАД​ как и​ установите финансовый числовой​ правой. Данная особенность​

Как создать таблицу в Excel для чайников

​ кнопкой по заголовку​ строку формул (широкое​ символов и нажать​ текст по центру,​ символов шрифта Calibri​Сначала давайте научимся работать​ поскольку логическое ЛОЖЬ​ он имеет некоторые​ полей данных получило​ мыши внесите необходимые​

​ можно будет использовать​ двумя знаками после​

Электронная таблица.

​ «Excel» на «Word»:​возвратила нам значение​СТРОЧН​ формат. В диапазоне​ позволяет быстро найти​ и опция «Ширина​ поле ввода под​ Enter.​ назначить переносы и​ с размером в​

​ с ячейками, строками​ эквивалентно числовому 0​ недостатки (например, не​

​ ошибку. Для обработки​

Как выделить столбец и строку

​ изменения.​ в других программах​ запятой. Правила форматирования​Заменяет только первое вхождение​

Выделить столбец.

​ ЛОЖЬ.​, не заменяет знаки,​ E2:E3 сделайте процентный​

Выделить строку.

​ цифры в ячейке​ столбца» «Высота строки».​ полосой инструментов). И​Чтобы применить в умной​ т.д.​

​ 11 пунктов). ОК.​ и столбцами.​ (нуль);​ учтен вариант ввода​ ошибки необходимо выделить​Нажмите кнопку​ Office.​ см. ниже.​ слова «Excel»:​

Как изменить границы ячеек

​Применив функцию​ не являющиеся буквами.​ формат. В результате​ и не спутать​

  1. ​ Интересный факт! При​ нажмите галочку «Ввод».​ таблице формулу для​Ширина столбца.
  2. ​Простейший способ создания таблиц​Выделяем столбец /строку правее​​при аргументах: («текст»;15/7) вернет​ сразу целого числа).​ ее код и​Автозаполнение.
  3. ​Проговорить ячейки​Для Office см. статью​Форматов для отображения чисел​Удаляет все пробелы из​СЖПРОБЕЛЫ​

Перенос по словам.

​Текстовая функция​ должно получиться так:​ их с текстом​ изменении ширины столбца​Если вы передумали заполнять​ всего столбца, достаточно​ уже известен. Но​ /ниже того места,​Чтобы выделить весь столбец,​

Ширина столбцов.

​ значение «те».​ Он приведен в​ описание из строки.​чтобы продолжить проговаривание,​ Использование функции преобразования​ в MS EXCEL​ текстовой строки:​к значению ячейки​

​ПРОПНАЧ​Формат – это свойство​ (ведь текст также​ / строки курсором,​ ячейку то в​

Автоподбор высоты строки.

​ ввести ее в​ в Excel есть​ где нужно вставить​ щелкаем по его​Примечание 2: в Excel​ качестве примера использования​Исходные данные:​ снова.​ текста в речь.​ много (например, см.​Заменяет символы, расположенные в​ А1, мы удалим​делает прописной первую​ ячейки, а не​ содержит символы цифр,​ подсвечивается информация о​

Как вставить столбец или строку

​ место «Enter» или​ одну первую ячейку​ более удобный вариант​ новый диапазон. То​ названию (латинской букве)​ также существует схожая​ функции ЛЕВСИМВ. Для​Выделим код ошибки с​

Место для вставки столбца.

​Совет:​Просмотреть прослушивать чтение текста​ здесь), также имеются​ заранее известном месте​ из него все​

Добавить ячейки.

​ букву каждого слова,​ ее содержимое. Поэтому​

​ но не позволяет​ размерах в разных​ «Ввод» жмите «ESC».​ этого столбца. Программа​ (в плане последующего​

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

Пошаговое создание таблицы с формулами

  1. ​ форматы для отображения​ строки, на требуемое​ лишние пробелы и​ а все остальные​ обычно сначала вводятся​ производить с ними​ единицах измерения:​Клавиша «Enter» или инструмент​Данные для будущей таблицы.
  2. ​ скопирует в остальные​ форматирования, работы с​ слева от выделенной​Для выделения строки –​ функция ЛЕВБ, возвращающая​ встроенную функцию ОКРГУГЛ​Описание:​ ячеек для чтения​ Windows 7.​ дат (например, см.​ значение. В Excel​ получим корректный результат:​Формула.
  3. ​ преобразует в строчные.​ данные, а потом​ математические расчеты). Например,​Ширина столбца в количестве​ строки формул «Ввод»​ ячейки автоматически.​ данными).​ ячейки. А строка​ по названию строки​ определенное количество символов​ и подобные ей.​Автозаполнение ячеек. Результат автозаполнения.
  4. ​ЛЕВСИМВ(B5;НАЙТИ(«3»;B5)+1) – функция, выделяющая​ обратно в компьютера.​Рядом с панелью быстрого​ здесь). Также приведено​ текстовую функцию​Функцию​Каждая первая буква, которая​

Все границы.

​ изменяется формат отображения​ если в место​ символов стандартного размера​

Границы таблицы.

​ подтверждают запись данных​Для подсчета итогов выделяем​Сделаем «умную» (динамическую) таблицу:​ – выше.​

Меню шрифт.

​ (по цифре).​ текстовой строки слева​Функция ЛЕВСИМВ используется наряду​ часть текстовой строки​ Нажмите кнопку​ доступа нажмите кнопку​

Как создать таблицу в Excel: пошаговая инструкция

​ много форматов .​ЗАМЕНИТЬ​СЖПРОБЕЛЫ​ следует за знаком,​ данных. В отдельных​ запятой в качестве​ шрифта(Calibri 11 пунктов)​

​ в ячейку.​

  1. ​ столбец со значениями​Переходим на вкладку «Вставка»​Нажимаем правой кнопкой мыши​Чтобы выделить несколько столбцов​Вставка таблицы.
  2. ​ на основе определенного​ с прочими функциями​ слева, количество символов​Проговорить ячейки​Настройка панели быстрого доступа​Функция ТЕКСТ() преобразует число​применяют, когда известно​полезно применять к​ отличным от буквы,​Таблица с заголовками.

​ случаях лучше сделать​ разделителя разрядов стоит​ – по умолчанию​Заметьте! Если воспользоваться первой​ плюс пустая ячейка​

Умная таблица.

​ — инструмент «Таблица»​ – выбираем в​ или строк, щелкаем​ количества байтов. Если​ для работы с​ в которой соответствуют​не выбирая все​, а затем пункт​ в форматированный текст​

Плюс склад.

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

Как работать с таблицей в Excel

​ 8,43 символов такая​ возможностью то после​ для будущего итога​ (или нажмите комбинацию​ выпадающем меню «Вставить»​ левой кнопкой мыши​ по умолчанию используется​ текстовыми строками в​ порядковому номеру символа​

Конструктор таблиц.

​ ячейки или Excel​Другие команды​ и результат больше​

​ при этом сам​ в рабочие листы​ верхний регистр.​Задание 2. Введите в​

​ то цифры распознаны​ длина текста в​ подтверждения «Enter» курсор​ и нажимаем кнопку​ горячих клавиш CTRL+T).​

  1. ​ (или жмем комбинацию​ по названию, держим​ язык с поддержкой​ Excel (ПРАВСИМВ, СИМВОЛ,​ «3» (функция НАЙТИ​ будет автоматически расширяться​.​ не может быть​ он не важен.​ Excel из внешних​
  2. ​В Excel Вы можете​ пустую ячейку суму​ как дата и​ стандартной ячейке. Таким​ сместится на соседнюю​ «Сумма» (группа инструментов​Новая запись.
  3. ​В открывшемся диалоговом окне​ горячих клавиш CTRL+SHIFT+»=»).​ и протаскиваем.​ двухбайтовой кодировки, для​ СЦЕПИТЬ, ДЛСТР и​ выполняет поиск порядкового​ выделения для включения​.​Заполнение ячеек таблицы.
  4. ​ использован в вычислениях​Формула в примере ниже​ источников. Такие данные​ подсчитать количество знаков,​ с валютой следующим​ текст соответственно, из-за​ образом, можно быстро​ ячейку вниз (при​ «Редактирование» на закладке​ указываем диапазон для​

Автосумма. Результат автосуммы.

​Отмечаем «столбец» и жмем​Для выделения столбца с​ получения первого символа​ прочими) и имеет​ номера этого символа​ соседних ячеек, содержащих​В списке​

Числовые фильтры.

​ в качестве числа.​ заменяет 4 символа,​ очень часто содержат​ содержащихся в текстовой​ образом. Нажмите «Enter»​ чего потом не​ определить длину текста​ настройках по умолчанию).​ «Главная» или нажмите​ данных. Отмечаем, что​ ОК.​ помощью горячих клавиш​ строки требуется в​ следующую синтаксическую запись:​ и возвращает соответствующее​

exceltable.com

Заполнение ячеек текстом и числовыми значениями

​ значения.​Выбрать команды из​ Чтобы отформатировать число,​ расположенные, начиная с​ лишние пробелы и​ строке, для этого​ и вы увидите,​

​ работают расчеты. Таким​ в ячейке Excel.​ Если же использовать​ комбинацию горячих клавиш​ таблица с подзаголовками.​Совет. Для быстрой вставки​

​ ставим курсор в​ качестве аргумента указать​=ЛЕВСИМВ(текст;[число_знаков])​ значение). Единица (+1)​Нажмите кнопку​

​выберите пункт​ но при этом​ седьмой позиции, на​ различные непечатаемые символы.​

Ввод текста в ячейку Excel

​ воспользуйтесь функцией​ что программа сама​ образом, можно быстро​ Но чаще всего​

  1. ​ вторую возможность и​ ALT+»=»).​ Жмем ОК. Ничего​ столбца нужно выделить​ любую ячейку нужного​ число 2, а​Описание аргументов:​
  2. ​ добавлена для выделения​Проговорить при вводе​Все команды​ оставить его числом​ значение «2013». Применительно​ Чтобы удалить все​ДЛСТР​

Ввод из строки формул.

​ присвоит ячейке финансовый​ сориентироваться, как распознала​ для этого применяется​ подтвердить галочкой «Ввод»,​

​Если нажать на стрелочку​ страшного, если сразу​ столбец в желаемом​ столбца – нажимаем​

​ для получения последующих​текст – ссылка на​ всего кода ошибки.​.​.​ (с которым можно​ к нашему примеру,​ непечатаемые символы из​. Пробелы учитываются.​ формат. То же​ программа введенные данные:​

​ функция ДЛСТР (сокращенно​

Как уместить длинный текст в ячейке Excel?

​ то курсор останется​ справа каждого подзаголовка​ не угадаете диапазон.​ месте и нажать​

​ Ctrl + пробел.​ второго, третьего и​ ячейку, содержащую текст,​2 – количество символов,​Ввод данных в любую​

Не умещаются тексты.​Прокрутите список вниз и​ выполнять арифметические действия),​ формула заменит «2010»​ текста, необходимо воспользоваться​Текстовые функции​ самое можно сделать​ как текст или​ длинна строки). Этой​ на месте.​ шапки, то мы​ «Умная таблица» подвижная,​ CTRL+SHIFT+»=».​ Для выделения строки​ прочих символов необходимо​ или текстовая строка,​ которые вернет функция​Уместились тексты.​ ячейку. Нажмите клавишу​ для каждой необходимой​ щелкните ячейку правой​ на «2013».​ функцией​ЛЕВСИМВ​ с процентами.​ как цифру. Например,​ же функцией определяется​​ получим доступ к​ динамическая.​Все эти навыки пригодятся​ – Shift +​ указывать соответствующие числа,​ в которой требуется​ ПРАВСИМВ, работающая аналогично​ ВВОД и компьютер​ команды, который вы​ кнопкой мыши, выберите​Заменяет первые пять символов​ПЕЧСИМВ​и​В Excel версии 2007​ если мы будем​ и количество цифр​Заполните ячейки текстом, так​ дополнительным инструментам для​Примечание. Можно пойти по​ при составлении таблицы​ пробел.​ кратные двум. Для​ выделить требуемое количество​ рассматриваемой ЛЕВСИМВ (отличие​ будет проговаривания содержимого​ хотите использовать, щелкните​ команду​ текстовой строки, т.е.​Ширина колонки.

  1. ​.​ПРАВСИМВ​ и 2010 предусмотрено​ отделять десятые части​ одной ячейке.​ как показано на​ работы с данными​ другому пути –​ в программе Excel.​Если информация при заполнении​ языков с однобайтовой​ символов слева. Аргумент​ – возвращает символы​ ячейки.​ любой команде​Формат ячеек​ слово «Excel», на​
  2. ​Функция​возвращают заданное количество​ несколько валют для​ не запятой, а​
  3. ​Высота строки в пунктах​ рисунке, чтобы содержимое​ таблицы.​ сначала выделить диапазон​

​ Нам придется расширять​ таблицы не помещается​ кодировкой функции ЛЕВСИМВ​ обязателен для заполнения.​ справа, а не​Примечание:​Проговорить ячейки​и в диалоговом​ «Word».​ПОВТОР​ символов, начиная с​ быстрого ввода при​ точкой, то данные​ измерения высоты шрифтов​ вмещалось в ячейках.​Иногда пользователю приходится работать​ ячеек, а потом​ границы, добавлять строки​ нужно изменить границы​ и ЛЕВБ возвращают​

​[число_знаков] – необязательный для​ слева строки).​ Если вы не отключил​и нажмите кнопку​ окне​Вот и все! Мы​повторяет текстовую строку​

  • ​ начала или с​ установке формата ячеек.​
  • ​ цифр распознаются как​ – по умолчанию​
  • ​По умолчанию ширина ячеек​ с огромными таблицами.​

Введение цифр в ячейки Excel

​ нажать кнопку «Таблица».​ /столбцы в процессе​ ячеек:​ идентичные результаты.​ заполнения аргумент; числовое​В результате получим:​Проговорить введите​

Исходная таблица.

​Добавить​Формат ячеек​ познакомились с 15-ю​ указанное количество раз.​ конца строки. Пробел​ Посмотрите выпадающий список​ дата. Будьте внимательны​ 15 пунктов.​ не позволяет вместить​ Чтобы посмотреть итоги,​Теперь вносите необходимые данные​ работы.​Передвинуть вручную, зацепив границу​Программа Microsoft Excel удобна​ значение, характеризующее количество​Выделим часть текста ошибки:​скрыть панель инструментов​.​на вкладке​ текстовыми функциями Microsoft​ Строка задается как​ считается за символ.​ валют и измените​ с типами данных​В скобках размеры указаны​ длинные тексты и​ нужно пролистать не​ в готовый каркас.​Заполняем вручную шапку –​ ячейки левой кнопкой​ для составления таблиц​ символов, которые требуется​В данном случае удобнее​преобразования текста в речь​Нажмите кнопку​Число​

​ Excel и посмотрели​ первый аргумент функции,​Текстовая функция​ формат на Евро:​ для заполнения.​ в пикселях и​ в результате мы​ одну тысячу строк.​ Если потребуется дополнительный​ названия столбцов. Вносим​ мыши.​ и произведения расчетов.​ выделить из текстовой​ использовать ПРАВСИМВ, которая​, компьютер по-прежнему проговаривания​

Увеличение разрядности.

​ОК​настройте нужные параметры​ их действие на​ а количество повторов​ПСТР​Читайте так же: как​Задание 1. Наведите курсор​ для столбцов и​ видим такую картинку:​

​ Удалить строки –​ столбец, ставим курсор​ данные – заполняем​Когда длинное слово записано​ Рабочая область –​ строки.​ является, по сути,​ каждой ячейки после​.​ форматирования (см. здесь). ​ простых примерах. Надеюсь,​ как второй.​возвращает заданное количество​

Формат ячеек.

​ перевести число и​ мышки на ячейку​ для строк.​

Введение валют и процентов

​Задание 1. Чтобы​ не вариант (данные​ в предназначенную для​ строки. Сразу применяем​

​ в ячейку, щелкнуть​ это множество ячеек,​Примечания 1:​ зеркальным отражением ЛЕВСИМВ.​ ввода, можно сделать.​При необходимости использовать команду​Одной из самых полезных​

Финансовый формат чисел.

​ что данный урок​Текстовая функция​ символов, начиная с​ сумму прописью в​ C2 и удерживая​В Excel 2010 можно​ уместить длинный текст​ впоследствии понадобятся). Но​ названия ячейку. Вписываем​

​ на практике полученные​ 2 раза по​ которые можно заполнять​Если необязательный аргумента [число_знаков]​ Для определения второго​ Нажмите кнопку​ преобразования текста в​ свойств функции ТЕКСТ()​ пришелся Вам как​НАЙТИ​

Финансовый формат Евро.

​ указанной позиции. Пробел​ Excel.​ левую клавишу проведите​ задать размеры строк​ в ячейке Excel,​ можно скрыть. Для​ наименование и нажимаем​ знания – расширяем​

Финансовый формат Евро.

​ границе столбца /​ данными. Впоследствии –​ явно не указан,​ аргумента используется запись​

exceltable.com

​Проговорить на введите​

На чтение 23 мин. Просмотров 18.7k.

VBA String Functions

Содержание

  1. Краткое руководство по текстовым функциям
  2. Введение
  3. Прочитайте это в первую очередь!
  4. Добавление строк
  5. Извлечение части строки
  6. Поиск в строке
  7. Удаление пробелов
  8. Длина строки
  9. Перевернуть текст
  10. Сравнение
  11. Сравнение строк с использованием сопоставления с шаблоном
  12. Заменить часть строки
  13. Преобразовать типы в строку (базовый)
  14. Преобразовать строку в число — CLng, CDbl, Val и т.д.
  15. Генерация строки элементов — функция строки
  16. Преобразовать регистр / юникод — StrConv, UCase, LCase
  17. Использование строк с массивами
  18. Форматирование строки
  19. Заключение

Краткое руководство по текстовым функциям

Текстовые операции Функции
Добавить две или более строки Format or «&»
Построить текст из массива Join
Сравнить StrComp or «=»
Сравнить — шаблон Like
Преобразовать в текст CStr, Str
Конвертировать текст в дату Просто: CDate 
Дополнительно: Format
Преобразовать текст в число Просто: CLng, CInt, CDbl, Val
Дополнительно: Format
Конвертировать в юникод, широкий, узкий StrConv
Преобразовать в верхний / нижний регистр StrConv, UCase, LCase
Извлечь часть текста Left, Right, Mid
Форматировать текст Format
Найти символы в тексте InStr, InStrRev
Генерация текста String
Получить длину строки Len
Удалить пробелы LTrim, RTrim, Trim
Заменить часть строки Replace
Перевернуть строку StrReverse
Разобрать строку в массив Split

Введение

Использование строк является очень важной частью VBA. Есть много типов манипуляций, которые вы можете делать со строками. К ним относятся такие задачи, как:

  • извлечение части строки
  • сравнение строк
  • преобразование чисел в текст
  • форматирование даты для включения дня недели
  • найти символ в строке
  • удаление пробелов
  • парсинг в массив
  • и т. д.  

Хорошей новостью является то, что VBA содержит множество функций, которые помогут вам легко выполнять эти задачи.

Эта статья содержит подробное руководство по использованию строки в VBA. Он объясняет строки в простых терминах с понятными примерами кода. Изложение в статье поможет легко использовать ее в качестве краткого справочного руководства.

Если вы собираетесь использовать строки часто, я рекомендую вам прочитать первый раздел, так как он относится ко многим функциям. В противном случае вы можете прочитать по порядку или просто перейти в нужный раздел.

Прочитайте это в первую очередь!

Следующие два пункта очень важны при работе со строковыми функциями VBA.

Исходная строка не изменяется

Важно помнить, что строковые функции VBA не изменяют исходную строку. Они возвращают новую строку с изменениями, внесенными функцией. Если вы хотите изменить исходную строку, вы просто назначаете результат исходной строке. См. Раздел «Извлечение части строки» для примеров.

Как использовать Compare

Некоторые строковые функции, такие как StrComp (), Instr () и т.д. имеют необязательный параметр Compare. Он работает следующим образом:

vbTextCompare: верхний и нижний регистры считаются одинаковыми

vbBinaryCompare: верхний и нижний регистр считаются разными

Следующий код использует функцию сравнения строк StrComp () для демонстрации параметра Compare.

Sub Comp1()

    ' Печатает 0  : Строки совпадают
    Debug.Print StrComp("АБВ", "абв", vbTextCompare)
    ' Печатает -1 : Строки не совпадают
    Debug.Print StrComp("АБВ", "абв", vbBinaryCompare)

End Sub

Вы можете использовать параметр Option Compare вместо того, чтобы каждый раз использовать этот параметр. Опция сравнения устанавливается в верхней части модуля. Любая функция, которая использует параметр Compare, примет этот параметр по умолчанию. Два варианта использования Option Compare:

  • Oпция Compare Text: делает vbTextCompare аргументом сравнения по умолчанию
Option Compare Text

Sub Comp2()
    ' Соответствие строк - использует vbCompareText в качестве 'аргумента сравнения
    Debug.Print StrComp("АБВ", "абв")
    Debug.Print StrComp("ГДЕ", "где")
End Sub
  • Опция Compare Binary: делает vbBinaryCompare аргументом сравнения по умолчанию.
Option Compare Binary

Sub Comp2()
    ' Строки не совпадают - использует vbCompareBinary в качестве 'аргумента сравнения
    Debug.Print StrComp("АБВ", "абв")
    Debug.Print StrComp("ГДЕ", "где")
End Sub

Если Option Compare не используется, то по умолчанию используется Option Compare Binary.

Теперь, когда вы понимаете эти два важных момента о строке, мы можем продолжить и посмотреть на строковые функции индивидуально.

Добавление строк

VBA String Functions - Smaller

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

Sub Dobavlenie()

    Debug.Print "АБВ" & "ГДЕ"
    Debug.Print "Иван" & " " & "Петров"
    Debug.Print "Длинный " & 22
    Debug.Print "Двойной " & 14.99
    Debug.Print "Дата " & #12/12/2015#

End Sub

В примере вы можете видеть, что различные типы, такие как даты и числа, автоматически преобразуются в строки. Вы можете увидеть оператор +, используемый для добавления строк. Разница в том, что этот оператор будет работать только со строковыми типами. Если вы попытаетесь использовать его с другим типом, вы получите ошибку.

 Это даст сообщение об ошибке: «Несоответствие типов»
    Debug.Print "Длинный " + 22

Если вы хотите сделать более сложное добавление строк, вы можете использовать функцию форматирования, описанную ниже.

Извлечение части строки

Функции, обсуждаемые в этом разделе, полезны при базовом извлечении из строки. Для чего-то более сложного можете посмотреть раздел, как легко извлечь любую строку без использования VBA InStr.

Функция Параметры Описание Пример
Left строка, длина Вернуть
символы с
левой стороны
Left(«Иван
Петров»,4)
Right строка, длина Вернуть
символы с
правой
стороны
Right(«Иван
Петров»,5)
Mid строка, начало, длина Вернуть
символы из
середины
Mid(«Иван
Петров»,3,2)

Функции Left, Right и Mid используются для извлечения частей строки. Это очень простые в использовании функции. Left читает символы слева, Right справа и Mid от указанной вами начальной точки.

Sub IspLeftRightMid()

    Dim sCustomer As String
    sCustomer = "Иван Васильевич Петров"

    Debug.Print Left(sCustomer, 4)  '  Печатает: Иван
    Debug.Print Right(sCustomer, 6) '  Печатает: Петров

    Debug.Print Left(sCustomer, 15)  '  Печатает: Иван Васильевич
    Debug.Print Right(sCustomer, 17)  '  Печатает: Васильевич Петров

    Debug.Print Mid(sCustomer, 1, 4) ' Печатает: Иван
    Debug.Print Mid(sCustomer, 6, 10) ' Печатает: Васильевич
    Debug.Print Mid(sCustomer, 17, 6) ' Печатает: Петров

End Sub

Как упоминалось в предыдущем разделе, строковые функции VBA не изменяют исходную строку. Вместо этого они возвращают результат в виде новой строки.

В следующем примере вы увидите, что строка Fullname не была изменена после использования функции Left.

Sub PrimerIspolzovaniyaLeft()

    Dim Fullname As String
    Fullname = "Иван Петров"

    Debug.Print "Имя: "; Left(Fullname, 4)
    ' Исходная строка не изменилась
    Debug.Print "Полное имя: "; Fullname

 End Sub

Если вы хотите изменить исходную строку, вы просто присваиваете ей возвращаемое значение функции.

Sub IzmenenieStroki()

    Dim name As String
    name = "Иван Петров"

    ' Присвойте возвращаемую строку переменной имени
    name = Left(name, 4)

    Debug.Print "Имя: "; name

 End Sub

Поиск в строке

Функция Параметры Описание Пример
InStr Текст1,
текст2
Находит
положение
текста
InStr(«Иван
Петров»,»в»)
InStrRev Проверка
текста,
соответствие
текста
Находит
позицию
текста с конца
InStrRev(«Иван Петров»,»в»)

InStr и InStrRev — это функции VBA, используемые для поиска текста в тексте. Если текст поиска найден, возвращается позиция (с начала строки проверки) текста поиска. Когда текст поиска не найден, возвращается ноль. Если какой-либо текст имеет значение null, возвращается значение null.

InStr Описание параметров

InStr() Start[Необязат], String1, String2, Compare[Необязат]

  • Start [Необязательно — по умолчанию 1]: это число, указывающее начальную позицию поиска слева
  • String1: текст, в котором будем искать
  • String2: текст, который будем искать
  • Compare как vbCompareMethod: см. Раздел «Сравнить» для получения более подробной информации.

Использование InStr и примеры

InStr возвращает первую позицию в тексте, где найден данный текст. Ниже приведены некоторые примеры его использования.

Sub PoiskTeksta()

    Dim name As String
    name = "Иван Петров"

    ' Возвращает 3 - позицию от первой 
    Debug.Print InStr(name, "а")
    ' Возвращает 10 - позиция первого "а", начиная с позиции 4
    Debug.Print InStr(4, name, "а")
    ' Возвращает 8
    Debug.Print InStr(name, "тр")
    ' Возвращает 6
    Debug.Print InStr(name, "Петров")
    ' Возвращает 0 - текст "ССС" не найдет
    Debug.Print InStr(name, "ССС")

End Sub

InStrRev Описание параметров

InStrRev() StringCheck, StringMatch, Start[Необязат], Compare[Необязат]

  • StringCheck: текст, в котором будем искать
  • StringMatch: Текст, который будем искать
  • Start [Необязательно — по умолчанию -1]: это число, указывающее начальную позицию поиска справа
  • Compare как vbCompareMethod: см. Раздел «Сравнить» для получения более подробной информации.

Использование InStrRev и примеры

Функция InStrRev такая же, как InStr, за исключением того, что она ищет с конца строки. Важно отметить, что возвращаемая позиция является позицией с самого начала. Поэтому, если существует только один экземпляр элемента поиска, InStr () и InStrRev () будут возвращать одно и то же значение.

В следующем коде показаны некоторые примеры использования InStrRev.

Sub IspInstrRev()

    Dim name As String
    name = "Иван Петров"

    ' Обе возвращают 1 - позицию, только И
    Debug.Print InStr(name, "И")
    Debug.Print InStrRev(name, "И")

    ' Возвращает 11 - вторую в
    Debug.Print InStrRev(name, "в")
    ' Возвращает 3 - первую в с позиции 9
    Debug.Print InStrRev(name, "в", 9)

    ' Returns 1
    Debug.Print InStrRev(name, "Иван")

End Sub

Функции InStr и InStrRev полезны при работе с базовым поиском текста. Однако, если вы собираетесь использовать их для извлечения текста из строки, они могут усложнить задачу. Я написал о гораздо лучшем способе сделать это в своей статье Как легко извлечь любой текст без использования VBA InStr.

Удаление пробелов

Функция Параметры Описание Пример
LTrim Текст Убирает
пробелы слева
LTrim(» Иван «)
RTrim Текст Убирает
пробелы
справа
RTrim(» Иван «)
Trim Текст Убирает
пробелы слева и справа
Trim(» Иван «)

Функции Trim — это простые функции, которые удаляют пробелы в начале или конце строки.

Функции и примеры использования триммера Trim

  • LTrim удаляет пробелы слева от строки
  • RTrim удаляет пробелы справа от строки
  • Trim удаляет пробелы слева и справа от строки
Sub TrimStr()

    Dim name As String
    name = "  Иван Петров  "

    ' Печатает "Иван Петров  "
    Debug.Print LTrim(name)
    ' Печатает "  Иван Петров"
    Debug.Print RTrim(name)
    ' Печатает "Иван Петров"
    Debug.Print Trim(name)

End Sub

Длина строки

Функция Параметры Описание Пример
Len Текст Возвращает
длину строки
Len («Иван Петров»)

Len — простая функция при использовании со строкой. Она просто возвращает количество символов, которое содержит строка. Если используется с числовым типом, таким как long, он вернет количество байтов.

Sub IspLen()

    Dim name As String
    name = "Иван Петров"

    ' Печатает 11
    Debug.Print Len("Иван Петров")
    ' Печатает 3
    Debug.Print Len("АБВ")

    ' Печатает 4 с Long - это размер 4 байта
    Dim total As Long
    Debug.Print Len(total)

End Sub

Перевернуть текст

Функция Параметры Описание Пример
StrReverse Текст Перевернуть
текст
StrReverse
(«Иван
Петров»)

StrReverse — еще одна простая в использовании функция. Он просто возвращает данную строку с обратными символами.

Sub RevStr()

    Dim s As String
    s = "Иван Петров"
    ' Печатает: вортеП навИ
    Debug.Print StrReverse(s)

End Sub

Сравнение

Функция Параметры Описание Пример
StrComp Текст1, текст2 Сравнивает 2
текста
StrComp
(«Иван»,
«Иван»)

Функция StrComp используется для сравнения двух строк. Следующие подразделы описывают, как используется.

Описание параметров

StrComp()  String1, String2, Compare[Необязат]

  • String1: первая строка для сравнения
  • String2: вторая строка для сравнения
  • Compare как vbCompareMethod: см. Раздел «Сравнить» для получения более подробной информации.

StrComp Возвращаемые значения

Возвращаемое значение Описание
0 Совпадение строк
-1 строка1 меньше строки2
1 строка1 больше строки2
Null если какая-либо строка равна нулю

Использование и примеры

Ниже приведены некоторые примеры использования функции StrComp.

Sub IspStrComp()

   ' Возвращает  0
   Debug.Print StrComp("АБВ", "АБВ", vbTextCompare)
   ' Возвращает 1
   Debug.Print StrComp("АБВГ", "АБВ", vbTextCompare)
   ' Возвращает -1
   Debug.Print StrComp("АБВ", "АБВГ", vbTextCompare)
   ' Returns Null
   Debug.Print StrComp(Null, "АБВГ", vbTextCompare)

End Sub

Сравнение строк с использованием операторов

Вы также можете использовать знак равенства для сравнения строк. Разница между сравнением equals и функцией StrComp:

  1. Знак равенства возвращает только true или false.
  2. Вы не можете указать параметр Compare, используя знак равенства — он использует настройку «Option Compare».  

Ниже приведены некоторые примеры использования equals для сравнения строк.

Option Compare Text

Sub CompareIspEquals()

    ' Возвращает true
    Debug.Print "АБВ" = "АБВ"
    ' Возвращает true, потому что «Сравнить текст» установлен выше
    Debug.Print "АБВ" = "абв"
    ' Возвращает false
    Debug.Print "АБВГ" = "АБВ"
    ' Возвращает false
    Debug.Print "АБВ" = "АБВГ"
    ' Возвращает null
    Debug.Print Null = "АБВГ"

End Sub

Сравнение строк с использованием сопоставления с шаблоном

Функция Параметры Описание Пример
Like Текст, шаблон проверяет, имеет
ли строка
заданный
шаблон
«abX» Like «??X»
«54abc5» Like «*abc#»
Знак Значение
? Любой одиночный символ
# Любая однозначная цифра (0-9)
* Ноль или более символов
[charlist] Любой символ в списке
[!charlist] Любой символ не в списке символов

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

Если строка соответствует шаблону, возвращаемое значение равно true, в противном случае — false.

Сопоставление с образцом аналогично функции формата VBA в том смысле, что его можно использовать практически безгранично. В этом разделе я приведу несколько примеров, которые объяснят, как это работает. Это должно охватывать наиболее распространенные виды использования.

Давайте посмотрим на базовый пример с использованием знаков. Возьмите следующую строку шаблона.

[abc][!def]?#X*

 Давайте посмотрим, как работает эта строка

[abc] — символ, который является или a, b или c
[! def] — символ, который не является d, e или f
? любой символ
# — любая цифра
X — символ X
* следуют ноль или более символов

 Поэтому следующая строка действительна
apY6X

а — один из символов a,b,c
p — не один из символов d, e или f
Y — любой символ
6 — это цифра
Х — это буква Х

В следующих примерах кода показаны результаты различных строк с этим шаблоном.

Sub Shabloni()

    ' ИСТИНА
    Debug.Print 1; "apY6X" Like "[abc][!def]?#X*"
    ' ИСТИНА - любая комбинация символов после x действительна
    Debug.Print 2; "apY6Xsf34FAD" Like "[abc][!def]?#X*"
    ' ЛОЖЬ - символ не из[abc]
    Debug.Print 3; "dpY6X" Like "[abc][!def]?#X*"
    ' ЛОЖЬ - 2-й символ e находится в [def]
    Debug.Print 4; "aeY6X" Like "[abc][!def]?#X*"
    ' ЛОЖЬ - A в позиции 4 не является цифрой
    Debug.Print 5; "apYAX" Like "[abc][!def]?#X*"
    ' ЛОЖЬ - символ в позиции 5 должен быть X
    Debug.Print 1; "apY6Z" Like "[abc][!def]?#X*"

End Sub

Реальный пример сопоставления с образцом

Чтобы увидеть реальный пример использования сопоставления с образцом, ознакомьтесь с Примером 3: Проверьте, допустимо ли имя файла.

Важное примечание о сопоставлении с образцом VBA

Оператор Like использует двоичное или текстовое сравнение на основе параметра Option Compare. Пожалуйста, смотрите раздел Сравнение для более подробной информации.

Заменить часть строки

Функция Параметры Описание Пример
Replace строка, найти, заменить,
начать,
считать,
сравнивать
Заменяет текст Replace
(«Ива»,»а»,»ан»)

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

Replace описание параметров

Replace()  Expression, Find, Replace, Start[Необязат], Count[Необязат], Compare[Необязат]

  • Expression: текст, в котором нужна замена символов
  • Find: текст для замены в строке выражения
  • Replace: строка для поиска замены текста поиска
  • Start [Необязательно — по умолчанию 1]: начальная позиция в строке
  • Count [Необязательно — по умолчанию -1]: количество замен. По умолчанию -1 означает все.
  • Compare как vbCompareMethod: см. Раздел «Сравнить» для получения более подробной информации.

Использование и примеры

В следующем коде показаны некоторые примеры использования функции замены.

Sub PrimeriReplace()

    ' Заменяет все знаки вопроса (?) на точку с запятой (;)
    Debug.Print Replace("A?B?C?D?E", "?", ";")
    ' Заменить Петров на Иванов
    Debug.Print Replace("Евгений Петров,Артем Петров", "Петров", "Иванов")
    ' Заменить AX на AB
    Debug.Print Replace("ACD AXC BAX", "AX", "AB")

End Sub

На выходе:

A;B;C;D;E
Евгений Иванов,Артем Иванов
ACD ABC BAB

В следующих примерах мы используем необязательный параметр Count. Count определяет количество замен. Так, например, установка Count равной единице означает, что будет заменено только первое вхождение.

Sub ReplaceCount()

    ' Заменяет только первый знак вопроса
    Debug.Print Replace("A?B?C?D?E", "?", ";", Count:=1)
    ' Заменяет первые три знака вопроса
    Debug.Print Replace("A?B?C?D?E", "?", ";", Count:=3)

End Sub

На выходе:

A;B?C?D?E
A;B;C;D?E

Необязательный параметр Start позволяет вам вернуть часть строки. Позиция, которую вы указываете с помощью Start, — это место, откуда начинается возврат строки. Он не вернет ни одной части строки до этой позиции, независимо от того, была ли произведена замена или нет.

Sub ReplacePartial()

    ' Использовать оригинальную строку из позиции 4
    Debug.Print Replace("A?B?C?D?E", "?", ";", Start:=4)
    ' Используйте оригинальную строку из позиции 8
    Debug.Print Replace("AA?B?C?D?E", "?", ";", Start:=8)
    ' Элемент не заменен, но по-прежнему возвращаются только последние '2 символа
    Debug.Print Replace("ABCD", "X", "Y", Start:=3)

End Sub

На выходе:

;C;D;E
;E
CD

Иногда вы можете заменить только заглавные или строчные буквы. Вы можете использовать параметр Compare для этого. Он используется во многих строковых функциях. Для получения дополнительной информации об этом проверьте раздел сравнения.

Sub ReplaceCase()

    ' Заменить только заглавные А
    Debug.Print Replace("AaAa", "A", "X", Compare:=vbBinaryCompare)
    ' Заменить все А
    Debug.Print Replace("AaAa", "A", "X", Compare:=vbTextCompare)

End Sub

На выходе:

XaXa
XXXX

Многократные замены

Если вы хотите заменить несколько значений в строке, вы можете вкладывать вызовы. В следующем коде мы хотим заменить X и Y на A и B соответственно.

Sub ReplaceMulti()

    Dim newString As String

    ' Заменить А на Х
    newString = Replace("ABCD ABDN", "A", "X")
    ' Теперь замените B на Y в новой строке
    newString = Replace(newString, "B", "Y")

    Debug.Print newString

End Sub

В следующем примере мы изменим приведенный выше код для выполнения той же задачи. Мы будем использовать возвращаемое значение первой замены в качестве аргумента для второй замены.

Sub ReplaceMultiNested()

    Dim newString As String

    ' Заменить A на X, а B на Y
    newString = Replace(Replace("ABCD ABDN", "A", "X"), "B", "Y")

    Debug.Print newString

End Sub

Результатом обоих этих Subs является:
XYCD XYDN

Преобразовать типы в строку (базовый)

Этот раздел о преобразовании чисел в строку. Очень важным моментом здесь является то, что в большинстве случаев VBA автоматически конвертируется в строку для вас. Давайте посмотрим на некоторые примеры:

Sub AutoConverts()

    Dim s As String
    ' Автоматически преобразует число в строку
    s = 12.99
    Debug.Print s

    ' Автоматически преобразует несколько чисел в строку
    s = "ABC" & 6 & 12.99
    Debug.Print s

    ' Автоматически преобразует двойную переменную в строку
    Dim d As Double, l As Long
    d = 19.99
    l = 55
    s = "Значения: " & d & " " & l
    Debug.Print s

End Sub

Когда вы запустите приведенный выше код, вы увидите, что число было автоматически преобразовано в строки. Поэтому, когда вы присваиваете значение строке, VBA будет следить за преобразованием большую часть времени. В VBA есть функции преобразования, и в следующих подразделах мы рассмотрим причины их использования.

Явное преобразование

Функция Параметры Описание Пример
CStr выражение Преобразует
числовую
переменную
в строку
CStr («45.78»)
Str число Преобразует
числовую
переменную
в строку
Str («45.78»)

В некоторых случаях вы можете захотеть преобразовать элемент в строку без необходимости сначала помещать его в строковую переменную. В этом случае вы можете использовать функции Str или CStr. Оба принимают выражение как функцию, и это может быть любой тип, например long, double, data или boolean.

Давайте посмотрим на простой пример. Представьте, что вы читаете список значений из разных типов ячеек в коллекцию. Вы можете использовать функции Str / CStr, чтобы гарантировать, что они все хранятся в виде строк. Следующий код показывает пример этого:

Sub IspStr()

    Dim coll As New Collection
    Dim c As Range

    ' Считать значения ячеек в коллекцию
    For Each c In Range("A1:A10")
        ' Используйте Str для преобразования значения ячейки в строку
        coll.Add Str(c)
    Next

    ' Распечатайте значения и тип коллекции
    Dim i As Variant
    For Each i In coll
        Debug.Print i, TypeName(i)
    Next

End Sub

В приведенном выше примере мы используем Str для преобразования значения ячейки в строку. Альтернативой этому может быть присвоение значения строке, а затем присвоение строки коллекции. Итак, вы видите, что использование Str здесь намного эффективнее.

Multi Region

Разница между функциями Str и CStr заключается в том, что CStr преобразует в зависимости от региона. Если ваши макросы будут использоваться в нескольких регионах, вам нужно будет использовать CStr для преобразования строк.

Хорошей практикой является использование CStr при чтении значений из ячеек. Если ваш код в конечном итоге используется в другом регионе, вам не нужно вносить какие-либо изменения, чтобы он работал правильно.

Преобразовать строку в число — CLng, CDbl, Val и т.д.

Функция Возвращает Пример
CBool Boolean CBool(«True»), CBool(«0»)
CCur Currency CCur(«245.567»)
CDate Date CDate(«1/1/2019»)
CDbl Double CDbl(«245.567»)
CDec Decimal CDec(«245.567»)
CInt Integer CInt(«45»)
CLng Long Integer CLng(«45.78»)
CVar Variant CVar(«»)

Вышеуказанные функции используются для преобразования строк в различные типы. Если вы присваиваете переменную этого типа, VBA выполнит преобразование автоматически.

Sub StrToNumeric()

    Dim l As Long, d As Double, c As Currency
    Dim s As String
    s = "45.923239"

    l = s
    d = s
    c = s

    Debug.Print "Long is "; l
    Debug.Print "Double is "; d
    Debug.Print "Currency is "; c

End Sub

Использование типов преобразования дает большую гибкость. Это означает, что вы можете определить тип во время выполнения. В следующем коде мы устанавливаем тип на основе аргумента sType, передаваемого в функцию PrintValue. Поскольку этот тип может быть прочитан из внешнего источника, такого как ячейка, мы можем установить тип во время выполнения. Если мы объявим переменную как Long, то при выполнении кода она всегда будет длинной.

Sub Test()
    ' Печатает  46
    PrintValue "45.56", "Long"
    ' Печатает 45.56
    PrintValue "45.56", ""
End Sub

Sub PrintValue(ByVal s As String, ByVal sType As String)

    Dim value

    ' Установите тип данных на основе строки типа
    If sType = "Long" Then
        value = CLng(s)
    Else
        value = CDbl(s)
    End If
    Debug.Print "Type is "; TypeName(value); value

End Sub

Если строка не является допустимым числом (т.е. Содержит символы, другие цифры), вы получаете ошибку «Несоответствие типов».

Sub InvalidNumber()

    Dim l As Long

    ' Даст ошибку несоответствия типов
    l = CLng("45A")

End Sub

Функция Val

Функция преобразует числовые части строки в правильный тип числа.

Val преобразует первые встреченные числа. Как только он встречает буквы в строке, он останавливается. Если есть только буквы, то в качестве значения возвращается ноль. Следующий код показывает некоторые примеры использования Val

Sub IspVal()

    ' Печатает 45
    Debug.Print Val("45 Новая улица")

    ' Печатает 45
    Debug.Print Val("    45 Новая улица")

    ' Печатает 0
    Debug.Print Val("Новая улица 45")

    ' Печатает 12
    Debug.Print Val("12 f 34")

End Sub

Val имеет два недостатка

  1. Не мультирегиональный — Val не распознает международные версии чисел, такие как запятые вместо десятичных. Поэтому вы должны использовать вышеуказанные функции преобразования, когда ваше приложение будет использоваться в нескольких регионах.
  2. Преобразует недопустимые строки в ноль — в некоторых случаях это может быть нормально, но в большинстве случаев лучше, если неверная строка вызывает ошибку. Затем приложение осознает наличие проблемы и может действовать соответствующим образом. Функции преобразования, такие как CLng, вызовут ошибку, если строка содержит нечисловые символы.

Генерация строки элементов — функция строки

Функция Параметры Описание Пример
String число, символ Преобразует
числовую
переменную
в строку
String (5,»*»)

Функция String используется для генерации строки повторяющихся символов. Первый аргумент — это количество повторений, второй аргумент — символ.

Sub IspString()

    ' Печатает: AAAAA
    Debug.Print String(5, "A")
    ' Печатает: >>>>>
    Debug.Print String(5, 62)
    ' Печатает: (((ABC)))
    Debug.Print String(3, "(") & "ABC" & String(3, ")")

End Sub

Преобразовать регистр / юникод — StrConv, UCase, LCase

Функция Параметры Описание Пример
StrConv строка,
преобразование, LCID
Преобразует
строку
StrConv(«abc»,vbUpperCase)

Если вы хотите преобразовать регистр строки в верхний или нижний регистр, вы можете использовать функции UCase и LCase для верхнего и нижнего соответственно. Вы также можете использовать функцию StrConv с аргументом vbUpperCase или vbLowerCase. В следующем коде показан пример использования этих трех функций.

Sub ConvCase()

    Dim s As String
    s = "У Мэри был маленький ягненок"

    ' верхний
    Debug.Print UCase(s)
    Debug.Print StrConv(s, vbUpperCase)

    ' нижний
    Debug.Print LCase(s)
    Debug.Print StrConv(s, vbLowerCase)

    ' Устанавливает первую букву каждого слова в верхний регистр
    Debug.Print StrConv(s, vbProperCase)

End Sub

На выходе: 

У МЭРИ БЫЛ МАЛЕНЬКИЙ ЯГНЕНОК
У МЭРИ БЫЛ МАЛЕНЬКИЙ ЯГНЕНОК
у мэри был маленький ягненок
у мэри был маленький ягненок
У Мэри Был Маленький Ягненок

Другие преобразования

Как и в случае, StrConv может выполнять другие преобразования на основе параметра Conversion. В следующей таблице приведен список различных значений параметров и того, что они делают. Для получения дополнительной информации о StrConv проверьте страницу MSDN.

Постоянные Преобразует Значение
vbUpperCase 1 в верхний регистр
vbLowerCase 2 в нижнем регистре
vbProperCase 3 первая буква
каждого слова в
верхнем регистре
vbWide* 4 от узкого к
широкому
vbNarrow* 8 от широкого к
узкому
vbKatakana** 16 из Хираганы в
Катакану
vbHiragana 32 из Катаканы в
Хирагану
vbUnicode 64 в юникод
vbFromUnicode 128 из юникода

Использование строк с массивами

Функция Параметры Описание Пример
Split выражение,
разделитель,
ограничить,
сравнить
Разбирает
разделенную
строку в
массив
arr = Split(«A;B;C»,»;»)
Join исходный
массив,
разделитель
Преобразует
одномерный
массив в
строку
s = Join(Arr, «;»)

Строка в массив с использованием Split

Вы можете легко разобрать строку с разделителями в массив. Вы просто используете функцию Split с разделителем в качестве параметра. Следующий код показывает пример использования функции Split.

Sub StrToArr()

    Dim arr() As String
    ' Разобрать строку в массив
    arr = Split("Иван,Анна,Павел,София", ",")

    Dim name As Variant
    For Each name In arr
        Debug.Print name
    Next

End Sub

На выходе:

Иван
Анна
Павел
София

Если вы хотите увидеть некоторые реальные примеры использования Split, вы найдете их в статье Как легко извлечь любую строку без использования VBA InStr.

Массив в строку, используя Join

Если вы хотите построить строку из массива, вы можете легко это сделать с помощью функции Join. По сути, это обратная функция Split. Следующий код предоставляет пример использования Join

Sub ArrToStr()

    Dim Arr(0 To 3) As String
    Arr(0) = "Иван"
    Arr(1) = "Анна"
    Arr(2) = "Павел"
    Arr(3) = "София"

    ' Построить строку из массива
    Dim sNames As String
    sNames = Join(Arr, ",")

    Debug.Print sNames

End Sub

На выходе:

Иван, Анна, Павел, София

Форматирование строки

Функция Параметры Описание Пример
Format выражение,
формат,
firstdayofweek,
firstweekofyear
Форматирует
строку
Format(0.5, «0.00%»)

Функция Format используется для форматирования строки на основе заданных инструкций. В основном используется для размещения даты или числа в определенном формате. Приведенные ниже примеры показывают наиболее распространенные способы форматирования даты.

Sub FormatDate()

    Dim s As String
    s = "31/12/2019 10:15:45"

    ' Печатает: 31 12 19
    Debug.Print Format(s, "DD MM YY")
    ' Печатает: Thu 31 Dec 2019
    Debug.Print Format(s, "DDD DD MMM YYYY")
    ' Печатает: Thursday 31 December 2019
    Debug.Print Format(s, "DDDD DD MMMM YYYY")
    ' Печатает: 10:15
    Debug.Print Format(s, "HH:MM")
    ' Печатает: 10:15:45 AM
    Debug.Print Format(s, "HH:MM:SS AM/PM")

End Sub

В следующих примерах представлены некоторые распространенные способы форматирования чисел.

Sub FormatNumbers()

    ' Печатает: 50.00%
    Debug.Print Format(0.5, "0.00%")
    ' Печатает: 023.45
    Debug.Print Format(23.45, "00#.00")
    ' Печатает: 23,000
    Debug.Print Format(23000, "##,000")
    ' Печатает: 023,000
    Debug.Print Format(23000, "0##,000")
    ' Печатает: $23.99
    Debug.Print Format(23.99, "$#0.00")

End Sub

Функция «Формат» — довольно обширная тема, и она может самостоятельно занять всю статью. Если вы хотите получить больше информации, то страница формата MSDN предоставляет много информации.

Полезный совет по использованию формата

Быстрый способ выяснить используемое форматирование — использовать форматирование ячеек на листе Excel. Например, добавьте число в ячейку. Затем щелкните правой кнопкой мыши и отформатируйте ячейку так, как вам нужно. Если вы довольны форматом, выберите «Пользовательский» в списке категорий слева. При выборе этого вы можете увидеть строку формата в текстовом поле типа. Это формат строки, который вы можете использовать в VBA.

VBA Format Function

Заключение

Практически в любом типе программирования вы потратите много времени на манипулирование строками. В этой статье рассматриваются различные способы использования строк в VBA.

Чтобы получить максимальную отдачу, используйте таблицу вверху, чтобы найти тип функции, которую вы хотите использовать. Нажав на левую колонку этой функции, вы попадете в этот раздел.

Если вы новичок в строках в VBA, то я предлагаю вам ознакомиться с разделом «Прочтите это в первую очередь» перед использованием любой из функций.

  • На главную
  • Категории
  • Программы
  • Microsoft Excel
  • Работа с текстом в Excel

Microsoft Excel предлагает множество полезных функций, с помощью которых можно легко и быстро обрабатывать различные данные. Однако их применение не ограничивается только числами, они могут быть использованы с ячейками, содержащими текст. Ниже представлены основные функции для работы с текстом.

2020-09-20 08:34:0551

Работа с текстом в Excel

Microsoft Excel предлагает множество полезных функций, с помощью которых можно легко и быстро обрабатывать различные данные. Однако их применение не ограничивается только числами, они могут быть использованы с ячейками, содержащими текст. Ниже представлены основные функции для работы с текстом.

Функция ТЕКСТ в Excel

Преобразовывает числовые значения в текстовые и задает формат отображения посредством специальных строк форматирования. Удобна в тех случаях, когда нужно показать числа в определенном формате или объединить их с текстом, символами.

=ТЕКСТ(числовое_значение_или_формула_в_результате_вычисления_которой_получается_число;формат_ который_требуется_применить_к_указанному_значению)

Для определения формата следует предварительно клацнуть по значению правой кнопкой мышки – и в выпадающем меню выбрать одноименную опцию, либо нажать сочетание клавиш Ctrl+1. Перейти в раздел «Все…». Скопировать нужный формат из списка «Тип».

Чтобы понять, как работает функция, необходимо открыть книгу и создать таблицу с данными.

  1. Кликнуть по любому свободному месту, например, G Ввести знак «=» и ссылку на адрес ячейки – B2. Активировать Мастер функций, нажав на кнопку fx (слева) во вкладке «Формулы», или с помощью комбинации клавиш Shift+F3.
  2. На экране отобразится окно Мастера. В строке поиска ввести название функции и нажать «Найти».
  3. В списке нужное название будет выделено синим цветом. Нажать «Ок».
  4. Указать аргументы: ссылку на число и скопированное значение формата. В строке формулы после B2 вписать знак «&».
  5. В результате появится сумма в денежном формате вместе с наименованием товара. Протянуть формулу вниз.

Еще один пример.

Необходимо объединить текстовые и числовые значения с помощью формулы =A14&» «&»составляет»&» «&B14&»,»&» «&A15&» «&ТЕКСТ(B15;»ДД.ММ.ГГ;@»).

Таким образом любые данные преобразовываются в удобный формат.

Объединение ячеек в Excel

Чтобы объединить ячейки в одну строку без потери данных, можно использовать или знак «&», или функцию СЦЕПИТЬ (в новых версиях – ОБЪЕДИНИТЬ).

=СЦЕПИТЬ(ячейка_1;» «;ячейка_2;» «;ячейка_3;» «)

Пустые кавычки (» «) – это пробел. Без пробелов слова будут отображаться слитно. С помощью кавычек в формулу добавляется любой знак («.» или «,») и текст.

  1. Следует установить курсор в месте, где будет отображаться готовое значение.
  2. Написать формулу.
  3. Нажать «Enter».

Второй вариант формулы тоже простой: =ячейка1&» «&ячейка2&» «&ячейка3.

Если в результате строка будет содержать 32767 символов и более, появится ошибка #ЗНАЧ!.

Перенос текста в ячейке в Excel

Перенести текст внутри одной ячейки на следующую строку можно несколькими способами:

  1. Выделить ячейку и кликнуть по опции «Перенос…», которая расположена во вкладке «Главная».
  2. Щелкнуть правой кнопкой мышки по выделенной ячейке, в выпадающем меню выбрать «Формат…». В появившемся на экране окне перейти на вкладку «Выравнивание», поставить галочку в поле «Переносить по словам». Сохранить изменения, нажав «Ок».
  3. При наборе текста перед конкретным словом зажать комбинацию клавиш Alt+Enter – курсор переместится на новую строку.
  4. С помощью функции СИМВОЛ(10). При этом нужно объединить текст во всех ячейках, а поможет сделать это амперсанд «&»: =A1&B1&СИМВОЛ(10)&A2&B2&СИМВОЛ(10).
  5. Также вместо оператора «&» можно использовать функцию СЦЕПИТЬ. Формула будет иметь вид: =СЦЕПИТЬ(A2;» «;СИМВОЛ(10);B2;» «;C2;» «;D2;СИМВОЛ(10);E2;СИМВОЛ(10);F2).

Чтобы перенос строки с использованием формул отображался корректно в книге, следует включить опцию переноса на панели.

Какой бы метод не был выбран, текст распределяется по ширине столбца. При изменении ширины данные автоматически перестраиваются.

Количество символов в ячейке в Excel

При работе с данными иногда требуется посчитать количество символов в определенной ячейке. Вручную делать это неудобно, особенно когда значений много или содержимое меняется в зависимости от заданного условия. Для таких случаев используется функция ДЛСТР.

=ДЛСТР(ячейка_1)

Функция работает только с одним значением.

  1. Выделить ту ячейку, где будет показан подсчет.
  2. Вписать формулу, указывая ссылку на адрес определенной ячейки.
  3. Нажать «Enter».
  4. Растянуть результат на другие строки или столбцы.

Можно посчитать общее количество символов:

  1. Выделить все значения, во вкладке «Главная» на панели справа найти инструмент «Сумма».
  2. Кликнуть по одноименной опции. Рядом (под или с боковой стороны от выделенного диапазона) отобразится результат.

В разбросанных ячейках

В этом случае необходимо воспользоваться ДЛСТР и суммированием:

  1. Установить курсор в желаемом месте.
  2. Ввести формулу =ДЛСТР(значение1)+ДЛСТР(значение2)+ДЛСТР(значение3) и т.д.
  3. Нажать «Enter».

Как преобразовать текст в число

Часто при добавлении новых числовых данных в таблицу они по умолчанию преобразовываются в текст. В итоге не работают вычисления и формулы. В Excel есть возможность сразу узнать, как отформатированы значения: числа выравниваются по правому краю, текст  – по левому.

Когда возле значения (в левом углу сверху) есть зеленый треугольник, значит, где-то допущена ошибка. Существует несколько легких способов преобразования:

  1. Через меню «Ошибка». Если кликнуть по значению, слева появится значок с восклицательным знаком. Нужно навести на него курсор, клацнуть правой кнопкой мышки. В раскрывшемся меню выбрать вариант «Преобразовать в число».
  2. Используя простое математическое действие – прибавление / отнимание нуля, умножение / деление на единицу и т.п. Но необходимо создать дополнительный столбец.
  3. Добавив специальную вставку. В пустой ячейке написать цифру 1 и скопировать ее. Выделить диапазон с ошибками. Кликнуть по нему правой кнопкой мышки, из выпадающего меню выбрать «Специальную вставку». В открывшемся окне поставить галочку возле «Умножить». Нажать «Ок».
  4. При помощи функций ЗНАЧЕН (преобразовывает текстовый формат в числовой), СЖПРОБЕЛЫ (удаляет лишние пробелы), ПЕЧСИМВ (удаляет непечатаемые знаки).
  5. Применив инструмент «Текст по столбцам» к значениям, которые расположены в одном столбце. Нужно выделить все числовые элементы, во вкладке «Данные» найти указанную опцию. В открывшемся окне Мастера нажимать далее до 3-го шага – проверить, какой указан формат, при необходимости – изменить его. Нажать «Готово».

Как преобразовать дату в текст

Функция ТЕКСТ позволяет определить день недели по дате:

  1. Кликнуть по ячейке.
  2. Написать формулу =ТЕКСТ(значение;»ДДДД»).
  3. Нажать «Enter».
  4. Протянуть формулу вниз до последней даты.

Для представления даты в текстовом виде используется формула =ТЕКСТ(значение;»ДД МММ ГГГГ»).

Для отображения даты в аргументе формулы в качестве формата используются следующие коды:

Максим Орлов

Ваш покорный слуга — компьютерщик широкого профиля: системный администратор, вебмастер, интернет-маркетолог и много чего кто. Вместе с Вами, если Вы конечно не против, разовьем из обычного блога крутой технический комплекс.

Иногда вам может потребоваться записать данные рабочего листа на бумагу, и вам, возможно, придется много раз поднимать голову, а затем опускать ее, что может вас мучить. Но если есть голос, который озвучивает содержимое ячейки за вас, это может быть так приятно. Здесь я расскажу, как позволить Excel говорить за вас о ячейках.

Озвучивать ячейки в Excel


стрелка синий правый пузырь Озвучивать ячейки в Excel

Если вы хотите, чтобы Excel озвучивал содержимое ячейки, вам необходимо сначала добавить команду «Произнести ячейку» на панель инструментов «Настроить быстрый доступ».

1. Откройте рабочий лист, на котором вы хотите озвучить его ячейки, и щелкните значок Настройка панели быстрого доступа стрелка> Дополнительные команды.

док-говори-сотовый-1

2. Нажмите Все команды из выпадающего списка Выберите команды из раздел и найдите Говорить Ячейки команду и щелкните ее, перетащив полосу прокрутки, и щелкните Добавить кнопку, чтобы добавить его в правый раздел. Смотрите скриншот:

док-говори-сотовый-2

3. Нажмите OK чтобы закрыть диалог, теперь Говорить Ячейки команда находится в Панель быстрого доступа. Смотрите скриншот:

док-говори-сотовый-3

Теперь начинаем озвучивать содержимое ячейки.

4. Выделите ячейки диапазона, для которых нужно произнести голос, затем щелкните значок Говорить Ячейки команду, а затем будет озвучивать ячейку одну за другой в порядке строк.

док-говори-сотовый-4

Внимание: Вам нужно убедиться, что на вашем компьютере включен динамик.


Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

Комментарии (3)


Оценок пока нет. Оцените первым!

Like this post? Please share to your friends:
  • Чтение таблицы excel python
  • Чтение таблиц excel python
  • Чтение строки excel python
  • Чтение содержимого ячейки excel
  • Чтение по строкам excel