Автозавершение по списку excel

Автозавершение ввода по списку значений

Мурад

Дата: Четверг, 04.10.2018, 17:18 |
Сообщение № 1

Группа: Проверенные

Ранг: Ветеран

Сообщений: 509


Репутация:

17

±

Замечаний:
0% ±


Excel 2007

Добрый день, господа экселисты!
Нигде не могу найти решение задачи. Как реализовать автозавершение ввода в ячейке исходя из списка имеющихся значений на другом листе.

 

Ответить

Nic70y

Дата: Четверг, 04.10.2018, 17:22 |
Сообщение № 2

Группа: Друзья

Ранг: Экселист

Сообщений: 8134


Репутация:

1999

±

Замечаний:
0% ±


Excel 2010


ЮMoney 41001841029809

 

Ответить

_Boroda_

Дата: Четверг, 04.10.2018, 17:25 |
Сообщение № 3

Группа: Модераторы

Ранг: Местный житель

Сообщений: 16618


Репутация:

6465

±

Замечаний:
0% ±


2003; 2007; 2010; 2013 RUS


Скажи мне, кудесник, любимец ба’гов…
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995

 

Ответить

Мурад

Дата: Четверг, 04.10.2018, 17:26 |
Сообщение № 4

Группа: Проверенные

Ранг: Ветеран

Сообщений: 509


Репутация:

17

±

Замечаний:
0% ±


Excel 2007

Спасибо, Александр! Да, постараюсь разобраться.
Видел это решение, когда занимался поиском. Но продолжал искать, надеясь на более простое решение, без использования макросов)

Сообщение отредактировал МурадЧетверг, 04.10.2018, 17:28

 

Ответить

Мурад

Дата: Четверг, 04.10.2018, 18:13 |
Сообщение № 5

Группа: Проверенные

Ранг: Ветеран

Сообщений: 509


Репутация:

17

±

Замечаний:
0% ±


Excel 2007

Что я неправильно сделал, можете помочь? хочу изменить блок вызова модуля поиска по клику на ячейку b2

[vba]

Код

Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Range <> («B2») Then Exit Sub
    If Target.Range = («B2») Then ufrmNilem.Show
End Sub

[/vba]

 

Ответить

Мурад

Дата: Четверг, 04.10.2018, 18:23 |
Сообщение № 6

Группа: Проверенные

Ранг: Ветеран

Сообщений: 509


Репутация:

17

±

Замечаний:
0% ±


Excel 2007

Массив данных B210:B632 у меня находится на листе basa. На 2 листе в ячейке B2 нужно вставлять значения через поиск.

 

Ответить

Мурад

Дата: Четверг, 04.10.2018, 18:54 |
Сообщение № 7

Группа: Проверенные

Ранг: Ветеран

Сообщений: 509


Репутация:

17

±

Замечаний:
0% ±


Excel 2007

Подскажите только, как вызвать форму при клике на ячейку B2 ))) Что изменить в модуле Worksheet_SelectionChange?
В остальном разобрался.

 

Ответить

Мурад

Дата: Четверг, 04.10.2018, 19:27 |
Сообщение № 8

Группа: Проверенные

Ранг: Ветеран

Сообщений: 509


Репутация:

17

±

Замечаний:
0% ±


Excel 2007

Разобрался и с этим. Остался последний)
Модуль зашит в листе 2, с этого листа идет вызов. Если я копирую лист 2, то с нового листа 3 вызов уже не работает. Пробовал скопировать код
[vba]

Код

Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Column = 2 And Target.Row = 2 Then ufrmNilem.Show
    ‘If Target.Count <> 10 Then Exit Sub
End Sub

[/vba]
в книгу, но оттуда вызов не работает((

 

Ответить

_Boroda_

Дата: Четверг, 04.10.2018, 20:21 |
Сообщение № 9

Группа: Модераторы

Ранг: Местный житель

Сообщений: 16618


Репутация:

6465

±

Замечаний:
0% ±


2003; 2007; 2010; 2013 RUS

[vba]

Код

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.address(0,0)<> «B2» Then Exit Sub
    ufrmNilem.Show
End Sub

[/vba]

А лучше так
[vba]

Код

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Intersect(Target, Range(«B2»)) Is Nothing Then Exit Sub
    ufrmNilem.Show
End Sub

[/vba]


Скажи мне, кудесник, любимец ба’гов…
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995

 

Ответить

Мурад

Дата: Пятница, 05.10.2018, 09:58 |
Сообщение № 10

Группа: Проверенные

Ранг: Ветеран

Сообщений: 509


Репутация:

17

±

Замечаний:
0% ±


Excel 2007

Доброе утро!
Спасибо, Александр! Понял, почему у меня не копировался макрос при копировании листа. Надо было просто перенести код вызова формы на лист шаблона))

 

Ответить

Мурад

Дата: Пятница, 05.10.2018, 10:48 |
Сообщение № 11

Группа: Проверенные

Ранг: Ветеран

Сообщений: 509


Репутация:

17

±

Замечаний:
0% ±


Excel 2007

Не знаю, в продолжение этой же темы или надо создавать другую.
Если на одном листе в ячейке B2 создан макрос вызова формы поиска из списка значений, то как сделать на этом же листе в диапазоне A2:A40 вызов такой же формы, но с поиском по другому списку значений?
Начал с того, что задаю вызов формы поиска либо с ячейки B2, либо с диапазона A22:A40
[vba]

Код

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim r, r1, r2 As Range
    Set r1 = Range(«B2»)
    Set r2 = Range(«A22:A40»)
    Set r = Union(r1, r2)
    If Intersect(Target, Range(r)) Is Nothing Then Exit Sub
    ufrmNilem.Show
End Sub

[/vba]
И поскольку руки у меня кривые, эксель послал меня к черту, написав, что так делать нельзя)

Сообщение отредактировал МурадПятница, 05.10.2018, 10:49

 

Ответить

Мурад

Дата: Пятница, 05.10.2018, 10:59 |
Сообщение № 12

Группа: Проверенные

Ранг: Ветеран

Сообщений: 509


Репутация:

17

±

Замечаний:
0% ±


Excel 2007

Параллельно корректирую код формы, чтобы при выборе ячейки B2 срабатывал один цикл, а при клике по диапазону A22:A40 — другой:
[vba]

Код

Option Explicit
Option Compare Text
Dim x, y

Private Sub UserForm_Initialize()
    With Worksheets(«basa»)
        x = .Range(«C210″, .Cells(Rows.Count, 3).End(xlUp)).Value » адрес 1 базы
        y = .Range(«N2″, .Cells(Rows.Count, 14).End(xlUp)).Value » адрес 2 базы
    End With
End Sub

Private Sub TextBox1_Change()
Dim i As Long, s As String, txt As String, lt As Long

txt = TextBox1.Text: lt = Len(txt)
If lt = 0 Then
    s = «» »
