Решение в excel буквы

9 / 8 / 2

Регистрация: 08.12.2019

Сообщений: 102

1

Поиск определённых букв в слове

28.01.2020, 21:33. Показов 5998. Ответов 15


Студворк — интернет-сервис помощи студентам

Добрый вечер, Уважаемые гуру и подгурятники!

Формулой =ПОИСК({«а»;»о»;»е»;»ё»;»ы»;»у»;»и»;»я»;»э»};A1) пытаюсь создать массив,
где будут отмечены номера всех согласных символов. Формула работает, но находит только первое вхождение найденного символа,
а требуется второе, третье и т.д. Также, чтобы считывала общее количество букв в слове.

А мыслей что-то и нет.. А у вас?



0



Programming

Эксперт

94731 / 64177 / 26122

Регистрация: 12.04.2006

Сообщений: 116,782

28.01.2020, 21:33

15

4131 / 2235 / 940

Регистрация: 01.12.2010

Сообщений: 4,624

28.01.2020, 22:16

2

Заблуждаетесь формула возвращает массив из найденных позиций и ЗНАЧ!, если искомый символ не будет найден. Но для того, чтобы это узреть — нужно выделить девять ячеек в строке, ввести формулу и нажать клавиши CTRL+SHIFT+ENTER



0



9 / 8 / 2

Регистрация: 08.12.2019

Сообщений: 102

28.01.2020, 22:50

 [ТС]

3

Цитата
Сообщение от pashulka
Посмотреть сообщение

Заблуждаетесь формула возвращает массив из найденных позиций и ЗНАЧ!, если искомый символ не будет найден. Но для того, чтобы это узреть — нужно выделить девять ячеек в строке, ввести формулу и нажать клавиши CTRL+SHIFT+ENTER

Да я так думал уже, но хотелось сделать всё безупречно кратко, чтобы глаз радовался. Но увы в Exel
нет таких функций. Жаль…

Благодарю, но вот только не понял для чего CTRL+SHIFT+ENTER нажимать? Просто ENTER не достаточно?



0



4131 / 2235 / 940

Регистрация: 01.12.2010

Сообщений: 4,624

28.01.2020, 22:55

4

Не надо оверквотинга.

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

Формулы массива вводятся с помощью этих волшебных клавиш.



0



5942 / 3154 / 698

Регистрация: 23.11.2010

Сообщений: 10,524

28.01.2020, 23:06

5

Цитата
Сообщение от abu_chechen
Посмотреть сообщение

хотелось сделать всё безупречно кратко

Вы серьезно?



0



9 / 8 / 2

Регистрация: 08.12.2019

Сообщений: 102

28.01.2020, 23:17

 [ТС]

6

Цитата
Сообщение от pashulka
Посмотреть сообщение

Не надо оверквотинга.

Ок, верно.

Цитата
Сообщение от pashulka
Посмотреть сообщение

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

Без запятой.

Цитата
Сообщение от pashulka
Посмотреть сообщение

Если нужен массив, значит нужно иметь более одной ячейки

Верно.

Добавлено через 2 минуты

Цитата
Сообщение от pashulka
Посмотреть сообщение

Формулы массива вводятся с помощью этих волшебных клавиш

Можно пример, как ни как хотелось бы увидеть как это реализует профи

Добавлено через 4 минуты

Цитата
Сообщение от Fairuza
Посмотреть сообщение

Вы серьезно?

Нельзя да?



0



4131 / 2235 / 940

Регистрация: 01.12.2010

Сообщений: 4,624

28.01.2020, 23:17

7

abu_chechen, Троллите ? Ваша формула это и есть формула массива.



0



9 / 8 / 2

Регистрация: 08.12.2019

Сообщений: 102

28.01.2020, 23:21

 [ТС]

8

Цитата
Сообщение от pashulka
Посмотреть сообщение

Ваша формула это и есть формула массива.

Как то так, не то что ожидалось

Миниатюры

Поиск определённых букв в слове
 



0



4131 / 2235 / 940

Регистрация: 01.12.2010

Сообщений: 4,624

28.01.2020, 23:28

9

Цитата
Сообщение от pashulka
Посмотреть сообщение

нужно выделить девять ячеек в строке

в строке Карл! не в столбце

