Макрос поиск подстановки excel

 

Roman RRR

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

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

Помогите написать макрос (интересует именно макрос, так как ф-ции типа ИНДЕКС, ПОИСКПОЗ и пр. очень тормозят работу  будущего рабочего файла из за большого к-ва строк для поиска) для поиска и подстановки данных из другой книги:

Принцип следующий:
В файле Task в ячейке B5 ищется текст (Значение 1) из колонки Н файла Data.
Если находит такой текст, тогда в диапазон D5:I5 копируются данные из соответствующего диапазона В:G файла Data. Поиск для ячейки B5 прекращается и продолжается аналогично для В6.
Если не находит, тогда ищется Значение 2 и так далее.

Примеры прилагаю:
В файле Task в закладке Task указан диапазон, в котором нужно искать данные.
В файле Data в закладке Data — в столбцах H-L значения, которые нужно искать, а в столбцах B-G значения, которые нужно подставлять.
В файле Task в закладке Result — ожидаемый результат.

Описание получилось немного сумбурное, но по примерам должно быть понятным.
Заранее благодарю

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

  • Task.xlsx (9.53 КБ)
  • Data.xlsx (9.47 КБ)

 

Leanna

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

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

#2

10.01.2015 01:42:10

Код
Option Compare Text
Sub поиск_шин()
Set wbData = Workbooks("Data.xlsx")
Set wbTask = Workbooks("Task.xlsm")
Set shData = wbData.Sheets(1)
Set shTask = wbTask.Sheets("Result")
Set rngData = Intersect(shData.Columns("H:L"), shData.UsedRange)

Set dic = CreateObject("Scripting.Dictionary")
dic.CompareMode = 1
For Each cell In rngData
    If cell.Value <> "" Then
        rr = cell.Row
        dic.Item(cell.Value) = shData.Range("B" & rr, "G" & rr)
    End If
Next

For Each cell In shTask.[B5:B15]
For Each dKey In dic.keys
    If cell.Value Like "*" & dKey & "*" Then
    cell.Offset(0, 2).Resize(1, 6) = dic.Item(dKey)
    Exit For
    End If
Next
Next

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

  • Task.xlsm (23.66 КБ)

Работать надо не 12 часов, а головой.

 

Михаил С.

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

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

#3

10.01.2015 04:51:24

Раз уж написал, то и свой вариант выложу.
в принципе, такой же, как уLeanna, но есть отличия.

CODE

Требования: оба файла должны быть в одной папке; других файлов Excel в ней быть не должно; имена файлов и папки не принципиальны; Расположение таблицы в Data — на первом листе; место на листе — не принципиально, но других данных быть не должно; список в файле Task должен начинаться с В5.

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

  • Roman RRR.rar (30.55 КБ)

 

Roman RRR

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

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

Спасибо

Leanna

и

Михаил С.

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

Михаил С.

, в вашем результате, напротив     185/65 R14 90R Nokian Nordman RS XL найдено значение Nokian Nordman. А нужно Nokian Nordman RS т.к. здесь еще более детальное совпадение… есть ли возможность это учесть?  

 

Проверьте

Изменено: Михаил С.10.01.2015 20:00:04
(Чуть подредактировал макрос. )

 

Leanna

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

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

#6

10.01.2015 15:44:43

Михаил, подскажите пожалуйста в чем отгадка

Код
With Dat
ad1 = .Cells(1, 6).Address(0, 0) 'G2
ad2 = .Cells(.Rows.Count - 1, .Columns.Count - 1).Address(0, 0) 'K20
ad3 = .Range(.Cells(1, 6), .Cells(.Rows.Count - 1, .Columns.Count - 1)).Address(0, 0) 'H3:L21
Arr = .Range(.Cells(1, 6), .Cells(.Rows.Count - 1, .Columns.Count - 1)).Value
End With

по отдельности G2 и K20 а в Range H3:L21?

Работать надо не 12 часов, а головой.

 

Roman RRR

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

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

#7

10.01.2015 15:55:36

Цитата
Михаил С. пишет: Проверьте

Теперь работает. Благодарю

 

Leanna, если честно — я сам не знаю, почему так.  
По идее, .Range.Address должен дать адрес относительно Dat, а дает адрес листа…

 

The_Prist

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

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

Профессиональная разработка приложений для MS Office

Файл не смотрел, но если Dat — это диапазон, то точку перед Range надо убрать….

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы…

 

Leanna

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

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

#10

10.01.2015 16:23:11

так выдает то же самое G2, K20, H3:L21

Код
ad1 = Dat.Cells(1, 6).Address(0, 0) 'G2
ad2 = Dat.Cells(Dat.Rows.Count - 1, Dat.Columns.Count - 1).Address(0, 0) 'K20
ad3 = Dat.Range(Dat.Cells(1, 6), Dat.Cells(Dat.Rows.Count - 1, Dat.Columns.Count - 1)).Address(0, 0) 'H3:L21

Да, без точки перед Range выдает G2:K20. Спасибо!

Работать надо не 12 часов, а головой.

 

Roman RRR

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

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

Недавно заметил, что пробелы не учитываются в поиске. Например, мне нужно найти значение » ААА «, но это не то самое, что просто «ААА».  

 

Юрий М

Модератор

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

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

 

Roman RRR

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

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

Искомый текст из колонок Н-L файла Data. Этот тект почемуто нечувствительный к пробелам

 

Юрий М

Модератор

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

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

Я не про это: КАК поиск осуществляете?

 

Roman RRR

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

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

Макросом, который написан

Михаил С.

Изменено: Roman RRR05.02.2015 01:06:17

 

Елена Ион

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

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

Добрый день! Помогите пожалуйста в написании макроса.
Нужно, чтобы в файле Акт в ячейке N3 когда написали ИНН организации, то после поиска этого ИНН в файле Org в столбце A, после совпадения, из столбца B копировалась бы соответствующая организация и вставлялась в файл Акт в ячейку C4.

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

  • Org.xlsx (15.48 КБ)
  • АКТ.xlsm (32.94 КБ)

 

New

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

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

#17

28.10.2021 14:25:42

Елена Ион,
1. вам лучше было создать свою собственную тему с вашим вопросом
2. файл «Org.xlsx» — будет открыт или всегда закрыт?
3. если файл «Org.xlsx» будет всегда закрыт, то он где будет лежать? в той же папке, что и АКТ.xlms или в другой какой-то папке ?
4. Макрос должен срабатывать сразу по введению данных в ячейку N3 ? Или оператор может запустить макрос руками через Alt+F8 для подставновки организации ?

Вот макрос — файл Org.xlsx закрытый, лежит в той же папке, что и Акт.xlsm, запуск макроса через Alt+F8

Код
Sub Вставить_Название_по_ИНН()
    Dim SourceWB As Workbook, FSO As Object, sSourceFileName As String, sPathToSourceFile As String
    Dim Rng As Range, NameOfOrganization As String, ACT_Num As String

    sSourceFileName = "Org.xlsx" 'название файла источника (должен лежать в той же папке, что и Акт)
    
    ACT_Num = ThisWorkbook.Worksheets("АКТ").Range("N3") 'запоминаем номер акта из N3
    
    sPathToSourceFile = ThisWorkbook.Path & Application.PathSeparator & sSourceFileName
    Set FSO = CreateObject("Scripting.FileSystemObject")
    If Not FSO.FileExists(sPathToSourceFile) Then
        MsgBox "Файл '" & sSourceFileName & "' не найден!", vbExclamation, "Внимание"
        Exit Sub
    End If
    Set FSO = Nothing
    Application.ScreenUpdating = False
    Set SourceWB = Workbooks.Open(sPathToSourceFile, UpdateLinks:=False, ReadOnly:=True)
    With SourceWB.Worksheets(1)
        Set Rng = .Columns(1).Find(ACT_Num, , xlFormulas, xlWhole) 'поиск номера Акта
        If Not Rng Is Nothing Then NameOfOrganization = Rng.Offset(0, 1) 'запонимаем название Организации из столбца В
    End With
    SourceWB.Close (False) 'закрываем файл Org.xlsx
    Application.ScreenUpdating = True
    If NameOfOrganization <> "" Then
        ThisWorkbook.Worksheets("АКТ").Range("N3") = NameOfOrganization
    Else
        MsgBox "ИНН: " & ACT_Num & " не найден в файле " & sSourceFileName, vbExclamation, "Внимание"
    End If
End Sub

Изменено: New28.10.2021 14:39:29

 

Елена Ион

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

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

#18

28.10.2021 17:32:06

Цитата
New написал:
4. Макрос должен срабатывать сразу по введению данных в ячейку N3 ?

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

 

New

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

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

#19

28.10.2021 18:04:52

Цитата
Елена Ион написал:
А что нужно добавить, чтобы он срабатывал сразу после введения данных.

если очень нужно, то создаёте новую тему с этим вопросом и там я или кто-нибудь другой ответит вам

Поиск значения с подстановкой

Narahon

Дата: Суббота, 24.11.2018, 14:28 |
Сообщение № 1

Группа: Пользователи

Ранг: Новичок

Сообщений: 42


Репутация:

0

±

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


Excel 2016

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

То есть:
1. Я ввожу номер телефона в ячейке B1, макрос ищет это значение на соседнем листе и если находит его в столбце C:C, то берёт значение из ячейки E этой же строки и вставляет в ячейку B2 и на этом завершает цикл.
2. Если макрос не находит это значение, то в ячейке B2 остаётся всё пусто и я в неё вписываю данные вручную

Файлик примера во вложении

 

Ответить

nilem

Дата: Суббота, 24.11.2018, 15:03 |
Сообщение № 2

Группа: Авторы

Ранг: Старожил

Сообщений: 1612


Репутация:

563

±

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


Excel 2013, 2016