Else
For i = 1 To UBound(x, 1)
If InStr(x(i, 1), txt) Then s = s & «~» & x(i, 1)
Next i
For i = 1 To UBound(y, 1)
If InStr(y(i, 1), txt) Then s = s & «~» & y(i, 1)
Next i
End If
Me.ListBox1.List = Split(Mid(s, 2), «~»)
End Sub

Private Sub ListBox1_Click()
    If ListBox1.ListIndex = -1 Then Exit Sub
    Me.Label4.Caption = Me.ListBox1.Value
End Sub

Private Sub CommandButton1_Click()
Dim o1 As Worksheet

    ActiveCell.Value = Me.Label4.Caption

        Unload Me
End Sub

[/vba]
При такой корректировке кода, логично, что 2 базы у меня объединились)) и будут предлагаться к выбору значения из 2 баз при клике на ячейке B2

 

Ответить

_Boroda_

Дата: Пятница, 05.10.2018, 10:59 |
Сообщение № 13

Группа: Модераторы

Ранг: Местный житель

Сообщений: 16618


Репутация:

6465

±

Замечаний:
0% ±


2003; 2007; 2010; 2013 RUS

Прежде всего[vba]

Код

Dim r As Range, r1 As Range, r2 As Range

[/vba]
И r у Вас уже и так ячейка, ее не нужно засовывать вовнутрь Range
[vba]

Код

If Intersect(Target, r) Is Nothing Then Exit Sub

[/vba]


Скажи мне, кудесник, любимец ба’гов…
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995

 

Ответить

Мурад

Дата: Пятница, 05.10.2018, 11:15 |
Сообщение № 14

Группа: Проверенные

Ранг: Ветеран

Сообщений: 509


Репутация:

17

±

Замечаний:
0% ±


Excel 2007

Это уже похоже на единицу мне за незнание элементарного синтаксиса <_< Но так и есть)
А как разделить в коде выше базу данных для B2 (x) и базу данных для A22:A40 (y)?
Уверен, это многим пригодится.

 

Ответить

_Boroda_

Дата: Пятница, 05.10.2018, 11:20 |
Сообщение № 15

Группа: Модераторы

Ранг: Местный житель

Сообщений: 16618


Репутация:

6465

±

Замечаний:
0% ±


2003; 2007; 2010; 2013 RUS

как разделить в коде выше базу данных для B2 (x) и базу данных для A22:A40 (y)?

Для i складывайте найденное в s1, а для j в s2
А дальше в Листбокс подсовывайте нужный массив в зависимости от того, какой столбец выделен


Скажи мне, кудесник, любимец ба’гов…
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995

 

Ответить

Мурад

Дата: Пятница, 05.10.2018, 12:18 |
Сообщение № 16

Группа: Проверенные

Ранг: Ветеран

Сообщений: 509


Репутация:

17

±

Замечаний:
0% ±


Excel 2007

Ох, Александр, пришлось попотеть. Целый час ковырялся, искал в инете, пробовал. И получилось, наконец-то. Все работает, списки выводятся независимо:
[vba]

Код

Option Explicit
Option Compare Text
Dim x, y

Private Sub UserForm_Initialize()
    With Worksheets(«basa»)
        x = .Range(«C210″, .Cells(Rows.Count, 3).End(xlUp)).Value » адрес 1 базы
        y = .Range(«N2″, .Cells(Rows.Count, 14).End(xlUp)).Value » адрес 2 базы
    End With
End Sub

Private Sub TextBox1_Change()
Dim i As Long, j As Long, s1 As String, s2 As String, txt As String, lt As Long

txt = TextBox1.Text: lt = Len(txt)
If lt = 0 Then
    s1 = «» »’при отсутствии символов для поиска обнуляем ListBox
    s2 = «» »’при отсутствии символов для поиска обнуляем ListBox
Else
For i = 1 To UBound(x, 1) ‘поиск по любому вхождению
If InStr(x(i, 1), txt) Then s1 = s1 & «~» & x(i, 1)
Next i
For j = 1 To UBound(y, 1) ‘поиск по любому вхождению
If InStr(y(j, 1), txt) Then s2 = s2 & «~» & y(j, 1)
Next j
End If
If Not Intersect(ActiveCell, Range(«B2»)) Is Nothing Then
    Me.ListBox1.List = Split(Mid(s1, 2), «~»)
ElseIf Not Intersect(ActiveCell, Range(«A22:A40»)) Is Nothing Then
    Me.ListBox1.List = Split(Mid(s2, 2), «~»)
End If
End Sub

Private Sub ListBox1_Click()
    If ListBox1.ListIndex = -1 Then Exit Sub
    Me.Label4.Caption = Me.ListBox1.Value
End Sub

Private Sub CommandButton1_Click()
Dim o1 As Worksheet

    ActiveCell.Value = Me.Label4.Caption

        Unload Me
End Sub

[/vba]

 

Ответить

Содержание

  1. Как в офисе.
  2. Excel выпадающий список по первым буквам
  3. Как сделать чтобы в excel предлагал слово при вводе первых букв
  4. Excel выпадающий список по первым буквам
  5. Автозаполнение ячеек в Microsoft Excel
  6. Работа автозаполнения в Эксель
  7. Автозаполнение ячеек числами
  8. Инструмент «Заполнить»
  9. Автозаполнение формулами
  10. Автозаполнение другими значениями
  11. Добавление собственных списков
  12. При вводе первых букв подбирается слово в excel как сделать
  13. Процедура трансформации первой буквы в заглавную
  14. Способ 1: замена первой буквы в ячейке на заглавную
  15. Способ 2: каждое слово с большой буквы
  16. Помогла ли вам эта статья?
  17. 1. Переход указателя к нужной ячейке во время ввода данных.
  18. 2. Храните данные в таблицах данных:
  19. Несколько хитростей таблиц данных:
  20. Ввод данных с помощью форм
  21. 4. Проверка данных с помощью раскрывающегося списка:
  22. 5. Автозамены для ввода данных:
  23. Автозамена несколько хитростей:
  24. 6. Автозаполнения для автоматизации ввода данных:
  25. Автозаполнение несколько хитростей:
  26. 7. Аудиокоррекция (работает, к сожалению, только с английским текстом и числами)

Как в офисе.

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

Рассмотрим, как это работает. Предположим, вы вводите информацию о продукте в столбец. Один продукт называется «сахар-песок». Первый раз, когда вы вводите Сахар-песок в ячейку, Excel запоминает эту запись. Позже, когда вы начнете набирать слово Сахар в этом столбце, Excel распознает слово по нескольким первым буквам и завершит его ввод за вас. Просто нажмите Enter, и все готово.

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

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

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

Вы даже можете получить доступ к списку с клавиатуры: нажмите Shift+F10 для отображения контекстного меню, а затем нажмите клавишу К (горячую клавишу для команды Выбрать из раскрывающегося списка). Используйте кнопки со стрелками, чтобы сделать свой выбор, и нажмите Enter.

