Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.09.2018, 13:53   #21
Leon307
Пользователь
 
Регистрация: 26.09.2018
Сообщений: 19
По умолчанию

Ха! В этом и вся фишка, какой код и как вставить?
Leon307 вне форума Ответить с цитированием
Старый 27.09.2018, 14:22   #22
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Сообщение от Leon307 Посмотреть сообщение
Ха! В этом и вся фишка, какой код и как вставить?
точно. вот как раз в этом и вся фишка!

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

вставьте вместо своего кода вот такой:
Код:
Public Sub Counter()
Dim CounterCell As Range, i As Long, r As Range, dest As Range
Set CounterCell = ActiveSheet.Range("A1")
CounterCell.Value = 0

Application.ScreenUpdating = False

' скопировать эталонные ячейки, с которыми мы ищем совпадения
'  это не нужно для работы, просто для наглядности
    Range("BJ6:BO6").Copy
    Range("D8").PasteSpecial xlPasteFormats
    Range("D8").PasteSpecial xlPasteValues

i = 9
Do While CounterCell.Value < 500#
    CounterCell.Value = CounterCell.Value + 0.01
    If [as6] > 3 Then
    Cells(i, 1) = [A1]
    Cells(i, 2) = [as6]

    Set r = Range("BC6:BH6")
    Set dest = Range(Cells(i, 4), Cells(i, 9))
    dest.Value = r.Value

        i = i + 1
    End If
Loop

Application.ScreenUpdating = True

End Sub
запустите его на выполнение,подождите ~15 секунд, пока макрос не закончит работу.

теперь пояснения.
1) это просто тупой пример, нарисованный "на коленке"
2) диапазон там сделан от 0 до 500 для того, чтобы увидеть результат (не ждать три месяца)
3) это всё БЫДЛО-подход. по хорошему на листе ничего вычислять не надо, все вычисления нужно переносить внутрь кода, это позволит ускорить выполнение на порядок (если не на порядки).
4) в этом примере кода проверяется только один параметр - ячейка AS6, в которой подсчитывается количество совпадений из диапазона BC6:BH6 с эталонным диапазоном BJ6:BO6
при совпадении любых 4 и более чисел - значение счетчика записывается в столбец А, количество совпадений - в столбец B, ну и содержимое диапазона BC6:BH6 тоже сохраняется (хотя оно вторично и может быть получено исходя из счётчика).
всё.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 27.09.2018, 15:12   #23
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

вся фишка в том, что приведенный в самом начале код счетчика НЕ ДЕЛАЕТ НИЧЕГО, ТОЛЬКО СЧИТАЕТ сбрасывает значение в А1

а Вас спрашивают; "а Вам-то что нужно???"
и пока Вы не удосужитесь обьяснить - ни кто ни чем не поможет, потому что никто ничего не понимает!
(ну может никто ничего - это я загнул, но лично я ничем помочь не могу пока не понимаю задачи)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете

Последний раз редактировалось IgorGO; 27.09.2018 в 15:14.
IgorGO вне форума Ответить с цитированием
Старый 27.09.2018, 16:30   #24
Leon307
Пользователь
 
Регистрация: 26.09.2018
Сообщений: 19
По умолчанию

Спасибо огромное!!!
Все работает просто супер! Теперь смогу копать по своим требованиям. А насчет написания кода в программе... А вы можете это сделать с оплатой? Могу просто поделиться своими соображениями, но это лучше через э-майл.
Leon307 вне форума Ответить с цитированием
Старый 27.09.2018, 16:32   #25
Leon307
Пользователь
 
Регистрация: 26.09.2018
Сообщений: 19
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
вся фишка в том, что приведенный в самом начале код счетчика НЕ ДЕЛАЕТ НИЧЕГО, ТОЛЬКО СЧИТАЕТ сбрасывает значение в А1