Narahon, привет
попробуйте
[vba]

Код

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Address(0, 0) <> «B1» Then Exit Sub

Dim r As Range
Set r = Sheets(«Данные»).Columns(3).Find(Target.Value, LookIn:=xlValues, lookat:=xlWhole)
If r Is Nothing Then
    Range(«B2»).Value = «fone nicht»
Else
    Range(«B2»).Value = r(1, 3).Value
End If
End Sub

[/vba]


Яндекс.Деньги 4100159601573

 

Ответить

Narahon

Дата: Суббота, 24.11.2018, 16:22 |
Сообщение № 3

Группа: Пользователи

Ранг: Новичок

Сообщений: 42


Репутация:

0

±

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


Excel 2016


Огромное спасибо, сейчас буду испытывать

 

Ответить

Narahon

Дата: Суббота, 24.11.2018, 17:49 |
Сообщение № 4

Группа: Пользователи

Ранг: Новичок

Сообщений: 42


Репутация:

0

±

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


Excel 2016

Narahon, привет
попробуйте

В отдельном файле всё работает отлично, но у меня есть сделанная таблица и в ней, к сожалению, не работает этот макрос, чувствую, что мешает другой код:

[vba]

Код

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    ad_ = Target.Address(0, 0)
    With Sheets(«Данные»)
        r0_ = 3
        c0_ = 1
        r1_ = .Cells(.Rows.Count, c0_).End(3).Row
        c1_ = 16
        nr_ = r1_ — r0_ + 1
        nc_ = c1_ — c0_ + 1
        ar = .Cells(r0_, c0_).Resize(nr_, nc_)
    End With
    Select Case ad_
        Case «B4»
            c_ = 4
‘        Case «B6»
‘            c_ = 6
        Case «B7»
            c_ = 7
            cñ_ = 6
        Case «E7»
            c_ = 15
        Case Else
            Exit Sub
    End Select
    ReDim ar1(1 To 8, 1 To 1)
    ReDim ar2(1 To 8, 1 To 1)
    Set slov = CreateObject(«Scripting.Dictionary»)
    With slov
        If cñ_ Then
            z_ = Target.Offset(-1).Value & Target.Value
            For i = 1 To nr_
                .Item(ar(i, cñ_) & ar(i, c_)) = i
            Next i
        Else
            z_ = Target.Value
            For i = 1 To nr_
                .Item(ar(i, c_)) = i
            Next i
        End If
        If .Exists(z_) Then
            str_ = .Item(z_)
            For j = 1 To 8
                ar1(j, 1) = ar(str_, j)
                ar2(j, 1) = ar(str_, j + 8)
            Next j
            Application.EnableEvents = 0
            Range(«B1»).Resize(8) = ar1
            Range(«E1»).Resize(7) = ar2
            Application.EnableEvents = 1
        End If
    End With

    End Sub

[/vba]