для столбца
=ПОИСК({«а»:»о»:»е»:»ё»:»ы»:»у»:»и»:»я»:»э»};A1)
=ТРАНСП(ПОИСК({«а»;»о»;»е»;»ё»;»ы»;»у»;»и»;»я»;»э» };A1))



0



9 / 8 / 2

Регистрация: 08.12.2019

Сообщений: 102

28.01.2020, 23:33

 [ТС]

10

Цитата
Сообщение от pashulka
Посмотреть сообщение

в строке Карл! не в столбце

Цитата
Сообщение от abu_chechen
Посмотреть сообщение

Формула работает, но находит только первое вхождение найденного символа,
а требуется второе, третье и т.д.

А с этим как быть?

Миниатюры

Поиск определённых букв в слове
 



0



4131 / 2235 / 940

Регистрация: 01.12.2010

Сообщений: 4,624

28.01.2020, 23:38

11

По моему кто-то хотел обойтись без ненужного цитирования

А с этим, мой косяк. Недоглядел. Если по простому, то напишите макрос. А если не хотите заниматься этим самостоятельно, опубликуйте файл (.xls/.xlsx) где будет наглядно видно, что есть и что должно получиться в результате.



0



9 / 8 / 2

Регистрация: 08.12.2019

Сообщений: 102

29.01.2020, 00:01

 [ТС]

12

Цитата
Сообщение от pashulka
Посмотреть сообщение

опубликуйте файл (.xls/.xlsx)

Верно. Залил без формул, чтобы было понятно, что должно получится в итоге



0



9 / 8 / 2

Регистрация: 08.12.2019

Сообщений: 102

29.01.2020, 00:13

 [ТС]

13

Цитата
Сообщение от abu_chechen
Посмотреть сообщение

Верно. Залил без формул, чтобы было понятно, что должно получится в итоге

файл перезалил исправив упущения



0



4131 / 2235 / 940

Регистрация: 01.12.2010

Сообщений: 4,624

29.01.2020, 00:46

14

Лучший ответ Сообщение было отмечено abu_chechen как решение

Решение

Без полёта фантазии и суммирования (ибо в файле нет ни намёка, что есть <Всего букв>, то ли это просто LEN(Ячейка), то ли уникальное количество символов в ячейке)



0



9 / 8 / 2

Регистрация: 08.12.2019

Сообщений: 102

29.01.2020, 07:51

 [ТС]

15

У меня ведь нет макроса. Отправкой документа макрос на котором он работает не передаётся

Добавлено через 2 минуты

Цитата
Сообщение от pashulka
Посмотреть сообщение

то ли уникальное количество символов в ячейке

Да, количество символов в ячейке



0



4131 / 2235 / 940

Регистрация: 01.12.2010

Сообщений: 4,624

29.01.2020, 13:56

16

Если Вы отправите мой файл, то передадите и макрос. А в файлах .xlsx макросы не живут, но есть .xlsm/.xlsb



0



You can populate numbers, names of months or weekdays easily by dragging your mouse. However, you can’t populate letters in the same fashion. In this guide, we’re going to show you how to populate Alphabet letters in Excel using three different methods.

Introduction

Let us first take a look at how character sets work in Excel. There are two built-in functions which are related to converting numbers into characters:

  • CHAR Function
  • CODE Function

We can use these functions to convert numbers and letters from one another to populate letters in Excel.

Simpler Method

Uppercase and lowercase letters in ASCII character set reside between the numbers 65-90 and 97-122, respectively. 65 = A, 66 = B, 90 = Z, 106 = j, etc. Using character conversion formulas like CHAR, we can convert this numbers to corresponding letters.

Syntax

Example

The challenge for this approach is generating numbers for the CHAR function. As explained in the previous section, you need numbers between 65 and 90 or 97 and 122 for letters. For this, you can use the SEQUENCE function at this step. The SEQUENCE function can generate an array of sequential numbers automatically.

All you need to do is to supply how many numbers you need, and which number to start with.

Syntax

SEQUENCE(rows,[columns],[start],[step])

Example

=SEQUENCE(26,1,65) returns an array of numbers between 65 and 90

The function above returns numbers into 26 rows and single column. If you want to generate numbers or letters like in our example, you can use a formula like =SEQUENCE(1,26,65).

