Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Другие темы раздела
VBA Определить название папки, в которой находится doc-файл https://www.cyberforum.ru/ vba/ thread1230998.html
Как определить название родительской относительно doc-файла папки? Можно полный путь, можно название собственно папки. Поиск не помог. Заранее спасибо.
Сравнение двух столбцов по нескольким критериям VBA
Добрый день. Очень надеюсь на Вашу помощь. Есть два диапазона данных (эти данные могут быть как числовые, так и текстовые). Мне нужно сравнить два диапазона, выявить одинаковые значения, а также...
VBA Вставить пустые строчки через нужное количество строк
Помогите, пожалуйста, с макросом, который бы вставлял пустую строчку через определенное (хотелось бы выбирать) количество заполненных строчек
VBA Какую среду лучше использовать для создания DLL? Такой вопрос, что лучше использовать из этих двух сред для создания DLL для VBA: VB6 Visual Studio Visual Basic. Сначала нужно разобраться в терминах. Нужно понять "Visual Studio Visual Basic" и... https://www.cyberforum.ru/ vba/ thread1230919.html
VBA Как программно создать ссылку на параграф в Word? https://www.cyberforum.ru/ vba/ thread1230899.html
Привет всем! Подскажите, пожалуйста, как программно в одном открытом документе Word создать ссылку на определенный параграф в другом открытом документе? Т.е., чтобы при клике по этой ссылке...
Создать временной график процесса на основе данных о дате начала и конца каждого этапа VBA
Добрый день, в приложении можно скачать пример таблицы. Данная таблица состоит из двух подтаблиц: "тип деятельности" и "неделя года". Необходимо, чтобы при занесении даты начала и конца в подтаблицу...
VBA Как сделать DLL для VBA?
Что нужно сделать, чтобы сделать DLL? Я так понимаю, что нужен какой-то язык программирования. Есть кажется VB6. Если сделать DLL, то в него можно просто поместить VBA-код, в том виде, в каком...
VBA Поиск раскрашенного текста в документе Word Привет всем! Подскажите, пожалуйста, каким образом средствами VBA в открытом документе Word найти текст (слово, фразу) окрашенный в определенный цвет, например красный? Спасибо! https://www.cyberforum.ru/ vba/ thread1230716.html
VBA Рассчитать величину амортизации функцией VDB (ПУО) https://www.cyberforum.ru/ vba/ thread1230518.html
Помогите пожалуйста нужно найти величину амортизации функцией vbd, не чего не могу найти, вот например функция syd Sub вывод() Dim a As Double, p As Double, i As Double, f As Double Dim n As...
VBA Сумма всех комбинаций значений из столбца чисел Задача для функции: Выделяем столбец, состоящий из чисел. Необходимо суммировать все возможные комбинации из чисел этого столбца. Записать суммы всех комбинаций в столбец Например n=4: 1... https://www.cyberforum.ru/ vba/ thread1229660.html
0 / 0 / 0
Регистрация: 04.11.2012
Сообщений: 10
0

Поиск ближайшего подходящего значения из таблицы

20.07.2014, 15:19. Показов 2736. Ответов 2
Метки (Все метки)

Здравствуйте,

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

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
Sub мак()
Dim ina, iko, j, i1, j1, i2, j2  As Long
 
Dim P, P1, P2, Pavg, DCr As Currency
 
Set SH1 = ActiveWorkbook.Sheets("Лист1")
Set SH2 = ActiveWorkbook.Sheets("Лист2")
 
ina = 2
iko = 11
j = 9
i2 = 2
j2 = 14
i1 = 2
j1 = 10
 
For i1 = ina To iko
 
SH1.Select
 
P = SH1.Cells(i1, j1).Value
 
SH2.Select
 
For i2 = 2 To 185
If (P > SH2.Cells(i2, j2).Value) And (P < SH2.Cells(i2 + 1, j2).Value) Then
P1 = SH2.Cells(i2, j2).Value
P2 = SH2.Cells(i2 + 1, j2).Value
Pavg = (P1 + P2) / 2
End If
Next i2
 
If P < Pavg Then
DCr = SH2.Cells(i2, j2 + 1).Value
Else
DCr = SH2.Cells(i2 + 1, j2 + 1).Value
End If
 
SH1.Select
SH1.Cells(i1, j1).Value = DCr
 
Next i1
 
 
End Sub


Вернуться к обсуждению:
Поиск ближайшего подходящего значения из таблицы
0
Вложения
Тип файла: rar Книга.rar (52.5 Кб, 18 просмотров)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.07.2014, 15:19
Готовые ответы и решения:

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

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

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

Notepad++ Регулярные выражения поиск ближайшего блока после нахождения необходимого значения в коде
Добрый день! Прошу подсказать: есть примерно такая структура &lt;body&gt; &lt;tag&gt; &lt;number=1&gt;...

__________________
2
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.