Значение для поиска находится всегда в ячейке B4, а значение для подстановки в 18 столбце, я ячейка для заполнения E20? я немного переделывал Ваш код под себя, но код не работает((

[vba]

Код

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Address(0, 0) <> «B4» Then Exit Sub

Dim r As Range
Set r = Sheets(«Данные»).Columns(4).Find(Target.Value, LookIn:=xlValues, lookat:=xlWhole)
If r Is Nothing Then
    Range(«E20»).Value = «fone nicht»
Else
    Range(«E20»).Value = r(1, 17).Value
End If
End Sub

[/vba]

 

Ответить

nilem

Дата: Суббота, 24.11.2018, 18:03 |
Сообщение № 5

Группа: Авторы

Ранг: Старожил

Сообщений: 1612


Репутация:

563

±

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


Excel 2013, 2016

Видимо, нужен ваш файл целиком: с примерами данных и всеми макросами


Яндекс.Деньги 4100159601573

 

Ответить

InExSu

Дата: Воскресенье, 25.11.2018, 16:54 |
Сообщение № 6

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

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

Сообщений: 646


Репутация:

96

±

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


Excel 2010

Привет!

Нечто похожее делал где-то тут
Код придётся заточить.


Разработчик Битрикс24 php, Google Apps Script, VBA Excel

 

Ответить

Narahon

Дата: Пятница, 30.11.2018, 10:36 |
Сообщение № 7

Группа: Пользователи

Ранг: Новичок

Сообщений: 42


Репутация:

0

±

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


Excel 2016

Видимо, нужен ваш файл целиком: с примерами данных и всеми макросами

Добрый день! Только добрался до компьютера. Файлик примера со всеми макросами во вложении

 

Ответить

Narahon

Дата: Среда, 05.12.2018, 12:15 |
Сообщение № 8

Группа: Пользователи

Ранг: Новичок

Сообщений: 42


Репутация:

0

±

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


Excel 2016

Что-то я сам пытался сделать, но так ничего и не вышло, совсем плохо с макросами дружу((

 

Ответить

boa

Дата: Среда, 05.12.2018, 21:58 |
Сообщение № 9

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

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

Сообщений: 543


Репутация:

166

±

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


2013, 365

Narahon,
на основании макроса nilem подправил ваш Worksheet_Change

обратите внимание, что надо или
[vba]

Код

…Find(Target.Value, LookIn:=xlFormulas,…

[/vba]
или [vba]

Код

…Find(Target.Text, LookIn:=xlValues,…

[/vba]
т.к. значение ячейки(Value) у вас изменено форматированием.


Сообщение отредактировал boaСреда, 05.12.2018, 22:04

 

Ответить

Narahon

Дата: Вторник, 18.12.2018, 12:45 |
Сообщение № 10

Группа: Пользователи

Ранг: Новичок

Сообщений: 42


Репутация:

0

±

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


Excel 2016

на основании макроса nilem подправил ваш Worksheet_Change

Спасибо, всё работает просто замечательно) Премного благодарен.

Если не сложо, могли бы ещё с одним помочь?

Создал лист Анкета с кнопкой, при нажатии на которую, должны с этого листа вставляться именно значения, в лист «Ввод данных», пытался создать простой макрос, на примерах из интернета, но простое копирование и вставка — не работает, так как вставляются формулы, а не значения.
Еще и в добавок к этому, в столбик B не вставляется ничего, так как это объединённый столбик.

Файл примера во вложении

Сообщение отредактировал NarahonВторник, 18.12.2018, 13:12

 

Ответить

boa

Дата: Вторник, 18.12.2018, 14:27 |
Сообщение № 11

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

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

Сообщений: 543


Репутация:

166

±

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


2013, 365

Narahon,
данный вопрос не по теме
новый вопрос — новая тема.
З.Ы. пример даже не смотрел


 

Ответить

Narahon

Дата: Вторник, 18.12.2018, 15:17 |
Сообщение № 12

Группа: Пользователи

Ранг: Новичок

Сообщений: 42


Репутация:

0

±

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


Excel 2016

Да в целом практически та же самая тема, не хотел дубликат создавать, но ладно, создам) Спасибо)

 

Ответить

Поиск значений в списке данных

​Смотрите также​ я и хотела​ не связанных диапазона​ разный. Таких строк​Пример во вложении(на​ да и на​Application.EnableEvents = False​ сформирует правильную ссылку​ задачи дизайн не​.​ наименований строк и​ одно из них.​30108,26​). Как мы помним,​ когда таблица данных​ОК​ ячейка диапазона (также​Предположим, что требуется найти​ узнать нужую функцию​ и что с​

В этой статье

​ ежемесячно около 100,​ первом листе как​ английском все.​

​newVal = Target​ на внешний источник​ имеет значения. Наличие​

​После этого все ячейки,​ столбцов. Без выполнения​ Так как у​рублей. Но проблема​

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

​ называемая начальной ячейкой).​ внутренний телефонный номер​ для нас, чтобы​

​ ним делать ума​ вручную приходится сидеть​ должно быть и​

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

​Как сделала выбор​Application.Undo​ информации.​ заголовка (шапки) важно.​ значения в которых​

Примеры функции ВПР

Пример 1 функции ВПР

Пример 2 функции ВПР

​ данного условия инструмент​ нас изменения переменной​ состоит в том,​

Примеры функций ИНДЕКС и ПОИСКПОЗ

Функции ИНДЕКС и ПОИСКПОЗ можно использовать вместо функции ВПР

​ проводится в конце​

​ переменным значением. Возьмем​Следуйте инструкциям мастера.​Формула​ сотрудника по его​ не приходить за​

​ не приложу​ и всё это​ ниже пустые шаблоны​​ что бы при​​oldval = Target​Делаем активной ячейку, куда​ В нашем примере​​ соответствуют вышеописанному условию,​​ при использовании двух​

​ происходит по столбцам,​ что заёмщик в​ календарного месяца, то​

​ наиболее типичный пример​

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

​К началу страницы​ПОИСКПОЗ(«Апельсины»;C2:C7;0)​

​ идентификационному номеру или​​ готовыми решениями, а​VideoAlex​ делать..​

Пример формулы ВПР для поиска неточного совпадения

​ , на втором​ наборе первых слов​If Len(oldval) <>​ хотим поместить раскрывающийся​ это ячейка А1​ будут выделены цветом.​​ переменных работать не​​ то мы будем​ состоянии платить максимум​ есть, величина этого​ с кредитованием.​Довольно часто требуется рассчитать​ищет значение «Апельсины»​ узнать ставку комиссионного​ ее использовать, самостоятельно.​: В общем вот​​Юрий М​​ листе имена и​

​ выскакивало нужное значение​ 0 And oldval​ список.​

​ со словом «Деревья».​

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

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

​ 29000 рублей в​​ аргумента будет равна​Итак, в настоящее время​ итоговый результат для​ в диапазоне C2:C7.​ вознаграждения, предусмотренную за​VideoAlex​ вам файл с​: Lybo4ka, зайдите, пожалуйста,​ ip адреса) ,​ (фио)? Уж очень​ <> newVal Then​

Пример функций СМЕЩ и ПОИСКПОЗ

​Открываем параметры проверки данных.​​ То есть нужно​ сделать некоторые выводы.​Затем выделяем весь полученный​

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

​: И я тут​​ удф. делайте с​ в свой профиль​ за раннее огромное​ хочу понять и​Target = Target​ В поле «Источник»​ выбрать стиль таблицы​ Как видим, при​ табличный диапазон, включая​​ в»​​ ему следует либо​

​. Но, учитывая то,​

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

​ условия кредитования:​ данных. Таким образом​ следует включать в​

Пример формулы ГПР для поиска точного совпадения

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

​ & «,» &​ вводим формулу: =ДВССЫЛ(“[Список1.xlsx]Лист1!$A$1:$A$9”).​ со строкой заголовка.​

​ существующем сроке кредитования​

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

​ наименование столбцов, строк​. Устанавливаем туда курсор,​

​ найти банк, предлагающий​​ что этот показатель​Срок кредитования – 3​ пользователь сможет оценить​

Пример формулы ГПР для поиска неточного совпадения

​ этот диапазон.​ быстро и эффективно​ тафтологии​Lyubov Vladimirova​ имя (ник): сейчас​ откликнулся на мольбу​Помогите советом или​ newVal​Имя файла, из которого​

​ Получаем следующий вид​ (36 месяцев), чтобы​ и ячейку с​

​ а затем кликаем​

Создание формулы подстановки с помощью мастера подстановок (только Excel 2007)

​ условия с более​​ не является обязательным,​ года (36 месяцев);​ все возможные варианты​1​ находить в списке​Lyubov Vladimirova​: в каждой строке​

​ оно с нарушением​ о помощи.​ ссылкой! Пожалуйста…​Else​ берется информация для​ диапазона:​ вложиться в выше​ формулой​ по ячейке в​ низкой процентной ставкой,​ и по умолчанию,​Сумма займа – 900000​ действий, отобрать те,​ — это количество столбцов,​ и автоматически проверять​

  1. ​: Здравствуйте, дело в​

  2. ​ в левом столбце​​ наших Правил. У​​_Boroda_​​Kuzmich​​Target = newVal​​ списка, заключено в​​Ставим курсор в ячейку,​

  3. ​ обозначенную сумму ежемесячного​​ПЛТ​​ исходном наборе данных,​ либо уменьшить тело​

    ​ если его не​

  4. ​ рублей;​​ результат взаимодействия которых​ Изображение кнопки Office​ которое нужно отсчитать​ их правильность. Значения,​​ том, что это​​ есть какое-то уникальное​​ Вас ведь найдутся​​: Так нужно?​

  5. ​: Как раз и​​End If​​ квадратные скобки. Этот​​ где будет находиться​​ платежа, нам нужно​​. Переходим во вкладку​​ которая содержит текущую​

  6. ​ займа, либо увеличить​​ использовать, значение и​​Процентная ставка – 12,5%​ его удовлетворяет, и,​​ справа от начальной​​ возвращенные поиском, можно​​ был мой пример,​​ ключ слово, по​

  7. ​ на клавиатуре символы​

​В соседний столбец​

support.office.com

Таблица данных в Microsoft Excel

Таблица подстановок в Microsoft Excel

​ начните с изучения​If Len(newVal) =​ файл должен быть​ выпадающий список. Открываем​ взять заём не​«Данные»​ величину процентов. После​ срок кредитования. Просчитать​ так подразумевается равным​ годовых.​ наконец, выбрать самый​ ячейки, чтобы получить​ затем использовать в​ который ввел в​​ которому Эксель бы​​c​​ такую формулу​​ логики работы кода​ 0 Then Target.ClearContents​ открыт. Если книга​ параметры инструмента «Проверка​

​ превышающий 860000,00 рублей,​. Как и в​

​ того, как координаты​ различные варианты действий​

Использование таблицы данных

​«0»​​Выплаты происходят в конце​​ оптимальный вариант. В​ столбец, из которого​ вычислениях или отображать​ заблуждение, вероятно, Вас.​ определял, что к​и​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ЕСЛИ(A2=» Name=»;A2&ИНДЕКС(Лист2!A$4:A$541;СЧЁТЕСЛИ(A$1:A2;A2));ЕСЛИ(A2=» Address=»;A2&ИНДЕКС(Лист2!B$4:B$541;СЧЁТЕСЛИ(A$1:A2;A2));A2))&»»​ в этом примере.​Application.EnableEvents = True​ с нужными значениями​​ данных» (выше описан​​ то есть, на​ предыдущий раз, щелкаем​​ ячейки отобразились в​​ нам поможет таблица​, то в указанном​​ платежного периода (месяца)​​ Excel для выполнения​​ возвращается значение. В​​ как результаты. Существует​ помог разрешить вопрос.​ этой строке стоит​​h​​Ее можно укоротить,​Откройте файл Поиск​End If​ находится в другой​

​ путь). В поле​ 40000 меньше первоначально​ по кнопке​ поле, жмем на​ подстановок.​ примере его вообще​ по аннуитетной схеме,​ данной задачи существует​ этом примере значение​ несколько способов поиска​Lyubov Vladimirova​ присвоить значение «Зарплата​?​ я сознательно так​

​ значений в базе​End Sub​ папке, нужно указывать​ «Источник» прописываем такую​ запланированного.​«Анализ «что если»»​ кнопку​Для начала используем таблицу​ можно не применять.​ то есть, равными​ специальный инструмент –​ возвращается из столбца​ значений в списке​: VideoAlex, спасибо большое​

​ Эля» или «зарплата​​Спасибо!​​ написал, чтобы понятнее​ данных по первым​Не забываем менять диапазоны​ путь полностью.​ функцию:​Если же мы все-таки​, в группе инструментов​«OK»​ подстановок с одной​Итак, приступаем к расчету.​ долями. При этом,​«Таблица данных»​ D​ данных и отображения​ за помощь. Вероятно,​

​ Дима», и мне​Сергей Беляев​ было​ буквам…​ на «свои». Списки​Возьмем три именованных диапазона:​Протестируем. Вот наша таблица​

Способ 1: применение инструмента с одной переменной

​ намерены брать кредит​«Работа с данными»​.​ переменной. Посмотрим, как​ Выделяем ячейку на​ вначале всего срока​

​(​Продажи​ результатов.​

  • ​ я еще вернусь​ хотелось бы понять,​
  • ​: Не совсем понятно,​Нормальные формульные теги​
  • ​Перейдите в редактор​ создаем классическим способом.​

​Это обязательное условие. Выше​ со списком на​ размером 900000 рублей,​. В открывшемся списке​Инструмент производит расчет и​ будет изменяться величина​ листе, куда будет​ кредитования значительную часть​«Таблица подстановки»​.​Поиск значений в списке​ с незначительными вопросами,​ какая формула могла​ потому что восьмая​ преобразовывают N в​ VBA​ А всю остальную​

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

Вводные данные для расчета ежемесячного платежа в Microsoft Excel

​ по вертикали по​​ но большое-большое, огромное​ бы нам помочь​ позиция включает вторую.​ Ч, поэтому обставил​Слева будет VBAProject,​ работу будут делать​ обычный список именованным​Добавим в таблицу новое​ должен составлять 4​«Таблица данных…»​ диапазон значениями, которые​

​ при различных вариациях​

​ Клацаем по кнопке​​ платежи, но по​ им пользоваться для​Для выполнения этой задачи​ точному совпадению​ Вам спасибо.​ автоматизировать этот процесс.​ По какому признаку​ формулу VBA-шными тегами.​ выделите Forms-ufrmNilem –​ макросы.​ диапазоном (с помощью​

​ значение «елка».​​ года (48 месяцев).​.​ соответствуют различным вариантам​ годовой ставки, начиная​«Вставить функцию»​ мере сокращения тела​ выполнения указанных выше​ используется функция ГПР.​Поиск значений в списке​Михаил С.​Скажите пожалуйста, для​

​ исключить вторую позицию?​​sd31337​ правый клик мыши-ViewCode​На вкладке «Разработчик» находим​ «Диспетчера имен»). Помним,​Теперь удалим значение «береза».​ Только в таком​Запускается окно инструмента​ процентной ставки. Если​

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

​Осуществить задуманное нам помогла​​ случае размер ежемесячного​«Таблица данных»​ установить курсор в​9,5%​Запускается​ а увеличивается размер​​Скачать последнюю версию​​Функция ГПР выполняет поиск​ приблизительному совпадению​​ (см. файл)​​ Анной, Эксель определяет​ дополнительными столбцами. Можно​_Boroda_​ код, описывающий работу​ «ActiveX». Здесь нам​ может содержать пробелов​​ «умная таблица», которая​​ платежа не превысит​. В данном случае​ любой элемент данной​годовых и заканчивая​Мастер функций​ погашения самого тела.​ Excel​​ по столбцу​​Поиск значений по вертикали​Lyubov Vladimirova​ релевантное значение по​

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

    Переход в Мастер функций в Microsoft Excel

  2. ​ нам потребуются оба​​ табличной области, то​​12,5%​. Производим переход в​​ Общая же выплата,​​Читайте также: Подбор параметра​Продажи​​ в списке неизвестного​​: Михаил, спасибо большое​ Имени Фамилии? У​​ лист. Решение тупое,​​Огромное СПАСИБО ,​

    Переход в окно аргументов функции ПЛТ в Microsoft Excel

  3. ​При инициализации формы​ со списком» (ориентируемся​Создадим первый выпадающий список,​

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

    ​ можно было вводить​​Таким образом, воспользовавшись данным​​«Подставлять значения по столбцам​ в строке формул​0,5%​«Финансовые»​ сказано выше, остается​

    ​Инструмент​​ из строки 5 в​​ совпадению​ решен, огромное спасибо,​ получалось. Мой Эксель​ понятное решение. Что​ =)​ в массив x​​Щелкаем по значку –​​ диапазонов.​ новые значения прямо​​ табличным массивом и​​ в»​ отображается не обычная​. Все остальные условия​, выбираем из перечня​ без изменений.​«Таблица данных»​ указанном диапазоне.​Поиск значений в списке​ что не остались​ брал только целое​ делать с вашим​​EndruAN​​ записывается​ становится активным «Режим​Когда поставили курсор в​​ в ячейку с​​ проанализировав «за» и​​указываем координаты ячейки,​​ формула расчета платежа,​​ оставляем неизменными. Чертим​​ наименование​

    ​Нужно рассчитать, какова будет​​предназначен для того,​​Дополнительные сведения см. в​​ по горизонтали по​​ равнодушны)​ значение из ячейки,​ Ивановым пока не​​: Есть в экселе​​диапазон от A2​

    Окно аргументов функции ПЛТ в Microsoft Excel

  4. ​ конструктора». Рисуем курсором​ поле «Источник», переходим​ этим списком. И​ «против» каждого варианта,​ содержащей срок кредита​​ а специальная формула​​ табличный диапазон, наименования​«ПЛТ»​ сумма ежемесячного платежа,​ чтобы рассчитывать результат​ разделе, посвященном функции​ точному совпадению​Lyubov Vladimirova​ со всеми символами,​ ясно. Как решите​ таблица со списком​ до последней непустой​ (он становится «крестиком»)​ на лист и​ данные автоматически добавлялись​ заёмщик может принять​ в первичных данных.​

    Результат вычисления функции ПЛТ в Microsoft Excel

  5. ​ неразрывного массива. То​ колонок которого будут​и клацаем по​ включающего в себя​ при различных вариациях​ ГПР.​Поиск значений в списке​: VideoAlex, доброго времени​​ что нам не​​ сами так и​​ продуктов, и категорий.​​ ячейки в столбце​​ небольшой прямоугольник –​​ выделяем попеременно нужные​ в диапазон.​ конкретное решение об​ В поле​ есть, изменять значения​ соответствовать различным вариациям​ кнопке​​ погашение тела кредита​​ одной или двух​К началу страницы​ по горизонтали по​ суток) У нас​ подходит т.к. идентификатор​ ответ получите.​ Например, каши -​​ А (Sheet1)​​ место будущего списка.​​ ячейки.​​Сформируем именованный диапазон. Путь:​ условиях кредитования, выбрав​«Подставлять значения по строкам​

    Подготовленная таблица в Microsoft Excel

  6. ​ в отдельных ячейках​ процентной ставки. При​«OK»​ и выплат по​ определенных переменных. После​​Для выполнения этой задачи​​ приблизительному совпадению​ возникли проблемы с​​ всегда другой, в​​Lyubov Vladimirova​​ рис, гречка… Нужно​​x = Range(«A2»,​Жмем «Свойства» – открывается​​Теперь создадим второй раскрывающийся​​ «Формулы» — «Диспетчер​

    Расчет общей суммы кредита в Microsoft Excel

  7. ​ наиболее отвечающий его​ в»​ теперь нельзя. Удалять​ этом строку​.​ процентам. Для этого​ расчета все возможные​ используется функция ГПР.​Создание формулы подстановки с​​ макросом ) в​​ конце (5W3229PU24E5U). А​: Добрый день, Сергей.​ что-бы при выборе​ Cells(Rows.Count, 1).End(xlUp)).Value​

    Расчет суммы процентов в Microsoft Excel

  8. ​ перечень настроек.​ список. В нем​​ имен» — «Создать».​​ пожеланиям вариант из​указываем адрес ячейки​ результаты расчета можно​«Ежемесячные выплаты»​​Вслед за этим происходит​​ в Экселе имеется​ варианты предстанут в​​Важно:​​ помощью мастера подстановок​ англоязычной версии у​​ можете, пожалуйста, пояснить​​ 8-я и 2-я​ ячейки с выпадающим​​Затем вы вводите​​Вписываем диапазон в строку​ должны отражаться те​ Вводим уникальное название​​ всех возможных.​​ исходных параметров, содержащей​

    Запуск инструмента Таблица данных в Microsoft Excel

  9. ​ только все вместе,​оставляем так, как​​ активация окошка аргументов​​ оператор​ виде таблицы, которую​  Значения в первой​ (только Excel 2007)​ меня появляется такая​ алгоритм действий, если​ позиция отличны друг​ списком категорий, в​ в TextBox1 какую-либо​ ListFillRange (руками). Ячейку,​ слова, которые соответствуют​ диапазона – ОК.​​Конечно, таблицу подстановок можно​ величину тела кредита.​​ а не по​ есть. В первой​ вышеуказанной функции.​ПЛТ​ называют матрицей факторного​ строке должны быть​Для решения этой задачи​ ошибка (см. скриншот)​ не сложно? Я​ от друга, ничего​​ другой ячейке формировался​​ букву, срабатывает процедура​

    Окно инструмента Таблица данных в Microsoft Excel

  10. ​ куда будет выводиться​ выбранному в первом​Создаем раскрывающийся список в​ использовать не только​ После того, как​ отдельности.​ её ячейке должна​Ставим курсор в поле​.​ анализа.​ отсортированы по возрастанию.​ можно использовать функцию​лог​ новичок в Экселе,​ исключать мы не​ список входящий только​Private Sub TextBox1_Change()​ выбранное значение –​ списке названию. Если​ любой ячейке. Как​ для расчета кредитных​