Имейте в виду, что функция автозавершения работает только в пределах смежных столбцов ячеек. Если у вас есть, например, пустая строка, автозавершение будет анализировать только содержимое ячеек под пустой строкой. Если функция автозавершения покажется вам отвлекающей, ее можно отключить в разделе Дополнительно диалогового окна Параметры Excel (выберите Файл ► Параметры). Флажок Автозавершение значений ячеек находится в области Параметры правки.

Источник

Excel выпадающий список по первым буквам

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

Рассмотрим, как это работает. Предположим, вы вводите информацию о продукте в столбец. Один продукт называется «сахар-песок». Первый раз, когда вы вводите Сахар-песок в ячейку, Excel запоминает эту запись. Позже, когда вы начнете набирать слово Сахар в этом столбце, Excel распознает слово по нескольким первым буквам и завершит его ввод за вас. Просто нажмите Enter, и все готово.

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

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

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

Вы даже можете получить доступ к списку с клавиатуры: нажмите Shift+F10 для отображения контекстного меню, а затем нажмите клавишу К (горячую клавишу для команды Выбрать из раскрывающегося списка). Используйте кнопки со стрелками, чтобы сделать свой выбор, и нажмите Enter.

Имейте в виду, что функция автозавершения работает только в пределах смежных столбцов ячеек. Если у вас есть, например, пустая строка, автозавершение будет анализировать только содержимое ячеек под пустой строкой. Если функция автозавершения покажется вам отвлекающей, ее можно отключить в разделе Дополнительно диалогового окна Параметры Excel (выберите Файл ► Параметры). Флажок Автозавершение значений ячеек находится в области Параметры правки.

Источник

Как сделать чтобы в excel предлагал слово при вводе первых букв

Excel выпадающий список по первым буквам

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

Рассмотрим, как это работает. Предположим, вы вводите информацию о продукте в столбец. Один продукт называется «сахар-песок». Первый раз, когда вы вводите Сахар-песок в ячейку, Excel запоминает эту запись. Позже, когда вы начнете набирать слово Сахар в этом столбце, Excel распознает слово по нескольким первым буквам и завершит его ввод за вас. Просто нажмите Enter, и все готово.

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

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

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

Вы даже можете получить доступ к списку с клавиатуры: нажмите Shift+F10 для отображения контекстного меню, а затем нажмите клавишу К (горячую клавишу для команды Выбрать из раскрывающегося списка). Используйте кнопки со стрелками, чтобы сделать свой выбор, и нажмите Enter.

Имейте в виду, что функция автозавершения работает только в пределах смежных столбцов ячеек. Если у вас есть, например, пустая строка, автозавершение будет анализировать только содержимое ячеек под пустой строкой. Если функция автозавершения покажется вам отвлекающей, ее можно отключить в разделе Дополнительно диалогового окна Параметры Excel (выберите Файл ► Параметры). Флажок Автозавершение значений ячеек находится в области Параметры правки.

Автозаполнение ячеек в Microsoft Excel

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

Работа автозаполнения в Эксель

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

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

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

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

    Активируем маркер заполнения и проводим им вниз на необходимое количество ячеек.

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

Но можно сделать ещё проще. Вам не нужно будет вызывать параметры автозаполнения. Для этого, когда тянете маркер заполнения вниз, то кроме зажатой левой кнопки мыши, нужно зажать ещё кнопку Ctrl на клавиатуре. После этого, заполнение ячеек числами по порядку происходит сразу же.

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

    Вносим в соседние ячейки два первых числа прогрессии.

Инструмент «Заполнить»

В программе Excel есть также отдельный инструмент, которые называется «Заполнить». Расположен он на ленте во вкладке «Главная» в блоке инструментов «Редактирование».

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

С помощью данного инструмента можно также заполнить ячейки прогрессией.

    Заносим число в ячейку и выделяем диапазон ячеек, который будет заполняться данными. Жмем на кнопку «Заполнить», а в появившемся списке выбираем пункт «Прогрессия».

  • выбрать расположение прогрессии (по столбцам или по строкам);
  • тип (геометрическая, арифметическая, даты, автозаполнение);
  • установить шаг (по умолчанию он равен 1);
  • установить предельное значение (необязательный параметр).

Кроме того, в отдельных случаях, устанавливаются единицы измерения.

Автозаполнение формулами

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

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

Автозаполнение другими значениями

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

Точно так же, можно произвести автозаполнение по дням недели (понедельник, вторник, среда…) или по месяцам (январь, февраль, март…).

Более того, если в тексте будет любая цифра, то Эксель распознает её. При использовании маркера заполнения произойдет копирование текста с изменением цифры по нарастающей. Например, если вы запишите в ячейку выражение «4 корпус», то в других ячейках, заполненных с помощью маркера заполнения, это название преобразится в «5 корпус», «6 корпус», «7 корпус» и т.д.

Добавление собственных списков

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

    Делаем переход во вкладку «Файл».

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

Мы рады, что смогли помочь Вам в решении проблемы.
Опишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.

При вводе первых букв подбирается слово в excel как сделать

Во многих случаях требуется, чтобы первая буква в ячейке таблицы была заглавной (прописной). Если пользователь изначально ошибочно везде вписал строчные буквы или скопировал в Excel данные из другого источника, в котором все слова начинались с маленькой буквы, то можно потратить очень большое количество сил и времени, чтобы привести внешний вид таблицы в желаемое состояние. Но, возможно у Эксель имеются специальные инструменты, с помощью которых можно эту процедуру автоматизировать? Действительно, у программы есть функция для изменения строчных букв на прописные. Давайте рассмотрим, как она работает.

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

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

Способ 1: замена первой буквы в ячейке на заглавную

Для решения поставленной задачи используется основная функция ЗАМЕНИТЬ, а также вложенные функции первого и второго порядка ПРОПИСН и ЛЕВСИМВ.

  • Функция ЗАМЕНИТЬ осуществляет замену одного символа или части строки на другие, согласно указанным аргументам;
  • ПРОПИСН – делает буквы прописными, то есть, заглавными, что нам и требуется;
  • ЛЕВСИМВ – возвращает указанное количество знаков конкретного текста в ячейке.

То есть, исходя из этого набора функций, с помощью ЛЕВСИМВ мы вернем в указанную ячейку первую букву, с помощью оператора ПРОПИСН сделаем её заглавной, а затем функцией ЗАМЕНИТЬ заменим строчную букву на прописную.

Общий шаблон данной операции будет выглядеть следующим образом:

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

    В любом свободном месте данного листа или на другом листе записываем следующую формулу:

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

Способ 2: каждое слово с большой буквы