Let’s combine both functions to create formula for populating letters of the alphabet.

Syntax

=CHAR(SEQUENCE(26,1,<number where letters start>))

Example

Uppercase letters: =CHAR(SEQUENCE(26,1,65))Lowercase letters: =CHAR(SEQUENCE(26,1,97))

How to populate Alphabet letters in Excel in 3 ways 01

Using the CODE function for populating letters of the alphabet

Excel’s has the CODE function works in opposite way of the CHAR. The CODE function simply returns the corresponding number of the given character in a character set.

Syntax

Example

As a result, the CODE function with the character can be replaced with the number itself. The following is an example for using this formula.

Syntax

=CHAR(SEQUENCE(CODE(<last character>)-CODE(<first character> )+1,1,CODE(<first character>)))

Example

=CHAR(SEQUENCE(CODE(«Z»)-CODE(«A»)+1,1,CODE(«A»)))

Dynamic character interval

Using the CODE function, we can improve the model by following a more dynamic approach. We can replace the hard coded letters like “A” or “Z” with cell references containing these characters. This approach allows us to change the start and end characters of alphabet letters without updating the formula.

Syntax

=CHAR(SEQUENCE(CODE(<the cell contains the last character>)-CODE(<the cell contains the first character> )+1,1,CODE(<the cell contains the first character>)))

Example

=CHAR(SEQUENCE(CODE(I7)-CODE(I6)+1,1,CODE(I6)))

Using LET function to populate Alphabet letters

This is an optional step for populating alphabet letters in Excel. The relatively new LET function allows you to create named ranges inside the context of its own formula.

The syntax of the LET function contains the actual formula which using determined name-value pairs.

Syntax of the LET function

LET(name1, name_value1, [name2], [name_value2], …, calculation)

Syntax of our model with the LET function

=LET(Start,CODE(<the cell contains the first character>),Finish,CODE(<the cell contains the last character>),CHAR(SEQUENCE(Start-Finish+1,1,Finish)))

Example

=LET(Start,CODE(M7),Finish,CODE(M6),CHAR(SEQUENCE(Start-Finish+1,1,Finish)))

We defined named ranges for Start and Finish as CODE(M7) and CODE(M6) respectively. Each name is replaced with the corresponding CODE function block.

How to populate Alphabet letters in Excel in 3 ways - LET

  • Обычной функцией
  • Как протянуть алфавит формулой
  • Создать алфавит в Excel формулами массива
    • Способ №1
    • Способ №2
  • Применение функций создания алфавита в других задачах в Excel
Буквы алфавита в Excel по порядку.

Часто возникает задача быстро вывести все буквы алфавита и разместить их на разных строках или в разных столбцах по порядку. A, B, C… или А, Б, В… в зависимости от нужного алфавита.

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

  • Заполнением двух ячеек вручную и протягиванием курсором
  • Опцией “Автозаполнение”
  • Формулой, ссылающейся на предыдущую ячейку с нужным шагом (например, A1+1)

В случае с буквами алфавита автозаполнение не работает. Протянуть алфавит без формулы тоже не получится.

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

Обычной функцией

Наиболее простой вариант решить задачу – функция СИМВОЛ.

Она возвращает по коду ANSI знак, который ему соответствует.

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

Создаем английский алфавит в Excel

Буквы кириллицы можно создать аналогичным способом, разница только в диапазоне чисел. Для русского алфавита зарезервированы числа от 192 до 255. Подробнее можно почитать в статье про функцию СИМВОЛ в Excel.

Как протянуть алфавит формулой

Можно ли без создания столбца прибавить к букве число и получить следующую? Да, такая формула тоже возможна.

Чтобы получить одну букву из другой математически (вычитанием для предыдущей и сложением для следующей), поможет комбинация функций СИМВОЛ и КОДСИМВ. КОДСИМВ производит обратную операцию — возвращает код символа из самого символа.

Формула, возвращающая следующий символ из предыдущего, и ее результат

А вот текстовое представление формулы:

=СИМВОЛ(КОДСИМВ(A1)+1)
=СИМВОЛ(КОДСИМВ(A1)-1)

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

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

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

Важно: фигурные скобки в формулах массива не нужно вводить с клавиатуры, они появляются автоматически при вводе функций сочетанием клавиш Ctrl+Shift+Enter.