Таблица заполненна данными в Microsoft Excel

​ все данные введены.​Кроме того, можно заметить,​ содержаться формула, которую​«Ставка»​ПЛТ​«Таблица данных»​В приведенном выше примере​ ВПР или сочетание​->​ спасибо большое.​​ можем. В том-то​​ в эту категорию.​ и в ListBox1​

Соответствие табличных значений с формульным расчетом в Microsoft Excel

​ в строку LinkedCell.​ «Деревья», то «граб»,​ это сделать, уже​ вариантов, но и​ Клацаем по кнопке​ что величина ежемесячного​ мы рассчитали ранее.​, после чего кликаем​

Приемлимый уровень ежемесячного платежа в Microsoft Excel

​относится к группе​относится к группе​

Способ 2: использование инструмента с двумя переменными

​ функция ГПР ищет​ функций ИНДЕКС и​error111720_02.xml​Сергей Беляев​ и дело, что​Таблица с продуктами​ записываются все значения​ Для изменения шрифта​ «дуб» и т.д.​ известно. Источник –​ для решения множества​«OK»​ платежа при 12.5%​ Для большей информативности​ по ячейке на​ финансовых функций и​ инструментов​ значение 11 000 в строке 3​​ ПОИСКПОЗ.​​Errors were detected​: Извиняюсь, что забыл​

  1. ​ я сама не​ построена по принципу​ из​ и размера –​​ Вводим в поле​​ имя диапазона: =деревья.​​ других задач.​​.​ годовых, полученная в​ можно добавить строки​ листе со значением​ его задачей является​«Анализ «что если»»​​ в указанном диапазоне.​​Дополнительные сведения см. в​​ in file ‘C:UsersUser_XDownloads1​​ решение приложить.​​ могу это решить​​ ячейка 1 категория,​диапазона х, начинающиеся​ Font.​ «Источник» функцию вида​Снимаем галочки на вкладках​Урок: Условное форматирование в​​Программа выполняет расчет и​​ результате применения таблицы​«Общая сумма кредита»​ годовой процентной ставки.​ вычисление ежемесячного кредитного​, которая размещена на​ Значение 11 000 отсутствует, поэтому​ разделе, посвященном функции​

    Заготовка таблицы для создания талицы подстановок с двумя переменными в Microsoft Excel

  2. ​ (2).xlsm’​VideoAlex​ ) Придется программу​ ячейка 2 продукт.​ на эту букву.​​Скачать пример выпадающего списка​​ =ДВССЫЛ(E3). E3 –​​ «Сообщение для ввода»,​​ Экселе​ заполняет табличный диапазон​ подстановок, соответствует величине​​и​​ Как видим, в​​ платежа аннуитетного типа​​ ленте во вкладке​ она ищет следующее​​ ВПР.​​-​

    Запуск инструмента Таблица данных в программе Microsoft Excel

  3. ​: Моя функция берет​​ писать какую-нибудь )​​Vlad999​При выборе какого-либо​При вводе первых букв​​ ячейка с именем​ «Сообщение об ошибке».​​В общем, нужно отметить,​ данными. На пересечении​ при том же​«Общая сумма процентов»​​ поле тут же​ на основании суммы​​«Данные»​ максимальное значение, не​Что означает:​Removed Part: /xl/vbaProject.bin​ столько сколько ей​ Раз Экселем нет​​: Условия Excel 2007​​ значения в ListBox1​

    Окно инструмента Таблица данных в программе Microsoft Excel

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

    Таблица данных заполнена в Microsoft Excel

  5. ​ превышающее 11 000, и возвращает​=ИНДЕКС(нужно вернуть значение из​ part. (Visual Basic​ дают​ решения. Спасибо)​ не это ищете?​ происходит выделение этого​ подходящие элементы. И​Бывает, когда из раскрывающегося​ сделать, Excel не​ является очень полезным​ теперь можно наблюдать,​ мы получили путем​ находится расчет, делаем​ Но, как мы​ кредитования и процентной​«Работа с данными»​

    Выделение таблицы в Microsoft Excel

  6. ​ 10 543.​​ C2:C10, которое будет​​ for Applications (VBA))​Вы можете и​​VideoAlex​​KoGG​ значения в диапазоне.​​ это далеко не​​ списка необходимо выбрать​ позволит нам вводить​ и сравнительно простым​​ каким именно будет​​ применения функции​ без заголовка.​​ помним, нам нужна​​ ставки. Синтаксис этой​

    Переход к условному форматированию в Microsoft Excel

  7. ​. До версии Excel​Дополнительные сведения см. в​ соответствовать ПОИСКПОЗ(первое значение​Вопрос: можно этот​ по одной букве​: Думаю что Иванов​: файл приложите и​Попробуйте на листе​ все приятные моменты​ сразу несколько элементов.​ новые значения.​​ инструментом для определения​​ ежемесячный платеж, при​ПЛТ​Далее рассчитаем общую сумму​ месячная ставка, а​ функции представлен в​ 2007 этот инструмент​ разделе, посвященном функции​ «Капуста» в массиве​ макрос мне в​ искать соответствие, но​​ и Дима это​​ опишите в какой​

    Окно настроек условного фрматирования в Microsoft Excel

  8. ​ Sheet1 заполнить базу​ данного инструмента. Здесь​ Рассмотрим пути реализации​Вызываем редактор Visual Basic.​

Ввыделение ячеек цветом соответствующих условию в Microsoft Excel

​ результата при различных​ соответствующей величине годовых​. Это лишний раз​ займа при текущих​ поэтому производим деление​ таком виде​ носил наименование​ ГПР.​ B2:B10))​ Plain Text увидеть?​ вероятность ошибки будет​ один человек и​ ячейке вып. список​