Но бывают случаи, когда нужно сделать не только первое слово в ячейке, начинающимся с заглавной буквы, а вообще, каждое слово. Для этого тоже существует отдельная функция, причем, она намного проще предыдущей. Эта функция называется ПРОПНАЧ. Её синтаксис очень простой:

На нашем примере её применение будет выглядеть следующим образом.

  1. Выделяем свободную область листа. Кликаем по значку «Вставить функцию».
  2. В открывшемся Мастере функций ищем «ПРОПНАЧ». Найдя это наименование, выделяем его и жмем на кнопку «OK».
  3. Открывается окно аргументов. Ставим курсор в поле «Текст». Выделяем первую ячейку с фамилией в исходной таблице. После того, как её адрес попал в поле окна аргументов, жмем на кнопку «OK».

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

Потом нужно будет нажать кнопку Enter.

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

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

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

Мы рады, что смогли помочь Вам в решении проблемы.

Задайте свой вопрос в комментариях, подробно расписав суть проблемы. Наши специалисты постараются ответить максимально быстро.

Помогла ли вам эта статья?

Итак, полистал форум, особенно тему «Списки в Эксель»

Так и не нашлось в теме ни одного решения…..

В общем есть список, допустим имена. список постоянно пополняется новыми именами (вплоть до 65536 строк)

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

как сделать так, чтобы при наборе первых букв, появлялись все позиции с набранной последовательностью букв(например вводим Лю, и сразу появляется список с Любовь и Люся). И нам остается курсором выбрать из списка например Люся и оно появляется в ячейке. Если вдруг данного имени не окажется в списке то после нажатия кнопки «Ввод» это имя добавляется в конец списка.

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

1. Переход указателя к нужной ячейке во время ввода данных.

Excel автоматически перемещает указатель в следующую ячейку вниз, когда вы нажимаете Enter после ввода данных в ячейку. Это отвлекает, особенно, если вы хотите добавить данные в следующий столбец в строке, а не ниже. Чтобы изменить это поведение, используйте окно настроек Excel.

Выберите: Файл -> Параметры -> Дополнительно -> Параметры правки. Поставьте флажок «Переход к другой ячейке после нажатия клавиши ВВОД» и в соответствующем раскрывающемся списке выберите то направление, которое вам больше подходит в данный момент.

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

2. Храните данные в таблицах данных:

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

Для добавления таблицы данных Excel, выберите диапазон ячеек, содержащих данные, и нажмите на кнопку Таблица, находящуюся во вкладке «Вставка» на ленте или нажмите сочетание клавиш «CTRL + T».

Несколько хитростей таблиц данных:

  • Таблицы данных вставляются со своим собственным набором фильтров данных и параметром сортировки по умолчанию. Без таблиц данных Excel допускает только один набор фильтров на листе. Однако если рабочий лист имеет более одной таблицы, то каждая таблица может иметь свои собственные фильтры и параметры сортировки.
  • Формулы внутри таблицы данных могут использовать осмысленные имена заголовков вместо использования ссылок на ячейки. Кроме того, при добавлении или удалении строк не нужно беспокоиться об обновлении ссылок.
  • С помощью структурированных ссылок, вычисления внутри столбцов становятся очень простыми. Кроме того, Excel автоматически заполняет формулу внутри остальной части ячеек в столбце.
  • Таблицы данных могут быть отформатированы одним кликом мыши по пункту «Стили» во вкладке «Конструктор».
  • Повторяющиеся данные могут быть удалены из таблиц данных одним кликом мыши по пункту «Удалить дубликаты» во вкладке «Конструктор» на ленте.
  • Таблицы данных могут быть преобразованы обратно в диапазон одним кликом мыши по кнопке «Преобразовать в диапазон» во вкладке «Конструктор».
  • Таблицы данных могут быть экспортированы в список SharePoint так же одним кликом мыши по кнопке «Экспорт» во вкладке «Конструктор».
  • Таблицы данных можно суммировать, добавив итоговую строку, поставив флажок в чек-боксе «Строка итогов» во вкладке «Конструктор».

Ввод данных с помощью форм

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

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

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

Нажмите кнопку Добавить, и этот пункт должен добавиться в панель быстрого доступа после нажатия на кнопку ОК

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

В этом диалоговом окне есть следующие кнопки:

  • Добавить: Добавляет новую запись в таблицу данных
  • Удалить: Удаляет отображаемую запись из таблицы данных
  • Вернуть: Восстановление изменений, внесенных в таблицу данных
  • Назад / Далее: Находит записи, указанные в поле Критерии
  • Критерии: Получение данных, которые удовлетворяют критериям набора
  • Закрыть: Закрывает диалоговое окно

4. Проверка данных с помощью раскрывающегося списка:

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

  • Введите список элементов в диапазоне.
  • Выделите ячейку, которая будет содержать выпадающий список
  • Выберите вкладку Данные на ленте -> Работа с данными -> Проверка данных.
  • В диалоговом окне Проверка вводимых значений, перейдите на вкладку Настройки.
  • В раскрывающемся списке Тип данных, выберите Список.
  • В поле Источник укажите диапазон, содержащий нужные вам элементы.

Совет: Если в раскрывающемся списке мало данных, то вы можете ввести значения непосредственно в поле Источник, разделенные запятыми.

5. Автозамены для ввода данных:

Автозамена по умолчанию подразумевает такие полезные вещи, как написание предложений с заглавной буквы, или исправление случайного нажатия Caps Lock. Кроме того, можно настроить Автозамену создавая сокращения для часто используемых слов или фраз. Например, ниже я использую аббревиатуру: «гос» для «государство».

Для того чтобы добраться до Параметров автозамены, нажмите на Файл -> Параметры -> Правописание -> Параметры автозамены. В качестве альтернативы можно воспользоваться сочетанием клавиш: ALT + T + Т.

Автозамена несколько хитростей:

  • Чтобы добавить новую автозамену, введите заменяемый текст в поле Заменять и введите замещающий текст, который будет в поле На, а затем нажмите кнопку Добавить.
  • Чтобы удалить автозамену найдите ее в списке автозамен и нажмите кнопку Удалить.
  • Чтобы отменить сработавшую автозамену, нажмите CTRL + Z при вводе информации в ячейку.
  • Для совместного использования автозамен с вашими друзьями или коллегами, просто найдите файл *.acl на своем компьютере и скопируйте его на компьютер друга или коллеги.
  • Excel преобразует адрес электронной почты или записи веб URL в гиперссылки с использованием автозамены. Чтобы изменить автоматическое преобразование текста в гиперссылку, просто нажмите кнопку Отменить (или нажмите Ctrl + Z) после того, как вы вводите текст. Гиперссылка исчезнет, но текст, который вы ввели останется неизменным. Чтобы полностью отключить эту функцию, снова перейдите в раздел Параметры автозамены -> Нажмите на вкладку: Автоформат при вводе -> уберите флажок: «адреса Интернета и сетевые пути гиперссылками».

6. Автозаполнения для автоматизации ввода данных:

Функция автозаполнения в Excel позволяет легко вводить один и тот же текст в несколько ячеек. Просто введите первые несколько букв текста в ячейку и Excel автоматически завершит запись, основываясь на других записях, которые вы уже сделали в этом же столбце. Это помогает не только уменьшить процесс набора текста, но и согласует введение данных.

Автозаполнение несколько хитростей:

  • Автозаполнение работает только на смежной ячейке, поэтому не оставляйте пустых строк, чтобы в полной мере использовать автозаполнение
  • Автозаполнение изменяет регистр букв автоматически
  • Если столбец содержит несколько вхождений записи, которые соответствуют первым нескольким вводимых вами символам, то автозаполнение не сработает пока ваша запись не станет соответствовать хотя бы одному из них полностью.
  • Вы можете получить доступ к автозаполнению, кликнув правой кнопкой мыши по ячейке и выбрав пункт «Выбрать из раскрывающегося списка». Также вы можете получить доступ к этому же раскрывающемуся списку с помощью горячей клавиши: Shift + F10.

7. Аудиокоррекция (работает, к сожалению, только с английским текстом и числами)

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

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

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

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

Функция LOW переводит весь текст в нижний регистр, функция UPPER переводит весь текст в верхний регистр, функция PROPER переводит в верхний регистр первую букву каждого слова в тексте.

Поэтому для решения задачи будем использовать сочетание нескольких функций в изящной формуле, которая работает и с первой буквой, делая ее заглавной, и с остатком текста, переводя его в нижний регистр:
=UPPER(LEFT(A1))&RIGHT(LOWER(A1);LEN(A1)-1)

То же на русском языке:

=ПРОПИСН(ЛЕВСИМВ(А1))&ПРАВСИМВ(СТРОЧН(А1);ДЛСТР(А1)-1)
За варианты, помощь и идеи спасибо форуму сайта www.planetaexcel.ru и отдельно господину Казанскому.

В категории Правописание представлены только две группы элементов управления: Параметры автозамены и При исправлении орфографии в программах Microsoft Office.

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

Между тем все дело в том, как настроены в Excel параметры автозамены. Стоит изменить параметры — и программа начинает вести себя вполне благопристойно. В разделе Параметры автозамены рядом с надписью Настройка исправления и форматирования текста при вводе располагается единственная кнопка, которая выводит на экран окно настройки параметров автозамены и автоформата при вводе.

  • Показать кнопки возможностей автозамены — в этом режиме после выполнения автозамены появляется кнопка, позволяющая отменить выполненное действие или подобрать другое слово для замены из
    списка.
  • Исправлять две прописные буквы в начале слова — этот режим позволяет исправлять достаточно часто встречающуюся ошибку набора, когда вы вовремя не успеваете отпустить клавишу Shift, и в результате у вас в имени или названии появляются две прописные буквы вместо одной, первой. В этом режиме такая ошибка будет исправляться автоматически прямо во время ввода. Как только в конце слова, в котором появилась подобная ошибка, вы нажмете клавишу пробела, ошибка будет исправлена.
  • Делать первые буквы предложений прописными — этот режим очень полезен для тех, кто печатает быстро и вслепую. Он позволяет в начале каждого предложения не нажимать клавишу Shift. Обнаружив в тексте точку, Excel автоматически сделает следующую букву прописной. Если же вы используете в тексте много сокращений, то вам нужно либо добавить все сокращения в список исключений (см. далее), либо сбросить данный флажок, поскольку после каждого сокращения, оканчивающегося точкой, у вас будет появляться прописная буква в середине предложения.
  • Названия дней с прописной буквы — этот режим тоже может сильно раздражать… Вы пишете «окружающая среда», а вам услужливо переделывают предложение в «окружающая Среда».
  • Устранять последствия случайного нажатия CapsLock — этот режим призван учитывать то, что люди часто, пытаясь нажать клавишу Shift, промахиваются и нажимают соседнюю клавишу CapsLock. В результате первая буква слова становится строчной, а остальные — прописными. Для автоматического исправления подобных ошибок установите этот флажок.
  • Заменять при вводе — вы можете сформировать свой список автозамены, а также отредактировать существующий. Это очень удобно, если вам приходится часто вводить неудобопечатаемые длинные словосочетания. Вы можете, например, вместо слов «коллоидный слабощелочной раствор» задать последовательность автозамены «кср» и в дальнейшем вводить эту последовательность, которая автоматически будет заменяться нужным вам словосочетанием.

Многочисленные флажки, расположенные в разделе При исправлении орфографии в программах Microsoft Office, предназначены для настройки системы проверки правописания.

Источник

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


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


Андрей, спасибо за ответ.  :) Список конечно вещь хорошая, но он не дает возможности автоматически завершать слово или предложение. Можно было бы и списком, но у него маленькое поле (ширина колонки маленькая) в котором не видно все предложение. Автозавершение показывает все набранное ранее в ячейке.
Объясню свою задачу: есть список людей, которые постоянно участвуют в мероприятиях (есть и новые, которых не было в прошлый раз) и при регистрации, вводя фамилию, автозавершение мне помогает не набирать лишний раз данные человека и помогает видеть, что человек был в прошлый раз. Может быть мою задачу можно решить и каким либо другим способом. Access например с помощью запросов к базе данных это хорошо делает. Можно ли в Excel  начиная набирать фамилию видеть, что человек был в прошлый раз, и если да, занести его данные в эту или другую ячейку. Буду очень рад любым  возможным идеям решения этой задачи или примерам. Заранее спасибо.


Цитата: Oleg13 от 22.03.2009, 20:10
Может быть мою задачу можно решить и каким либо другим способом.

Автозавершение есть в эл.упр. «Поле со списком». Во вложении продемонстрированы фокусы с этим элементом.

Знания недостаточно, необходимо применение. Желания недостаточно, необходимо действие. (с) Брюс Ли


Шпец Докапыч, Ваше мастерство не знает границ!!! Спасибо огромедное. То, что хотелось и в лучшем виде!!!  :)

Цитата: Шпец Докапыч от 23.03.2009, 03:27
«Поле со списком». Во вложении продемонстрированы фокусы с этим элементом.

Как на примере легко учиться!!!  :D
Интересно, а если нам нужно поедать не блинчики, а например мороженое, что нужно изменить в коде???  ;D


Уважаемый Шпец Докапыч!!!
Помогите, пожалуйста, разобраться с Вашим примером. Хотел приладить его к своим нуждам, но не тут то было. Самостоятельно не разобраться, долго пытался.  :o  ???
Если вписать код в новую книгу, то останавливается на записи
Private Sub ComboBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
После попытки добавить поле со списком останавливается на
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  With Me.ComboBox1

Я то по началу подумал, что поле со списком действительно чудесным образом появляется в диапазоне D8:D20.  ::) Видимо есть какой то секрет, раскройте его, пожалуйста!!!
(Имя «ФИО» как у Вас присвоил.)