а Вас спрашивают; "а Вам-то что нужно???"
и пока Вы не удосужитесь обьяснить - ни кто ни чем не поможет, потому что никто ничего не понимает!
(ну может никто ничего - это я загнул, но лично я ничем помочь не могу пока не понимаю задачи)
Я подробно расписал что нужно в предидущих постах:
Уважаемый Serge_Bliznykov!
В приложенном файле Excel в ячейке A1 работает счетчик, макрос которого приведен в первом сообщении. Эта ячейка (А1) является множителем для для других ячеек, в которых записаны формулы. По мере работы счетчика значения ячеек меняются. Целью этих изменений является генерация чисел в строке BC6:BH6. Сгенерированные числа сравниваются с постоянными числами в строке BJ6:BO6. При совпадении 4 любых из 6 сгенерированных чисел с постоянными числами строки BJ6:BO6 занчение счетчика записывается в ячейку AR6,
При совпадении 5 любых чисел - значение счетчика записывается в ячейку AT6
При совпадении 5 первых чисел - в ячейку CC6
5 последних чисел - в ячейку CD6
При полном совпадении всех 6 чисел, значение счетчика записывается в ячейке CB6.
Точно такая же ситуация происходит и с ячейками DW6, DZ6, FH6, FI6, FJ6 в которых записываются показания счетчика при сравнении сгенерированных чисел в строке EI6:EN6 с числами строки EQ6:EV6.
Если запустить счетчик, то в моем случае при прохождении всего цикла в указанных ячейках будет записан только последний результат, А мне необходимы все возможные результаты. Поэтому я и прошу подсказать, как можно записать все появляющиеся результаты показаний счетчика в соответствующем листе (название листа соответствует номеру ячейки из которой необходимо произвести запись). Запись на листе должна вестись в строку, начиная с ячейки A6 и далее в строке 6. Сколько будет таких совпадений - неизвестно. В приложенном файле только одна строка, а у меня таких строк больше 1000. Полный цикл расчетов на моем компе займет более 100 суток, но это лирика. Огромное Вам спасибо за внимание к моему вопросу! Прилагаю свой файл еще раз. В нем Вы можете увидеть, что при работе счетчика от 0 до 361,8 в ячейках AR6 и DW6 появились показания счетчика, при которых 4 из 6 сгенерированных чисел совпали с 4 из 6 постоянных чисел.
Leon307 вне форума Ответить с цитированием
Старый 27.09.2018, 17:07   #26
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Сообщение от Leon307 Посмотреть сообщение
Спасибо огромное!!!
Большое пожалуйста.


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

Успехов в подборе!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 01.10.2018, 15:46   #27
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Сообщение от bothke Посмотреть сообщение
а можно к Вам тоже обратиться с вопросом? как я вижу, вы большой специалист по программе Excel.
Во-первых, я десятой части не знаю того, что знают реальные специалисты по Excel, кои бывают на этом форуме. Вот, например, чтобы далеко не ходить, IgorGO является высококлассным специалистом. я у него многому учусь, но мне до его уровня далеко.

Во-вторых, для того, чтобы обратиться со своей проблемой, нужно в нужном разделе (например, в Microsoft Office Excel) создать свою тему, присвоить ей корректный заголовок (см. правила форума) и описать свою задачу/проблему. Если надо, то приложить к сообщению файл/файлы.

в чужой теме не надо обсуждать. Это и не хорошо и запрещено правилами.
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сравнение данных по определенному диапазону строк и при совпадении значений копирование данных в другой лист Volk358 Microsoft Office Excel 6 02.10.2012 09:54
Перенос данных на другой лист tgm Microsoft Office Excel 0 06.08.2012 21:43
перенос данных на другой лист vorimid Microsoft Office Excel 11 03.06.2012 19:23
перенос данных на другой лист Jonny B Microsoft Office Excel 15 26.04.2011 09:16
Перенос данных на другой лист Palomnik1096 Microsoft Office Excel 5 20.12.2010 15:12