Максимальный размер допстимого займа при сроке кредитования 3 года в Microsoft Excel

​ данных, нажав на​ можно настраивать визуальное​ задачи.​ Для этого щелкаем​ комбинациях переменных. Применив​ процентов и указанном​ доказывает правильность расчета.​ условиях. Для этого​ полученного результата на​=ПЛТ(ставка;кпер;пс;бс;тип)​«Таблица подстановки»​

Срок кредитования при изначальной величине займа в Microsoft Excel

​К началу страницы​Формула ищет в C2:C10​ Ибо компьютер ругается​ очень велика​ зарплата Иванову будет​ и где должно​ стрелку Заполнить.. (​ представление информации, указывать​Создаем стандартный список с​ правой кнопкой мыши​

​ одновременно с ним​ сроке кредитования.​Проанализировав данный табличный массив,​ выделяем первую ячейку​ 12 (​«Ставка»​

​, что даже более​Примечание:​

​ первое значение, соответствующее​ на него и​VideoAlex​ или Диме -​ появляться содержание выбранной​ в В1 установите​ в качестве источника​ помощью инструмента «Проверка​ по названию листа​ условное форматирование, кроме​Как видим, значений довольно​

​ следует сказать, что,​

lumpics.ru

Выпадающий список в Excel с помощью инструментов или макросов

​ строки​/12​— аргумент, определяющий​ точно отражало его​ Поддержка надстройки «Мастер подстановок»​ значению​ рубит на корню.​

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

Создание раскрывающегося списка

​«Общая сумма кредита»​).​ процентную ставку кредитных​ суть, чем нынешнее​ в Excel 2010​

Создание выпадающего списка.

​Капуста​ Прикрепленные файлы Error_Message1.png​ безобразия.​ просто устала и​

  1. ​Сделано.​будет 20 случайных​Ввод значений.
  2. ​Marina_Spb​ исходный код листа​ вкладке «Исходный текст».​ полученную информацию.​Проверка вводимых значений.
  3. ​ других задач их​ при ставке 9,5%​и умножаем содержимое​В поле​

Имя диапазона. Раскрывающийся список.

​ выплат. Показатель выставляется​ название.​

​ прекращена. Эта надстройка​

Выпадающий список в Excel с подстановкой данных

​(B7), и возвращает​ (4.52 КБ)​Функция берет каждое​ по запарке два​Lybo4ka​ значений).​: Здравствуйте!​ готовый макрос. Как​

  1. ​ Либо одновременно нажимаем​Автор: Максим Тютюшев​ может быть ещё​ годовых получается приемлемый​Форматировать как таблицу.
  2. ​ ячеек​«Кпер»​ за период. У​Таблицу подстановки можно использовать​ была заменена мастером​ значение в ячейке​VideoAlex​ значение из списка​ раза этого Иванова​: Здравствуйте, уважаемые форумчане.​Затем кликните Поиск​Сделала выбор из​ это делать, описано​Выпадающий список.
  3. ​ клавиши Alt +​Под выпадающим списком понимается​ больше. Поэтому, чтобы​ для нас уровень​«Ежемесячный платеж»​таким же образом​ нас период выплат​ во многих случаях.​

Ввод значения в источник.

​ функций и функциями​ C7 (​: Public Function Morgan_Freeman(chto​

Список и таблица.

​ соответствий и сравнивает​ воткнула. Сергей Беляев,​

Добавлено значение елка.

​ Столкнулись с одной​

Удалено значение береза.

​ с формой и​ списка, все хорошо,​ выше. С его​

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

Ввод данных из списка.

  1. ​ Например, типичный вариант,​ для работы со​100​ As String, gde​ его с НАЧАЛОМ​Создание имени.
  2. ​ хотелось бы посмотреть​ задачкой, с которой​ проделайте процедуру, описанную​ но когда 200​ помощью справа от​
  3. ​ (только вставьте свои​ ячейке нескольких значений.​ более наглядной и​ 29000 рублей).​«Срок кредита»​ срока кредита. В​ годовую ставку в​Сообщение об ошибке.
  4. ​ когда нужно рассчитать​ ссылками и массивами.​).​ As Range) Dim​ заданной строки. Когда​ на решение.​ не можем справиться,​ выше.​ значений (ФИО), сложно​ выпадающего списка будут​ параметры).Private Sub Worksheet_Change(ByVal​ Когда пользователь щелкает​ сразу определить, какие​Урок: Расчет аннуитетного платежа​. После этого щелкаем​ этом случае делить​ 12,5% следует разбить​ сумму ежемесячного платежа​В Excel 2007 мастер​Дополнительные сведения см. в​ arr(), i As​ находит совпадение просто​Lybo4ka, макросы подойдут?​ на форуме впервые,​Попробуйте применить это​ и долго их​ добавляться выбранные значения.Private​ Target As Range)​ по стрелочке справа,​ значения не удовлетворяют​ в Экселе​ по клавише​ ничего не надо.​
  5. ​ на число месяцев​ по кредиту при​Сообщение об ошибке.
  6. ​ подстановок создает формулу​ разделах, посвященных функциям​ Integer arr =​ берет соответствующее значение​Пока писал ТС​ надеюсь на любезность​ к своему файлу​ искать в списке.​

Макрос.

​ Sub Worksheet_Change(ByVal Target​ Dim lReply As​ появляется определенный перечень.​ заданному условию, можно​Конечно, отыскать в настоящее​Enter​

​В поле​ в году, то​ различных вариациях периода​

Выпадающий список в Excel с данными с другого листа/файла

​ подстановки, основанную на​ ИНДЕКС и ПОИСКПОЗ.​ gde For i​ из списка соответствий.​ ответила и ответ​ с вашей стороны​sd31337​Как можно сделать,​ As Range) On​ Long If Target.Cells.Count​ Можно выбрать конкретное.​

  1. ​ использовать инструменты визуализации.​ время банки, которые​.​
  2. ​«Пс»​ есть, 12.​ кредитования и суммы​

​ данных листа, содержащих​К началу страницы​ = 1 To​ Извините за тафталогию​ меня поразил. Как​ и подсказке, можно​: Добрый день!​ что бы при​ Error Resume Next​ > 1 Then​

Как сделать зависимые выпадающие списки

​Очень удобный инструмент Excel​