Цитата: GWolf от 23.04.2009, 13:21
Ваша задача с комментированным нашим кодом (я имел ввиду коментарии: что это такое и почему оно тут стоит) — вот лучший учебник и школа.
Может я слишком самонадеян?! ;D

;D
Подскажите пожалуйста от куда в примере уважаемого Гуру Шпеца Докапыча
https://forum.msexcel.ru/microsoft_excel/avtozavershenie_iz_opredelennogo_diapazona-t1538.0.html;msg8604#msg8604
появляется поле со списком?
Самого Гуру два дня нет, а решить вопрос хочется  :).

Я думаю, что за это отвечает эта программка, но не уверен:
Private Sub ComboBox1_GotFocus() ‘фокусируясь, перемещаемся и заполняемся
  With ActiveCell
    Me.ComboBox1.Text = .Value
    Me.ComboBox1.Top = Range(«D1:D» & .Row — 1).Height + 0.75  — цифры влияет на местоположения поля относительно ячейки ввода (проверено опытным путем  :) ).
  End With
End Sub

Прошу не ругатся, что залез в чужую тему, но заявка ведь была сделана  ;).

Цитата: GWolf от 23.04.2009, 13:21
Ваша задача с комментированным нашим кодом (я имел ввиду коментарии: что это такое и почему оно тут стоит) — вот лучший учебник и школа.
Может я слишком самонадеян?! ;D

VBA мне тоже очень хочется научиться!  :)


ЦитироватьСамого Гуру два дня нет, а решить вопрос хочется  :).

Уважаемый Шпец действительно не появляется. И это грустно …

ЦитироватьЯ думаю, что за это отвечает эта программка, но не уверен:
Private Sub ComboBox1_GotFocus() ‘фокусируясь, перемещаемся и заполняемся
  With ActiveCell
    Me.ComboBox1.Text = .Value
    Me.ComboBox1.Top = Range(«D1:D» & .Row — 1).Height + 0.75  — цифры влияет на местоположения поля относительно ячейки ввода (проверено опытным путем  :) ).
  End With
End Sub

Совершенно верно

ЦитироватьПрошу не ругатся, что залез в чужую тему, но заявка ведь была сделана  ;).

Ругатся никто и не собирался. Мы приветствуем тебя в полку продвинутых Юзеров!!! И милости просим! Ибо и я сам, всего лишь пользователь!

ЦитироватьVBA мне тоже очень хочется научиться!  :)

Ну та к в чем дело? — От тебя лишь требуется описание задач.

Путей к вершине — множество. Этот один из многих!


Цитата: Oleg13 от 23.04.2009, 23:08
Прошу не ругатся, что залез в чужую тему, но заявка ведь была сделана  ;).

Ругаться не в моих правилах, просто перетащу сообщения на место.

ЦитироватьПодскажите, пожалуйста, откуда в примере появляется поле со списком?
Я думаю, что за это отвечает эта программка, но не уверен:…

Итак, чтобы всё это работало нужно сделать следующие шаги:
1) Присвоить списку имя «ФИО» в лучших традициях динамики (не поленитесь заглянуть во Вставка -> Имя –> Присвоить). ;)
2) Разместить на листе Поле со списком (ActiveX) в том столбце, где нужно. Указать ListFillRange: ФИО. А чтобы не маячило без надобности, выставить свойство Visible в False.
3) Тогда размещённый в модуле листа код будет работать, если имя поля («ComboBox1») совпадает с тем, которое Вы создали. Если это первое размещённое на листе поле, то так и будет.

Знания недостаточно, необходимо применение. Желания недостаточно, необходимо действие. (с) Брюс Ли


Цитата: Шпец Докапыч от 24.04.2009, 20:43
Итак, чтобы всё это работало нужно сделать следующие шаги:
2) Разместить на листе Поле со списком (ActiveX) в том столбце, где нужно. Указать ListFillRange: ФИО. А чтобы не маячило без надобности, выставить свойство Visible в False.

Вот этого ListFillRange: ФИО мне и не хватало, только вот не знаю как посмотреть свойства полей в Вашем примере   :).
СПАСИБО!!! Мне удалось воспроизвести Ваш пример в новой книге и разобраться (громко сказано  ;) ) как работает код.
А куда интересно исчезают «свойства» поля со списком по ПКМ и можно ли их вернуть, хотя бы для того, чтобы изменить размер поля? Побывал стереть код, не помогло.
Excel и VBA в нем начал изучать только попав к Вам на форум и очень порадовался возможности учиться и общаться с грамотными и отзывчивыми людьми «живущими» здесь.


Цитата: Oleg13 от 25.04.2009, 00:04
А куда интересно исчезают «свойства» поля со списком по ПКМ и можно ли их вернуть, хотя бы для того, чтобы изменить размер поля? Побывал стереть код, не помогло.

Какое, например, «свойство» исчезает? Или Вы про окно свойств?

Знания недостаточно, необходимо применение. Желания недостаточно, необходимо действие. (с) Брюс Ли


Цитата: Шпец Докапыч от 25.04.2009, 00:16
Какое, например, «свойство» исчезает? Или Вы про окно свойств?

При создании нового поля по ПКМ можно вызвать окно свойств и изменять какие либо свойства.
Дальше окно свойств не исчезает или его можно вызвать на каком либо объекте в другой книге если я его раньше закрыл.
А не получается посмотреть свойства объекта «поле со списком», которое «прыгает» в Вашем примере, в окне свойств.

Я в коде показал это поле: Visible Then .Visible = True и стер код. Поле то в листе появилось, но выделить это поле как объект, а потом ПКМ — свойства не получается.
Всего лишь хотел сделать поле пошире.  :)

Наверное можно изменить ширину и в VBA, но хотелось в окне свойств.


Цитата: Oleg13 от 25.04.2009, 00:56

Цитата: Шпец Докапыч от 25.04.2009, 00:16
Какое, например, «свойство» исчезает? Или Вы про окно свойств?

При создании нового поля по ПКМ можно вызвать окно свойств и изменять какие либо свойства.

Наверное можно изменить ширину и в VBA, но хотелось в окне свойств.

Вы при создании определили ширину, а потом что мешает? Так же мышкой и растаскивается.  ???

Знания недостаточно, необходимо применение. Желания недостаточно, необходимо действие. (с) Брюс Ли


При создании определил. Записал код. Оказалось маловата :). А вот ширее уже сделать не могу!!!!!!!
Это поле уже не выделяется.
Это конечно совсем не проблема, просто хотел узнать, можно что либо сделать, на будущее.


Прошу прощенья, разобрался  ::)!!!!!  Нужно было нажать два раза на кнопку поля со списком на панеле инструментов «Элементы управления» и появилась возможность выделить поле со списком. Еще раз спасибо!!! И за терпение!!!