Способ №1

Чтобы создать массив чисел, воспользуемся функцией СТРОКА, которая будет обращаться к диапазону строк с нужными нам адресами и возвращать массив чисел, который будет брать на вход уже функция СИМВОЛ.

Такая формула массива потребуется, чтобы создать диапазон из 26 английских букв:

{=СИМВОЛ(СТРОКА(A65:A90))}

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

Более надежно будет создать его функцией ДВССЫЛ:

{=СИМВОЛ(СТРОКА(ДВССЫЛ("65:90")))}

Аналогичные формулы для создания русского алфавита:

{=СИМВОЛ(СТРОКА(A192:A223))}
{=СИМВОЛ(СТРОКА(ДВССЫЛ("192:223")))}

Обратите внимание, буква Ё не входит в сплошной диапазон символов таблицы ANSI. Её придется ввести позже самостоятельно.

Способ №2

Еще один способ получить символы английского алфавита – получить их из адресов ячеек первых 26 столбцов.

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

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

{=ЛЕВСИМВ(АДРЕС(1;СТОЛБЕЦ(A1:Z1);4;1);1)}

А так будет выглядеть процесс, если скопировать формулу выше в буфер без фигурных скобок и применить как формулу массива сочетанием клавиш:

А если нужно в вертикальном, формула выше обрабатывается дополнительно функцией ТРАНСП:

{=ТРАНСП(ЛЕВСИМВ(АДРЕС(1;СТОЛБЕЦ(A1:Z1);4;1);1))}

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

Применение функций создания алфавита в других задачах в Excel

Функции массива могут пригодиться не только для банального создания списка букв алфавита. Сами эти буквы могут быть нужны в других задачах. Примеры таких – по ссылкам ниже:

Найти английские буквы в русском тексте

Найти первую букву в ячейке


Следующая статья по формулам массива:

Учимся формулам массива – 2/4

Подсчет количества символов в диапазоне Excel

Часто сталкиваетесь с этой или похожими задачами при работе в Excel?
!SEMTools поможет решить их быстро и легко!

 

например «Р» должна считаться как «12» а остаться «Р»

 

и чтобы такие ячейки складывать можно было.

 

Юрий М

Модератор

Сообщений: 60588
Регистрация: 14.09.2012

Контакты см. в профиле

=СЧЁТЕСЛИ(A1:A10;»Р»)  
=СЧЁТЕСЛИ(A1:A10;»Р»)*12

 

Огромное СЫПАСЫБО!!!!!!!!!!!!!!!!!!!!!! 6 день сиже ломаю голову.

 

А как теперьче сделать так что бы =СЧЁТЗ(C9:AG9) считало без учета =СЧЁТЕСЛИ(C9:AG9;»О»)*1

 
 

а если в этой строке будут буквы «Р» со значением «12» и допустим «П» со значением «8»как это прописать?

 

Казанский

Пользователь

Сообщений: 8839
Регистрация: 11.01.2013

#8

09.08.2012 22:06:06

Для 2-3 букв можно форматом ячейки сделать:

Прикрепленные файлы

  • post_353848.xls (14 КБ)

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

Как получить из строки только буквы в Excel

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

Вот небольшой код для пользовательской функции Excel, которая может вытаскивать из строки состоящей из цифр, букв и символов только буквы.

Public Function GetText(txt As String) As String
    Dim m As String, s As String
    For i = 1 To Len(txt)
        m = Mid(txt, i, 1)
        If m Like "[A-Za-zА-Яа-яЁё]" Then s = s & m
    Next i
    GetText = s
End Function

Как пользоваться?

Открываем редактор VBA в Excel (Alt+F11), или правой кнопкой по листу и выбираем пункт «Исходный текст».

Создаем новый модуль → Insert → Module

Переключаемся на российскую раскладку клавиатуры, копируем код, указанный выше и вставляем в модуль

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

=GetText(A1)

и протягиваем ее вниз

Как получить из строки только буквы в Excel - пользовательская функция

Понравилась статья? Поделить с друзьями:
  • Решение алгебраических задач в excel
  • Решение 27 задания егэ информатика excel
  • Решение 26 задания егэ по информатике 2022 excel
  • Решение задач в excel стоимость
  • Решение 19 21 задания егэ по информатике 2021 в excel