Три именованных диапазона.

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

  1. ​ UBound(arr, 1) If​Сергей Беляев​ тогда отличать Иванова​Список диапазонов.
  2. ​ ли нашу потребность​Не раз спасали​ наборе первых слов​ If Not Intersect(Target,​ Exit Sub If​Таблица со списком.
  3. ​ для проверки введенных​ это будет условное​ 9,5% годовых, очень​ процентов при текущих​ ячейки, содержащей величину​— аргумент, определяющий​ кредитования и процентной​ столбцов. С помощью​ используется функция ВПР.​ Left(chto, Len(arr(i, 1)))​: Ексель как и​ от Дмитрия?​ реализовать при помощи​Второй раскрывающийся список.

    Выбор нескольких значений из выпадающего списка Excel

    ​ на Вашем форуме​ выскакивало нужное значение?​ Range(«Е2:Е9»)) Is Nothing​ Target.Address = «$C$2″​ данных. Повысить комфорт​

    1. ​ форматирование. Выделяем все​ сложно, если вообще​ условиях аналогичным образом​ тела кредита. Выполняем​ численность периодов за​ ставки. Также этот​ мастера подстановок можно​Важно:​ = arr(i, 1)​ другая программа может​Lyubov Vladimirova​ Эксель.​ .​Спасибо​ And Target.Cells.Count =​ Then If IsEmpty(Target)​ работы с данными​ значения табличного диапазона,​ реально. Поэтому посмотрим,​ отнимаем от общей​ это. Также ставим​ весь срок предоставления​ инструмент можно использовать​ найти остальные значения​  Значения в первой​ Then Morgan_Freeman =​
    2. ​ справиться с любой​: Подойдет все, если​В Excel таблице​Столкнулся с задачей​Serge_007​ 1 Then Application.EnableEvents​ Then Exit Sub​ позволяют возможности выпадающих​ исключая заголовки строк​ какие варианты существуют​ суммы займа величину​ перед отобразившемся координатами​ кредита. В нашем​ при анализе моделей​ в строке, если​ строке должны быть​ arr(i, 2) Next​ проблемой(ну почти с​ будет работать…список справа-​
    3. ​ нам нужно автоматически​ добавления новых устройств​: http://www.excelworld.ru/board/vba/tricks/find_in_database/9-1-0-27​ = False If​ If WorksheetFunction.CountIf(Range(«Деревья»), Target)​
      ​ списков: подстановка данных,​ и столбцов.​
      ​ вложиться в приемлемый​ тела кредита. Для​
      ​ знак​ примере период равен​ инвестиционных проектов.​ известно значение в​
      ​ отсортированы по возрастанию.​
      ​ End Function​
      ​ любой). Проблема заключается​
      ​ он будет дополняться,​
      ​ сопоставить ячейки с​ к карте мониторинга​Marina_Spb​
      ​ Len(Target.Offset(0, 1)) =​ = 0 Then​ отображение данных другого​
      ​Перемещаемся во вкладку​
      ​ уровень ежемесячного платежа​
      ​ вывода результата на​
      ​«-»​ одному месяцу, а​
      ​Но также следует знать,​
      ​ одном столбце, и​
      ​В приведенном выше примере​

    ​Влад​ в том, что​ («оплата за телефон,​ рандомным текстом (содержащим,​ .​: Я правильно поняла,​

    Выпадающий список с поиском

    1. ​ 0 Then Target.Offset(0,​ lReply = MsgBox(«Добавить​ листа или файла,​«Главная»​ при различных комбинациях​ экран щелкаем по​Вставить ActiveX.
    2. ​. Дело в том,​ срок кредитования составляет​ что чрезмерное применение​ наоборот. В формулах,​ функция ВПР ищет​: Хых… Видали мы​Элемент ActiveX.
    3. ​ у вас противоречивые​ Платеж за одну​Свойства ActiveX.
    4. ​ однако, чёткие ключевые​Руками добавлять почти​ что это можно​ 1) = Target​ введенное имя «​ наличие функции поиска​и клацаем по​ других переменных: величины​

    ​ кнопке​

    ​ что функция​ 3 года или​ данного инструмента может​ которые создает мастер​ имя первого учащегося​ такие траблы) Вылазит​ условия, поэтому ни​ услугу, платеж за​ слова, которые мы​ 600 объектов очень​

    exceltable.com

Подстановка данных при вводе из имеющегося списка (Формулы/Formulas)

​ только с помощью​​ Else Target.End(xlToRight).Offset(0, 1)​
​ & _ Target​ и зависимости.​ значку​ тела займа и​Enter​ПЛТ​
​ 36 месяцев. Таким​ привести к торможению​ подстановок, используются функции​ с 6 пропусками в​
​ на тех машинах,​

​ на Си ни​​ другую услугу, чтобы​

​ загодя знаем), с​​ долго , если​ макросов?​ = Target End​ & » в​

​Путь: меню «Данные» -​​«Условное форматирование»​ срока кредитования. При​. Таким образом мы​по умолчанию выдает​ образом, количество периодов​ системы, так как​
​ ИНДЕКС и ПОИСКПОЗ.​ диапазоне A2:B7. Учащихся​

​ где при установке​​ на на Асемблере​ в этих цифрах​ унифицированным описанием этих​ есть люди знающие​Nic70y​ If Target.ClearContents Application.EnableEvents​ выпадающий список?», vbYesNo​ инструмент «Проверка данных»​
​. Он расположен в​ этом процентную ставку​ получаем сумму, которую​ итоговый результат именно​
​ будет рано 36.​

​ пересчет данных производится​​Щелкните ячейку в диапазоне.​ с​ офиса была снята​ даже вашу проблему​ не сидеть и​ ячеек, которое мы​ как из списка​: Если к ячейке,​ = True End​ + vbQuestion) If​ — вкладка «Параметры».​ блоке инструментов​ оставим неизменной (12,5%).​
​ переплачиваем при возврате​ с отрицательным знаком,​«ПС»​ постоянно. Поэтому рекомендуется​На вкладке​6​ галка на установке​
​ не решить. У​ не путаться из​

​ также загодя подготовим​​ в .тхт либо​ в которую нужно​ If End Sub​ lReply = vbYes​
​ Тип данных –​«Стили»​ В решении данной​ займа.​
​ справедливо считая ежемесячный​— аргумент, определяющий​
​ в небольших табличных​Формулы​ пропусками в таблице нет,​
​ VBA.​ вас нет условия.​ первого столбца..)мне бы​
​ и которое должно​ из столбца ,​ вводить, будет прилегать​Чтобы выбранные значения показывались​
​ Then Range(«Деревья»).Cells(Range(«Деревья»).Rows.Count +​ «Список».​на ленте. В​ задачи нам поможет​
​Теперь настало время применить​ кредитный платеж убытком.​
​ приведенную стоимость кредита,​ массивах для решения​в группе​
​ поэтому функция ВПР​rango​ Вы не привели​ хотелось увидеть решение,​
​ вставляться напротив них,​ подставить значения по​
​ сам список, то​ снизу, вставляем другой​ 1, 1) =​Ввести значения, из которых​
​ раскрывшемся меню выбираем​ инструмент​ инструмент​ Но нам для​ то есть, это​ аналогичных задач не​
​Решения​ ищет первую запись​
​: Добрый день!​ пример Иванова Дмитрия​ как это можно​ в зависимости от​
​ нужно мне критерию​ и макросов не​

excelworld.ru

подставить значения из списка (Формулы/Formulas)

​ код обработчика.Private Sub​​ Target End If​
​ будет складываться выпадающий​ пункт​«Таблица данных»​
​«Таблица данных»​ наглядности применения таблицы​ размер тела кредита​ использовать этот инструмент,​
​выберите команду​ со следующим максимальным​имеются листы с​ такого как у​ реализовать.​ содержащейся в них​Суть проблемы .​ надо.​ Worksheet_Change(ByVal Target As​
​ End If End​
​ список, можно разными​
​«Правила выделения ячеек»​
​с использованием двух​
​. Выделяем весь табличный​
​ данных нужно, чтобы​
​ на момент его​
​ а применять копирование​
​Подстановка​

​ значением, не превышающим​​ названиями по месяцам​​ вас во второй​​VideoAlex​​ части текста. Формулу​Есть список вида​
​А без Вашего​ Range) On Error​
​ If End Sub​​ способами:​​. В дополнительном списке​ переменных.​
​ массив, кроме наименований​
​ данное число было​
​ выдачи. В нашем​
​ формул с помощью​
​.​​ 6. Она находит​​ внутри которых одинаковые​ позиции. Если вам​
​: Когда ответите как​ ВПР / VLOOKUP​50109 10.50.27.1​ примера неизвестно.​ Resume Next If​Сохраняем, установив тип файла​Вручную через «точку-с-запятой» в​ кликаем по позиции​Чертим новый табличный массив.​ строк. После этого​ положительным. Поэтому мы​

​ случае этот показатель​​ маркера заполнения.​
​Если команда​ значение 5 и возвращает​
​ таблицы.​
​ надо искать такого,​ отличить иванова от​ не подходит, так​50111 10.50.27.129​
​Marina_Spb​ Not Intersect(Target, Range(«Н2:К2»))​ «с поддержкой макросов».​ поле «Источник».​

​«Меньше…»​​ Теперь в наименованиях​​ переходим во вкладку​​ и ставим знак​
​ равен 900000 рублей.​Оправданным применение​Подстановка​

excelworld.ru

Подстановка при выборе из выпадающего списка

​ связанное с ним​​Задача сделать сводную​ но после него​ дмитрия тогда можно​ как она ищет​50117 10.50.29.1​: Мозг вскипел) изучила​ Is Nothing And​Переходим на лист со​Ввести значения заранее. А​.​ столбцов будет указываться​
​«Данные»​«минус»​«БС»​«Таблицы данных»​

​недоступна, необходимо загрузить​​ имя​ таблицу и универсальную​

​ не будет больше​​ будет взяться за​ или точное или​50118 10.50.29.65​ ссылку Сергея, ну​ Target.Cells.Count = 1​ списком. Вкладка «Разработчик»​

​ в качестве источника​

CyberForum.ru

Автоматическая подстановка значений в необходимые ячейки

​Вслед за этим открывается​​ срок кредитования (от​. Щелкаем по кнопке​перед одним из​— аргумент, указывающий​является только в​ надстройка мастера подстановок.​Алексей​ формулу собирающую данные​ данных, то это​ решение а пока​ же примерное совпадение,​
​50122 10.50.30.65​ не осилить мне​ Then Application.EnableEvents =​ — «Код» -​ указать диапазон ячеек​ окно настройки условного​2​ на ленте​ аргументов функции. Как​ на величину тела​ больших табличных диапазонах,​Загрузка надстройки мастера подстановок​.​ из всех листов,​ не проблема.​ смысла не вижу​ получается или ничего​50130 10.50.32.65​ это. Я даже​ False If Len(Target.Offset(1,​ «Макросы». Сочетание клавиш​ со списком.​ форматирования. В левом​до​«Анализ «что если»»​ известно, умножение​ кредита на момент​ когда копирование формул​Нажмите кнопку​Дополнительные сведения см. в​ с авто подстановкой​Михаил С.​Lyubov Vladimirova​ не комментирует, т.к.​50133 10.50.33.1​ не понимаю с​ 0)) = 0​
​ для быстрого вызова​​Назначить имя для диапазона​ поле указываем величину,​​6​
​, которая размещена в​«минус»​ его полной выплаты.​ может отнять большое​Microsoft Office​ разделе, посвященном функции​

​ названия листов из​​: Lyubov Vladimirova, а​: Хорошо, дайте мне​ точно совпадать код​где​ чего начать. Пример​ Then Target.Offset(1, 0)​ – Alt +​ значений и в​​ менее которой ячейки​​лет в месяцах​​ группе инструментов​​на​
​ Естественно, что данный​

​ количество времени, а​​, а затем —​ ВПР.​ ячеек строки 1​ вот к этим​ немного времени.​
​ напротив фамилии не​50109​ хороший, но для​ = Target Else​ F8. Выбираем нужное​ поле источник вписать​ будут выделены. Как​ с шагом в​«Работа с данными»​«минус»​ показатель будет равен​

​ во время самой​​ кнопку​К началу страницы​rango​ данным что соответствует?​Вот здесь я​ будет 2 раза​\ имя устройства​ профи.​ Target.End(xlDown).Offset(1, 0) =​ имя. Нажимаем «Выполнить».​ это имя.​ помним, нас удовлетворяет​ один год), а​