Добрый день!

подскажите как можно реализовать следующую затею:

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


Во вложении пример со списками, а автозаполнение попробуйте «прикрутить» сами прочитав данную тему ;)

Ничто не обходится нам так дешево и не ценится так дорого, как вежливость…  Мигель Сервантес де Сааведра



Цитата: boa от 16.06.2009, 13:05
Во вложении пример со списками

И еще очень интересный (для меня) момент…
Вопрос к boa: а как Вы «спрятали» строки и столбцы далее 14-ти на 1-м листе вложенного файла примера?


Знания недостаточно, необходимо применение. Желания недостаточно, необходимо действие. (с) Брюс Ли


Шпецу — очередной респект!
Спасибо за вкусный рецепт!  ;)
«Зацепила» фишку себе…


Виктория, неужели Вы не скачали  этот файл там ведь много полезной инфы  :o
Касаемо скрытия/отображения столбцов/строк смотрите в строки 49-50.
Сам я стараюсь пользоваться больше Клавой т.к. ПКМ «отдыхает» по времени выполнения задачи т.е. достижения цели :)

Ничто не обходится нам так дешево и не ценится так дорого, как вежливость…  Мигель Сервантес де Сааведра


boa, спасибо за заботу! Уже скачала!
Сама тоже люблю клавиатуру, т.к. часто работать приходится с ноутом на коленях…
Но вот не всегда сообразишь сразу, КАК что-то сделать.
Спросить быстрее!   ;) по времени достижения цели…


При работе в электронных таблицах Excel бывает нужно постоянно вводить одни и те же значения (из списка). Стандартными списками являются последовательности дней недели или месяцев, но порой хочется создать свой список автозаполнения. Например, список класса, возраст учеников, размеры одежды или любых других данных, к которым постоянно приходится обращаться. Чтобы не вводить каждый раз эти значения вручную, можно создать свой список автозаполнения, а затем использовать его — в Excel есть такая возможность.

Для создания своего списка автозаполнения выполните следующие действия.

Если используется Excel версии 2003, то нужно выбрать меню СервисПараметрыСпискиНовый список — вводим элементы списка через клавишу Enter — выбираем ДобавитьОК.

Если используется Excel версии 2007 (2010), то нужно выбрать Файл —  ПараметрыДополнительно — в Общие Изменить спискиНовый список — вводим элементы списка через клавишу Enter — выбираем ДобавитьОК.

После создания своего списка автозаполнения достаточно в нужную ячейку таблицы ввести первое значение из списка (в примере Иванов Антон) и протянуть маркер заполнения ячейки в нужном направлении. Смотрите подробнее Как пользоваться списками автозаполнения и вводить стандартные последовательности.

Что делать, если нет маркера автозаполнения?

Если маркер (курсор) заполнения отсутствует, то нужно настроить Excel так, чтобы маркер отображался.

Для этого, если Вы используете версию 2003, выбираем СервисПараметры — на вкладке Параметры устанавливаем галочку Перетаскивание ячеек.

Если Вы используете версию 2007 или 2010, Файл (кнопка Офис) — ПараметрыДополнительноРазрешить маркеры заполнения и перетаскивания ячеекОК.

Ввод данных экспресс-методом

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

Используя клавишу Ctrl, выделим ячейки, в которые нужно ввести одинаковые значения.

В строку формул введем нужное значение и нажмем на клавиатуре сочетание клавиш Ctrl+Enter. Все выделенные ячейки автоматически заполнятся нужными данными.

Кратко об авторе:

Шамарина Татьяна НиколаевнаШамарина Татьяна Николаевна — учитель физики, информатики и ИКТ, МКОУ «СОШ», с. Саволенка Юхновского района Калужской области. Автор и преподаватель дистанционных курсов по основам компьютерной грамотности, офисным программам. Автор статей, видеоуроков и разработок.

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


Порядок вывода комментариев:

Skip to content

5 способов создать выпадающий список в ячейке Excel

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

Зачем нужен выпадающий список?

Часто случается так, что в какой-то из колонок вашей таблицы нужно вводить одинаковые повторяющиеся значения. К примеру, фамилии сотрудников, названия товаров или делать выбор в ячейке Excel вида «да – нет». Что может случиться? Конечно, в первую очередь будут ошибки при вводе. Человеческий фактор ведь никто не отменял. Чем нам сие грозит? К примеру, когда мы решим подсчитать, сколько заказов выполнил каждый из менеджеров, то окажется, что фамилий больше, чем сотрудников. Далее придётся искать ошибки, исправлять их и вновь повторять расчет.

Ну и конечно же, все время руками вводить одни и те же слова – просто бессмысленная работа и потеря времени. Вот здесь-то выпадающие списки нам и пригодятся. При нажатии выпадает перечень заранее определённых значений, из которых просто необходимо указать какое-то одно.

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

1 — Самый быстрый способ создать выпадающий список.

Как проще всего добавить выпадающий список в таблицу Excel? Всего один щелчок правой кнопкой мыши по пустой клетке под столбцом с данными, затем команда контекстного меню «Выберите из раскрывающегося списка» (Choose from drop-down list). А можно просто стать в нужное место и нажать сочетание клавиш Alt+стрелка вниз. Появится отсортированный перечень уникальных ранее введенных значений.
Способ не работает, если нашу ячейку и столбец с записями отделяет хотя бы одна пустая строка или вы хотите ввести то, что еще не вводилось выше. На нашем примере это хорошо видно.

простой способ создания

2 — Используем меню.

Давайте рассмотрим небольшой пример, в котором нам нужно постоянно вводить в таблицу одни и те же наименования товаров. Выпишите в столбик данные, которые мы будем использовать (например, названия товаров). В нашем примере — в диапазон G2:G7.

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

Далее в главном меню выберите на вкладке Данные – Проверка… (Data – Validation). Затем укажите пункт Тип данных (Allow) и выберите вариант Список (List). Поставьте курсор в поле Источник (Source) и впишите в него адреса с эталонными значениями элементов — в нашем случае G2:G7. Рекомендуется также использовать здесь абсолютные ссылки (для их установки нажмите клавишу F4).

заполнить через меню

Бонусом здесь идет возможность задать подсказку и сообщение об ошибке, если автоматически вставленное значение вы захотите изменить вручную. Для этого существуют вкладки Подсказка по вводу (Input Message) и Сообщение об ошибке (Error Alert).

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

создаем из именованного диапазона списки в excel

К примеру, диапазону I2:I13, содержащему названия месяцев, можно присвоить наименование «месяцы». Затем имя можно ввести в поле «Источник».

использование именованного диапазона в выпадающем списке

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

Но вы можете и не использовать диапазоны или ссылки, а просто определить возможные варианты прямо в поле «Источник». К примеру, чтобы реализовать в таблице Excel простейший выбор «да – нет», вы можете вписать туда –

Да;Нет