​(в Excel 2016​​в итоге дает​ нулю. Этот аргумент​ процедуры увеличивается вероятность​Параметры Excel​Для выполнения этой задачи​: Другими словами нужно​Lyubov Vladimirova​ добавила ориентировочный именованный​ никогда или же​10.50.27.1​При том, что​ Target End If​
​Когда мы введем в​
​Любой из вариантов даст​ условие, при котором​ в строках —​ группа инструментов​«плюс»​

​ не является обязательным​​ допущения ошибок. Но​и выберите категорию​ используются функции СМЕЩ​ вместо обычной ссылки​: Пожалуйста, не могли​ список тех значений,​ вписывает любое ближайшее​\ IP адрес​ с обычными формулами​ Target.ClearContents Application.EnableEvents =​ пустую ячейку выпадающего​ такой результат.​ ежемесячный платеж по​ величина тела кредита​

​«Прогноз»​​.​ параметром. Если его​ и в этом​Надстройки​ и ПОИСКПОЗ.​ на ячейку другого​

​ бы вы описать​​ которые должны подставляться​ значение, т.е. любое​
​ устройства​ excel я неплохо​ True End If​ списка новое наименование,​​ кредиту будет составлять​ (от​). Затем открывается небольшое​В поля​ пропустить, то подразумевается,​ случае рекомендуется в​

​.​​Примечание:​ листа вида​ алгоритм данной функции?​ к каждой соответствующей​ описание, а нам​Необходимо подряд подставить​ справляюсь)​ End Sub​ появится сообщение: «Добавить​Необходимо сделать раскрывающийся список​

​ менее​​850000​ меню. В нем​«Бс»​ что он равен​

​ диапазоне таблицы подстановки​​В поле​ Данный метод целесообразно использовать​=сентябрь!R[1]C​ Если не сложно?​ строке. Извините пожалуйста,​ нужна чёткая идентификация​ значения в​Прошу помощи!?​Чтобы выбираемые значения отображались​ введенное имя баобаб​ со значениями из​29000​до​ выбираем позицию​
​и​ числу «0».​ отключить автоматический пересчет​Управление​ при поиске данных​использовать формулу​ Спасибо. Если нет,​ если ввела в​ по части текста,​Name=​Marina_Spb​ в одной ячейке,​ в выпадающий список?».​ динамического диапазона. Если​рублей. Вписываем данное​950000​«Таблица данных…»​«Тип»​«Тип»​

​ формул, во избежание​​выберите значение​ в ежедневно обновляемом​

​с подстановкой значения названия​​ то ладно, будем​ заблуждение отправленным вначале​ т.е. по фамилии​
​50270​: Спустя почти пять​ разделенные любым знаком​Нажмем «Да» и добавиться​ вносятся изменения в​

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

​\сюда добавить следующий​​ часов разобралась я​ препинания, применим такой​ еще одна строка​ имеющийся диапазон (добавляются​ поле существует возможность​10000​Открывается небольшое окошко, которое​ вносим. Клацаем по​ аргумент. Он сообщает​ систему.​и нажмите кнопку​ Известна цена в​из ячейки: Вместо​VideoAlex​ отметками. Здесь немного​ конторы, т.к. большинство​ объект​ немного что такое​ модуль.​ со значением «баобаб».​ или удаляются данные),​ выбора цвета выделения,​рублей). При этом​

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

​Перейти​​ столбце B, но​сентябрь​: Да вроде описал.​ понятнее информация выглядит?​ платежей у нас​Left=43​ макрос, даже смогла​

​Private Sub Worksheet_Change(ByVal​​Когда значения для выпадающего​

​ они автоматически отражаются​​ хотя можно оставить​ обязательным условием является​«Таблица данных»​«OK»​ именно будет проводиться​ вариантами применения таблицы​.​ неизвестно, сколько строк​- формула.​Lyubov Vladimirova​VideoAlex​ повторяющиеся, но названия​

​Top=43​​ добавить перевод «из​ Target As Range)​ списка расположены на​:D

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

​В области​​ данных возвратит сервер,​Не понимаю какую​: Здравствуйте, к этим​: Теперь появился вопрос​ у многих неочевидные.​Group=8​

​ цифры в сумму»,​​On Error Resume​ другом листе или​

​Выделяем диапазон для выпадающего​​ умолчанию. После того,​ в которой находится​ него имеется два​После этого оператор производит​ периода (параметр –​

​ количестве переменных, принимающих​​Доступные надстройки​ а первый столбец​ комбинацию нужно использовать​ данным будет соответствовать​ какая строка соответствующая.​(​ID=1​
​ но с подстановкой​
​ Next​
​ в другой книге,​
​ списка. В главном​ как все требуемые​ формула расчета (в​
​ поля. Так как​
​ подсчет и выводит​«1»​ участие в вычислении:​

​установите флажок рядом​ не отсортирован в​Vlad999​ «Зарплата Демида»(которое мы​ Так то первый​Как это теоретически можно​Address=​ значение из списка​

​If Not Intersect(Target,​​ стандартный способ не​ меню находим инструмент​ настройки введены, клацаем​ нашем случае​ мы работаем с​ в заранее обозначенную​) или в конце​ одна переменная или​ с пунктом​ алфавитном порядке.​: Код =ДВССЫЛ(B$1&»!B»&СТРОКА(B3))​ добавим впоследствиии, которые​ файл был гораздо​

​ было бы реализовать​​10.50.67.65​ не пойму как​ Range(«C2:C5»)) Is Nothing​ работает. Решить задачу​ «Форматировать как таблицу».​ по кнопке​ПЛТ​

planetaexcel.ru

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

​ одной переменной, то​​ ячейку результат общего​
​ периода (параметр –​ две.​Мастер подстановок​C1​
​rango​ будут добавлены в​ понятнее. Этот файл​) Подскажите, пожалуйста.​\сюда добавить ip​ создать такие ячейки​ And Target.Cells.Count =​

​ можно с помощью​​Откроются стили. Выбираем любой.​«OK»​), располагалась на границе​ нам понадобится только​​ ежемесячного платежа –​​«0»​​Сразу давайте рассмотрим вариант,​и нажмите кнопку​​ — это левая верхняя​​: Спасибо!​​ будущем) Для того​
​ просто два ничем​Идентификационный код всегда​

​ адрес этого объекта​​ как в образце,​

​ 1 Then​​ функции ДВССЫЛ: она​

CyberForum.ru

​ Для решения нашей​

0 / 0 / 0

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

Сообщений: 43

1

Макрос для подстановки значений в формулу и копирования результата вычисления

06.10.2021, 11:32. Показов 2794. Ответов 10


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

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

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

Спасибо!



0



Programming

Эксперт

94731 / 64177 / 26122

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

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

06.10.2021, 11:32

Ответы с готовыми решениями:

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

Мне необходим макрос, который бы…

Макрос для сравнения значений в массивах и копирования на отдельный лист
Добрый день!

Нужна Ваша помощь.
Во вложении на Листе 1 имеются данные с номерами вагонов,…

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

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

Макрос на вычисления лучшего результата
Здравствуйте, возникла у меня такая проблема, пытаются нам пропихнуть VBA, но если в теории я еще…

10

2632 / 1637 / 745

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

Сообщений: 5,143

06.10.2021, 13:32

2

SergeyBelov,
Проверьте инструкцию в файле- там есть неточности:
в ячейке Е2 — 134 , а по инструкции должно быть 1222

Здесь и макрос не нужен…



0



5942 / 3154 / 698

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

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

06.10.2021, 13:42

3

Narimanych, да не, все верно, в случае 1 в В4 должна быть единица, тогда мин = 134.
А вот что должно быть в С4, непонятно.
И да, вероятно макрос и не нужен



0



0 / 0 / 0

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

Сообщений: 43

06.10.2021, 14:45

 [ТС]

4

Во вложении ход расчета. Видимо я не совсем понятно расписал суть.
Значение 134 в E1 получается если значение «1» из ячейки D1 подставить в B1. Далее вниз по столбцу D методом перебора заданных в нём значений.
В контексте файла примера, да, макрос не нужен, т.к. эту формулу можно зашить сразу в столбец E. Но, как я написал в разъяснении, формула дана упрощенная, для наглядности и понимания структуры ввода и вывода параметров, по факту у меня формула которая учитывает 600 ячеек в строке в ширину. Смысл макроса подстановка значений из таблички столбца D в ячейку B1, из которой формула в строке 1 будет брать значение, ссылка на это значение во всех 600 ячейках (в ширину) этой строки заморожена, затем другая формула в строке 2 обрабатывает эти 600 значений в строке 1, и в ячейке B2 появляется число, которое нужно скопировать и занести в столбец E. Данную подстановку нужно сделать для (задаваемого) диапазона значений D111 (в файле примера), и заполнить в ячейках E1:E11 соответствующие им значения полученные из формулы.
Макрос я самостоятельно адаптирую под мою структуру файла. Суть того с какими ячейками и как он должен работать, описывает файл примера.

Миниатюры

Макрос для подстановки значений в формулу и копирования результата вычисления
 



0



530 / 467 / 183

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

Сообщений: 2,459

06.10.2021, 15:00

5

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



0



0 / 0 / 0

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

Сообщений: 43

06.10.2021, 15:18

 [ТС]

6

Цитата
Сообщение от Алекcей
Посмотреть сообщение

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

Логично, но, в моем случае та часть файла которая связана с ячейкой B4 и формулами в стоках 1 и 2, должна остаться нетронутой. Файл посчитан по конкретному значению B4. А макрос нужен как раз что бы иметь табличку со значениями в столбце E, которые могут получится при различных соответствующих им значениям D. Тот макрос который мне нужен, это что бы взять и провести обсчет неповоротливого файла, подставляя в ячейку B4 разные значения. Структуру формул менять нельзя. Можно конечно вручную повбивать значения в B4 и копировать значения из B2, но мне нужно проверить скажем 50 чисел.

Привожу фрагмент записи макроса:

Вот нужно сделать такой же алгоритм только что бы его можно было задать сразу через указание ячеек получения данных для подстановки D111 и ячеек вывода данных E1:E11

Код

Sub Perebor()


    Range("D4").Select
    Selection.Copy
    Range("B4").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("B2").Select
    Application.CutCopyMode = False
    Selection.Copy
    Range("E4").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("D5").Select
    Application.CutCopyMode = False
    Selection.Copy
    Range("B4").Select
    ActiveSheet.Paste
    Range("B2").Select
    Application.CutCopyMode = False
    Selection.Copy
    Range("E5").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("D6").Select
    Application.CutCopyMode = False
    Selection.Copy
    Range("B4").Select
    ActiveSheet.Paste
    Range("B2").Select
    Application.CutCopyMode = False
    Selection.Copy
    Range("E6").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("E8").Select
End Sub



0



530 / 467 / 183

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

Сообщений: 2,459

06.10.2021, 16:44

7

не уверен что сделал то, что нужно, но посмотрите на всякий случай



1



0 / 0 / 0

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

Сообщений: 43

07.10.2021, 14:24

 [ТС]

8

Добрый день. Видимо я своим файлом примера ввел в заблуждение. Приведу более развернутое описание. Ведется расчет срока окупаемости (курсовая), есть файл с расчетом. Его структура на изображении. В сами формулы макрос не должен вмешиваться. Задача макроса брать значения из таблички «вариация тарифа» и подставлять в ячейку отмеченную стрелочкой, затем полученное значение из другой ячейки «срок окупаемости» копировать и заносить в таблицу в соседний столбец. Сам файл трогать нельзя. Поэтом и прошу помочь с макросом, т.к. он нужен как «примочка» к текущему расчету что бы ускорить обсчет различных величин тарифа и получить соответствующие им сроки окупаемости.
Спасибо!

Миниатюры

Макрос для подстановки значений в формулу и копирования результата вычисления
 



0



5942 / 3154 / 698

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

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

07.10.2021, 14:57

9

SergeyBelov, лучше приложите файл, замените свои подписи на «овцы» и «бараны», оно точно не к чему)



1



0 / 0 / 0

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

Сообщений: 43

07.10.2021, 15:29

 [ТС]

10

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



0



SergeyBelov

0 / 0 / 0

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

Сообщений: 43

08.10.2021, 15:39

 [ТС]

11

Нашел на эксельпедии вот такой макрос:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
Sub PereborDiapazonaYacheek() 
'Шаг 1: Объявить переменные 
Dim MyRange As Range Dim MyCell As Range
 'Шаг 2: Определение целевого диапазона.
 Set MyRange = Range("D6:D17") 
'Шаг 3: Запуск цикла через диапазон. 
For Each MyCell In MyRange 
'Шаг 4: Какое-либо действие с каждой ячейкой.
[B] If MyCell.Value > 3000 Then 
MyCell.Font.Bold = True End If [/B]
'Шаг 5: Перейти к следующей ячейке в диапазоне Next MyCell End Sub

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

Спасибо!



0



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

  • Сравнение столбцов в Excel, и подстановка значений в таблицу

    Программа предназначена для сравнения и подстановки значений в таблицах Excel.
    Если вам надо сравнить 2 таблицы (по одному столбцу, или по нескольким),
    и для совпадающих строк скопировать значения выбранных столбцов из одной таблицы в другую,
    надстройка «Lookup» поможет сделать это нажатием одной кнопки.
     
    То же самое можно сделать при помощи формулы =ВПР(), но:

    формулы…

  • Наверняка, вы сталкивались с ситуацией, когда необходимо производить поиск некоторого значения по всей книге Excel (искать частичное совпадение на всех листах активной книги)
     
    Штатными средствами Excel вывести поле для поиска на панель инструментов не удаётся, а вызывать каждый раз диалоговое окно нажатием комбинации клавиш Ctrl + F не всегда удобно.
    На помощь придёт эта…

  • Поиск и подсветка результатов в Excel


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


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

    Способы формирования отфильтрованных массивов — разные:
    первый способ использует функцию ArrAutofilterEx
    второй способ — функцию …

  • Данный макрос предназначен для поиска адресов электронной почты на листе Excel, с последующим выводом найденных адресов на отдельный лист.
    В прикреплённом файле, на первом листе («исходные данные»), ячейки заполнены неструктурированной информацией (смесь фамилий, адресов почты, прочей ненужной информации)
    Макрос вычленяет из текста ячеек адреса электронной почты, и выводит все найденные…

  • Скриншот надстройки поиска по всем листам Excel


    Надстройка SearchText предназначена для поиска заданного текста в книге Excel, с выводом результатов поиска на отдельный лист.
     
    При запуске надстройка формирует панель инструментов, с которой осуществляется запуск всех макросов:

    В Excel 2007 и 2010 панель инструментов можно найти на вкладке «Надстройки»:

    Надстройка SearchText является расширенной версией надстройки для…

  • Скриншот программы сравнения прайс-листов Excel


    Программа предназначена для сравнения цен конкурентов из их прайсов с прайс-листом вашей организации.

    ВНИМАНИЕ: Недавно разработана многофункциональная программа для обработки прайс-листов

    Новая программа объединения и обработки прайс-листов доступна на сайте для скачивания и тестирования на различных наборах прайс-листов.

    Исходными данными для программы являются:

    ваш прайс…

  • Главное меню программы по работе с базой данных «Преподаватели»


    База данных «Преподаватели» предназначена для автоматизации работы администрации учебных заведений.

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

    Эта база данных представляюет собой урезанную и немного изменённую версию программы АИСС СПК.

    Программа обеспечивает:

    Хранение полной…

  • Скриншот результатов поиска с выводом на отдельный лист


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

    Надстройка SearchExcel является упрощённой версией надстройки для поиска на всех листах книги Excel
    Смотрите также надстройку для…

  • АИСС "Абитуриент" - форма ввода данных абитуриента


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

    АИСС обеспечивает выполнение всех необходимых операций по приему документов, поиску и анализу информации, составлению отчетов.

    Назначением программы является автоматизация труда работника приёмной комиссии учебного заведения.

    Программа обеспечивает:

    Хранение полной…


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

    Итак, нам надо получить все заполненные ячейки из некого диапазона листа Excel. 
    Обычно для этого используется вызов…


  • Надстройка предназначена для выполнения множественных замен в выделенном диапазоне ячеек.
     

    После запуска надстройки, появляется панель инструментов из 3 кнопок:

    Кнопка «Выполнить все замены» — выполняет замены в выделенном диапазоне ячеек

    Кнопка «Изменить список замен» — отображает лист настроек, где в первом столбце находится список заменяемых…

  • Макрос для поиска текста выделенных ячеек в Google


    Макрос предназначен для поиска текста из выделенных ячеек в поисковой системе Google.

    Функция поиска доступна из контекстного меню ячеек:

    Как вы можете видеть на скриншоте, есть возможность выбора браузера.
    На выбор представлены наиболее популярные браузеры: Internet Explorer, Mozilla Firefox, Opera, и Google Chrome.
     

    В макрос намеренно введено ограничение на количество ячеек, текст…

  • Функция производит поиск текстового значения в заданном диапазоне листа,
    и возвращает диапазон, содержащий все найденные ячейки
    Взято с сайта Чипа Пирсона: cpearson.com/excel/FindAll.aspx
    Function FindAll(SearchRange As Range, _
    FindWhat As Variant, _
    Optional LookIn As XlFindLookIn = xlValues, _
    Optional LookAt As XlLookAt = xlWhole, _…

  • Форма ввода и редактирования заявок


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

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

    Эта база данных представляет собой урезанную и немного изменённую версию программы АИСС СПК.

  • Итоговая таблица объёмов холодного и горячего водоснабжения


    Программа предназначена для формирования таблицы Excel для расчёта суммы оплаты за услуги ЖКХ (холодного и горячего водоснабжения)
    В качестве исходных данных выступает таблица, в которой занесены показания счётчиков (расход горячей и холодной воды)
    Макрос производит поиск клиентов в исходной таблице (по номеру лицевого счёта), и подставляет данные по этому клиенту в итоговую таблицу.
     
    Вы…

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

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

    Особенности данной программы:

    поиск частичных совпадений (адреса могут совпадать лишь частично, при сравнении файмилий не учитываются 2 последних буквы, и т.д.)
    можно изменить «точность» совпадения — в…

Понравилась статья? Поделить с друзьями:
  • Макрос подсчета строк excel
  • Макрос объединение нескольких листов в один excel
  • Макрос подключение sql excel
  • Макрос обновления листа excel
  • Макрос по умолчанию excel