Используйте для разделения значений точку с запятой, запятую, либо другой символ, установленный у вас в качестве разделителя элементов. (Смотрите Панель управления — Часы и регион — Форматы — Дополнительно — Числа.)

3 — Создаем элемент управления.

Вставим на лист новый объект – элемент управления «Поле со списком» с последующей привязкой его к данным на листе Excel. Делаем:

  1. Откройте вкладку Разработчик (Developer). Если её не видно, то в Excel 2007 нужно нажать кнопку Офис – Параметры – флажок Отображать вкладку Разработчик на ленте (Office Button – Options – Show Developer Tab in the Ribbon) или в версии 2010–2013 и выше щелкните правой кнопкой мыши по ленте, выберите команду Настройка ленты (Customize Ribbon) и включите отображение вкладки Разработчик (Developer) с помощью флажка.
  2. Найдите нужный значок среди элементов управления (см.рисунок ниже).

используем элемент управления

Вставив элемент управления на рабочий лист, щелкните по нему правой кнопкой мышки и выберите в появившемся меню пункт «Формат объекта». Далее указываем диапазон ячеек, в котором записаны допустимые значения для ввода. В поле «Связь с ячейкой» укажем, куда именно поместить результат. Важно учитывать, что этим результатом будет не само значение из указанного нами диапазона, а только его порядковый номер.

получаем в ячейку номер позиции в списке

Но нам ведь нужен не этот номер, а соответствующее ему слово. Используем функцию ИНДЕКС (INDEX в английском варианте). Она позволяет найти в списке значений одно из них соответственно его порядковому номеру. В качестве аргументов ИНДЕКС укажите диапазон ячеек (F5:F11) и адрес с полученным порядковым номером (F2).

Формулу в F3 запишем, как показано на рисунке:

=ИНДЕКС(F5:F11;F2)

Как и в предыдущем способе, здесь возможны ссылки на другие листы, на именованные диапазоны.

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

4 — Элемент ActiveX

Действуем аналогично предыдущему способу, но выбираем иконку чуть ниже — из раздела «Элементы ActiveX».

элемент ActiveX в раскрывающемся списке

Определяем перечень допустимых значений (1). Обратите внимание, что здесь для показа можно выбирать сразу несколько колонок. Затем выбираем адрес, по которому будет вставлена нужная позиция из перечня (2).Указываем количество столбцов, которые будут использованы как исходные данные (3), и номер столбца, из которого будет происходить выбор для вставки на лист (4). Если укажете номер столбца 2, то в А5 будет вставлена не фамилия, а должность. Можно также указать количество строк, которое будет выведено в перечне. По умолчанию — 8. Остальные можно прокручивать мышкой (5).

Этот способ сложнее предыдущего, но зато возвращает сразу значение, а не его номер. Поэтому необходимость в промежуточной ячейке и обработке ее при помощи ИНДЕКС — отпадает. Думаю, таким списком пользоваться гораздо удобнее.

5 — Выпадающий список в Excel с автозаполнением

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

Вот как автозаполнение может выглядеть на простом примере:

автозаполнение

Способ 1. Укажите заведомо большой источник значений для списка.

Самая простая и несложная хитрость. В начале действуем по обычному алгоритму действий: в меню выбираем на вкладке Данные – Проверка … (Data – Validation). Из перечня Тип данных (Allow) выберите вариант Список (List). Поставьте курсор в поле Источник (Source).  Зарезервируем в списке набор с большим запасом: например, до 55-й строки, хотя занято у нас только 7. Обязательно не забудьте поставить галочку в чекбоксе «Игнорировать пустые …». Тогда ваш «резерв» из пустых значений не будет вам мешать.

резервируем данные для списков

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

Конечно, в качестве источника можно указать и весь столбец:

=$A:$A

Но обработка такого большого количества ячеек может несколько замедлить вычисления. Особенно в больших таблицах Excel.

Способ 2. Применяем именованный диапазон.

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

именованный диапазон в раскрывающихся списках

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

Выделим имеющийся в нашем распоряжении перечень имен A2:A10. Затем присвоим ему название, заполнив поле «Имя», находящееся левее строки формул.

Так вы присвоите какое-то имя этому диапазону Excel.

Создадим в С2 перечень значений. В качестве источника для него укажем выражение

=имя

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

Перечень ещё можно отсортировать, чтобы удобно было пользоваться.

расширяем именованный диапазон

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

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

Способ 3. Выпадающий список на основе «умной» таблицы Excel.

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

Любой набор значений в таблице может быть таким образом преобразован. Например, A1:A8. Выделите их мышкой. Затем преобразуйте в таблицу, используя меню Главная — Форматировать как таблицу (Home — Format as Table). Укажите, что в первой строке у вас находится название столбца. Это будет «шапка» вашей таблицы. Внешний вид может быть любым: это не более чем внешнее оформление и ни на что больше оно не влияет.

Как уже было сказано выше, «умная» таблица хороша для нас тем, что динамически меняет свои размеры при добавлении в нее информации. Если в строку ниже нее вписать что-либо, то она тут же присоединит к себе её. Таким образом, новые значения можно просто дописывать. К примеру, впишите в A9 слово «кокос», и таблица тут же расширится до 9 строк.

Следовательно, автоматическое обновление набора используемой информации в списке можно организовать, если использовать содержимое какого-либо столбца «умной» таблицы.

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

=Таблица1[Столбец1]

и не считает его формулой. Хотя в обычных выражениях на листе вашей рабочей книги это вполне будет работать. Эта конструкция обозначает ссылку на первый столбец. Но в поле «Источник» она почему-то игнорируется.

Чтобы использовать «умную таблицу» как источник, нам придется пойти на небольшую хитрость и воспользоваться функцией ДВССЫЛ (INDIRECT в английском варианте). Эта функция преобразует текстовую переменную в обычную ссылку.

добавляем в ячейку автоматически пополняемые списки

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

=ДВССЫЛ(«Таблица5[Продукт]»)

Таблица5 — имя, автоматически присвоенное «умной таблице». У вас оно может быть другим. На вкладке меню Конструктор (Design) можно изменить стандартное имя на свое (но без пробелов!). По нему мы сможем потом адресоваться к нашей таблице на любом листе книги.

«Продукт» — название нашего первого и единственного столбца, присвоено по его заголовку.

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

Теперь если в A9 вы допишете еще один фрукт (например, кокос), то он тут же автоматически появится и в нашем перечне. Аналогично будет, если мы что-то удалим. Задача автоматического увеличения выпадающего списка значений решена.

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

А вот еще полезная для вас информация:

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

Понравилась статья? Поделить с друзьями:

А вот еще интересные статьи:

  • Автозавершение значений ячеек в excel в одну
  • Автозавершение в excel 2016
  • Автозавершение в excel 2007
  • Автодоверенность бланк скачать word
  • Автовычисление в excel что это такое

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии