Выбрать дату в календареВыбрать дату в календаре

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

или тему закрыть и стартануть по "новой"
с новым названием, но каким?

генератор случайных последовательностей коррелирующих между собой?

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

вечерами с сыном записывали, через какой шаг повторяется
и обнаружили, что диск №7 имеет следующую последовательность 1.2.5.2.2.1.3.2.2.1.1.1.7 (шаги №№2и9 между вращением)
и он повторяется снова и снова, а вот его брат близнец диск №4 имеет такую последовательность 2.2.1.1.2.2.2.1.4.1.2.3.7
остальные вроде и есть последовательность но она как бы местами изменяется и шагов побольше между вращением

вот наглядно ходы
Изменено: Валерий Н - 16.01.2024 11:52:05
Генератор случайных последовательностей коррелирующих между собой., Счетчик (спидометра) "хитрый" , как в старом электросчетчике.
 
тут пытаюсь изложить мысль:

https://www.planetaexcel.ru/forum/index.php?PAGE_NAME=message&FID=1&TID=162270&a...


счетчик - ротор копирую (делаю подобие) от Фиалки М-125

по началу показалось все просто, механику понимаю, но как реализовать в эксель?

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

Изменено: Валерий Н - 16.01.2024 06:44:02
Генератор случайных последовательностей коррелирующих между собой., Счетчик (спидометра) "хитрый" , как в старом электросчетчике.
 
Тема с счетчиком не прояснилась....
Оригинальный счетчик прям рулетка какая-то

Выяснил для полного цикла счетчика

вот такой алгоритм:



слева шаги счетчика
желтые двигаются назад
зеленые вперед
2 и 9 двигаются с каждым шагом
остальные двигаются если сделано указанное в столбиках количество шагов
цикл каждого "колеса" равен 31 начинается с 1.
может и между собой как то связаны но я особо не выявил
в таблице указана стартовая позиция 1.2.3.4.5.6.7.8.9.10
но можно ее сделать любую.
по пробую прогнать стартовую позицию 1.1.1.1.1.1.1.1.1.1.1.
Изменено: Валерий Н - 15.01.2024 20:13:59
Генератор случайных последовательностей коррелирующих между собой., Счетчик (спидометра) "хитрый" , как в старом электросчетчике.
 
проблема с тестированием, думаю прикрутить секундомер который будет перебирать цифры от 1 до 5000 или более

странное поведение счетчика когда набираешь 31 все остальные показывают 1

когда добавил на остальных по 31 вроде что то изменилось

ПС

когда набрал 32 все показывают 1

ох уж эта математика!!!
Изменено: Валерий Н - 13.01.2024 15:06:02
Генератор случайных последовательностей коррелирующих между собой., Счетчик (спидометра) "хитрый" , как в старом электросчетчике.
 
и снова я в формулах запутался

в общем 1й разряд листается от 1 до 31

нужно что бы переходил 2й разряд когда у первого разряда 5,15,20,25,31
и так с последующими
...
и не совсем дошло как реализовать реверс от 31 до 1 ?
Генератор случайных последовательностей коррелирующих между собой., Счетчик (спидометра) "хитрый" , как в старом электросчетчике.
 
В3=0 это не правильно, начинается с 1
нуля в начальном состоянии нет стартовое состояние счетчика 1111111111
сейчас понял, что нужно в счетчик еще изменить.
нужно, что бы цифры чаще менялись:
скажем второй разряд через 6 знаков первого.
второй разряд зацепляет не только третий разряд но и четвертый.

прикрепил исправленный файл
и главное чтобы ноль на счетчике не появлялся
Изменено: Валерий Н - 12.01.2024 11:06:01
Генератор случайных последовательностей коррелирующих между собой., Счетчик (спидометра) "хитрый" , как в старом электросчетчике.
 
для моих исследований у счетчика оказался очень длинный ход...

в общем следующий разряд желательно перескакивал на 6-м ходу а последующие разряды и того меньше...

можно по короче формулы сделать?

и как реверс реализовать?

Счетчик.xlsx (11.47 КБ)
Изменено: Валерий Н - 11.01.2024 19:28:19
Генератор случайных последовательностей коррелирующих между собой., Счетчик (спидометра) "хитрый" , как в старом электросчетчике.
 
допустим в ячейку В3 пришло число 66
в счётчике в младшем разряде пишет  4 (так как 66-62=4)
=ОСТАТ(B3-1;31)+1 пусть вот эта формула младшего разряда
формулу последующих разрядов не могу придумать
в следующем разряде 3 (т.к. 1 уже стояла, а 62 это два раза по 31)
66:31=2 (с остатком) то есть + 2 к предыдущему значению как то

ФОРМУЛА для второго разряда
Код
=ЕСЛИ(B3<32;1;ЧАСТНОЕ(B3;31)+1)
до 32ух считает как нужно, выше фигня идет

ПРИМЕР

Счетчик.xlsx (11.32 КБ)

правда верно показал с числом 32  :cry:  
Изменено: Валерий Н - 11.01.2024 18:53:22
Генератор случайных последовательностей коррелирующих между собой., Счетчик (спидометра) "хитрый" , как в старом электросчетчике.
 
Цитата
написал:
ОСНОВАНИЕ
а если офис 2007 ????
Генератор случайных последовательностей коррелирующих между собой., Счетчик (спидометра) "хитрый" , как в старом электросчетчике.
 
Алексей Абраменко,  почти оно

там арифметика, я то же в этом направлении копался.
единственное если ставлю 1 то в начальной ячейке выводит 2
это получается 32ричная система счисления, нужно вспомнить школьный курс информатики
без нуля...
Изменено: Валерий Н - 11.01.2024 17:01:11
Генератор случайных последовательностей коррелирующих между собой., Счетчик (спидометра) "хитрый" , как в старом электросчетчике.
 
Могу не правильно изъясняться, мысли опережают речь



тогда опишу по другому

нужно два счетчика один будет считать нормально
а второй на убывание (назад)

хитрость что бы в ячейках последовательно менялись цифры
скажем первое колесо отсчитало от 1 до 31 второе сделало один шаг


Изменено: Валерий Н - 11.01.2024 14:00:49
Генератор случайных последовательностей коррелирующих между собой., Счетчик (спидометра) "хитрый" , как в старом электросчетчике.
 
в ячейку В3 поступают числа по порядку 1,2,3,и т.д.
в ячейке В4 идет циклический счет по 31

в общем нужен счетчик у которого четные колеса крутятся вперед нечетные назад
цифры на колесах от 1 до 31
всего 10 колес
второе колесо и девятое самые быстрые
второе колесо совершив "оборот" поворачивает (вперед) на одно значение четвертое и т.д. четные до 10
девятое колесо совершив "оборот" поворачивает (назад) на одно значение седьмое колесо и т.д. до 1
в общем тут два счетчика которые запускает одна ячейка
может функцией ОСТАТ реализовать?
пример задумки:
Счетчик.xlsx (12.46 КБ)
Шифровальная машина методом замены, Эмуляция код машины в Exel
 
Здравствуйте Форумчане!
Долго вынашивал проект шифровальной код машины, хотел с эмулировать ФИАЛКА М125
но все пошло по своему.
Админам - может куда пристроить эту тему отдельно???

Описание Файла код машины:
1. Лист ШИФР набивается текст в текстбокс, шифрованный получаем слева
в верхних ячейках счет буквам, ширина шифровки в буквах, текущая буква на шифрование, закодированная буква
2. Лист РАСШИФР аналогичен листу шифр только для расшифровки тескта
3. Лист КЛЮЧ сюда заполняются ключи
4. ОСЬ сюда приходят буквы из листа ШИФР (РАСШИФР) и согласно первой строке листа КЛЮЧ распределяются "ДИСКИ" массивы отсюда же зашифрованные буквы попадают на листы ШИФР (РАСШИФР)
5. Лист МОТОР задает дискам (массивам) вращение
6. Листы А,Б,В,Г,Д,Е,Ж,И,Й шифруют букву в последовательности заданной 1й строкой ключа, смещается массив по заданию листа МОТОР,
смещаются заголовки по заданию листа КЛЮЧ  
7. Лист РЕФ (отражатель) который по прохождении буквы всех 10 дисков отправляет ее обратно через них предварительно зашифровав согласно КЛЮЧа рефлектор.

FIALKA2024R8DR.xlsm (299.65 КБ)

ПРОБЛЕМЫ (задачи)
1. проблема стала в том что если набиваешь букву А через 31 символ возникает цикл, что не допустимо в шифровании
2.  не смог сообразить как зашифровать пробел
3. шифровать не только в буквы, но и в двухзначные числа
4. зашифрованный текст имеет вид групп по 5 букв
пример (фиалка м125):
ЦПХРЙ ЮАРЬЕ ЕМХЛЖ СЖСТН
текст
с новым годом друзья
ключ
0
А Б В Г Д      Е Ж З И К
А А А А А      А А А А А
А Б В Г Д      Е Ж З И К
1 1 1 1 1      1 1 1 1 1
А А А А А      А А А А А

Замысел:
Шифрование происходит методом замены (Виженера)
но с вводом новой буквы происходит сдвиг в таблице, этих таблиц десять т.е. после ввода буква шифруется 10 раз потом еще 1 раз в рефлекторе и снова 10 раз в таблицах и потом уже выводится (отображается).

https://www.youtube.com/watch?v=J3FR-gBeUj4

ошибку нашел! Мотор не правильно крутит
нужен алгоритм движения в массивах
Изменено: Валерий Н - 11.01.2024 09:35:02
перемешать карты (буквы)
 
Алексей Абраменко, Спасибо!!!
Но есть вопрос, решил убрать один символ и квадрат "поехал",
а именно Ъ


ПС
поправил в формуле значение на 31 и все встало на свои места
Изменено: Валерий Н - 08.01.2024 11:29:51
перемешать карты (буквы)
 
Как перемешать буквы, каждая в отдельной ячейке?
есть некий диапазон из 33х ячеек
скажем от А до Я нужно перемешать. (с РНД повторы случаются)

и под вопрос а если это квадрат, возможно ли в квадрате перемешать, что бы буквы не повторялись и по вертикале и по горизонтали?
Изменено: Валерий Н - 07.01.2024 23:56:52
Последовательность операций с данными по условию
 
Павел \Ʌ/, Вы правы!!! Пытаюсь изменить формулу под свои задачи,
ругается нельзя изменить часть массива

это формулы вне таблицы лист А
Последовательность операций с данными по условию
 
БМВ, на странице СВОД две таблицы.

2я таблица собирает данные из листов: А,Б,В,...Й
1я таблица сортирует порядок обработки данных
желтым выделил поступающие данные синим исходные (результат)
на листах такая же рассветка

на каждом листе (АБВГДЕЖЗИЙ) происходит определенная обработка данных.
Последовательность операций с данными по условию
 
имеем несколько таблиц с данными
зависимость данных от предыдущей таблицы и последующей за ней.
допустим на сводную таблицу поступило три числа 5, 12 и 3
имеем несколько таблиц(страниц)на которых происходит своя операция с данными
ответы видим на сводной странице, последовательность по таблице тоже можем задать
как отправлять исходные данные на нужную страницу для обработки?
на примере входящие данные сначала должны поступить в таблицу Б, из Б в А, из А в Й и уже потом результирующий выход

получается на странице ТАБЛ нижнюю таблицу тоже нужно "учить" принимать данные по условию...
Изменено: Валерий Н - 07.01.2024 07:57:25
изменение порядка столбцов в таблице по условию
 
так и есть!!! Все правильно
изменение порядка столбцов в таблице по условию
 
имеется исходная таблица, в ней 20 столбцов данных
нужно менять какие столбцы в начале какие в конце по условию
данные разбиты по индексам от А до Й (10 индексов)
конечная таблица по кол-ву строк и столбцов такая же
но вверху набирается буквы: А,Б,В,Г,Д,Е,Ж,З,И,Й (в любой заданной последовательности) но главное без повторов
и в итоговой таблице столбцы выстраиваются согласно указанных индексов

жегар.xlsx (12.06 КБ)
Упорядочить по условию, (скопировать) по заданному порядку, создание итоговой таблицы из маленьких
 
.
Изменено: Валерий Н - 05.01.2024 13:02:17
Счетчик циклический
 
на картинке алгоритм изменения трех ячеек А1 А2 А3
т.е. если набрали в ячейке А1 "8", то в ячейке А2 будет "4", а в А3 "1"

по второй ячейке так:
Код
=ОСТАТ(A1-1;5)+1

в ячейке А3
Код
=ВПР(А2;$D$1:$E$5;2;0)
Изменено: Валерий Н - 04.01.2024 17:14:42
Счетчик циклический
 
почти... наверное
нужно что бы изменялась одна ячейка по алгоритму указанному в таблице:
Изменено: Валерий Н - 04.01.2024 16:08:05
Счетчик циклический
 
Цитата
написал:
Чёт нифига не понятно
в ячейке А1 значения меняются по нарастающей 1, 2, 3, 4, 5, ... итак до бесконечности
а в ячейке В1 по формуле исчисляя от А1 так: 1, 2, 3, 1, 2, 3, 1, 2, и т.д. (циклично)

под задача
а в ячейке С1 исчисляя от А1 : 2,1,3,2,1,3,2,1,3, и т.д. циклично

ПыСы
из-за праздников и гриппа формула в голову не лезет... или не в лазит
Изменено: Валерий Н - 04.01.2024 15:45:24
Счетчик циклический
 
а еще подзадача

а можно второй счет сделать не последовательны,
не то что бы не последовательным а со своим порядком
1 2 3 4 5 6 7 8 9 10 12
2 1 3 2 1 3 2 1 3 2 1 3  
Счетчик циклический
 
в первой ячейки меняется значение от 0-1000 и более
нужна вторая ячейка которая счет ведет от первой 1-30 и потом снова 1-30 и никогда больше (исходя из счета первой ячейки)
вроде простая математическая загадка а решить не получается

Пример упрощённо:
1 2 3 4 5 6 7 8 9 10 12
1 2 3 1 2 3 1 2 3 1 2 3
Изменено: Валерий Н - 04.01.2024 15:36:26
Мессенджер в Exel, форма отправки и приема текста
 
куда вставить
Код
kSim = VBA.Len(Me.Range("AA1").Value)
????
Мессенджер в Exel, форма отправки и приема текста
 
правил правил и не поправил

Как в диапазон Rg1 закидывать из ячейки АА1?
Код
Private Sub TBox1_Change()
    ' Объявление переменных
    Dim Rg1 As Range          ' Переменная для хранения диапазона ячеек
    Dim kSim As Long, kSt As Long     ' Переменные для хранения целочисленных значений
    Static kSMax As Long     ' Статическая переменная для отслеживания максимальной длины
    
    ' Получение значения из ячейки Y1 и присвоение его переменной kSt
    kSt = Me.Range("Y1").Value
    
    ' Задание диапазона Rg1 для включения ячеек от A2 до указанной ширины в kSt
    Set Rg1 = Me.Range("A2").Resize(, kSt)

    ' Получение длины текста в TBox1 и присвоение ее переменной kSim
    kSim = Len(Me.TBox1.Text)
    
    ' Задание значения ячейки Z1 последним символом текста в TBox1
    Me.Range("Z1").Value = Right(Me.TBox1.Text, 1)
    
    ' Проверка, если длина текста больше или равна предыдущей максимальной длине (kSMax)
    If kSim >= kSMax Then
        ' Задание значения ячейки в Rg1, соответствующей текущей длине, последним символом текста в TBox1
        Rg1.Cells(kSim) = Right(Me.TBox1.Text, 1)
    Else
        ' Очистка содержимого ячейки в Rg1, соответствующей предыдущей максимальной длине
        Rg1.Cells(kSMax).ClearContents
    End If
    
    ' Присвоение текущей длины переменной kSMax
    kSMax = kSim
    
    ' Задание значения ячейки X1 количеству символов, введенных в TBox1
    Me.Range("X1").Value = kSim
End Sub



ICQ.xlsm (21.25 КБ)
Мессенджер в Exel, форма отправки и приема текста
 
Не получается...
поправьте код, пожалуйста, шаманы!!!

Ексаська.xlsm (20.44 КБ)
Сохранение файла с помощью VBA с названием ячейки
 
тоже сохраняю, но имя файла усложнил № дока из ячейки нужно вставить а дату текущую
Код
Sub сохранить_лист()
    Dim awb As Workbook, sh As Worksheet, sFilename$
    Application.DisplayAlerts = True
    Application.CopyObjectsWithCells = False
    Application.ScreenUpdating = False
    For Each sh In ThisWorkbook.Worksheets
        If awb Is Nothing Then
            sh.Copy
            Set awb = ActiveWorkbook
        Else
            sh.Copy After:=awb.Sheets(awb.Sheets.Count)
        End If
    Next
    sFilename = Replace(ThisWorkbook.FullName, "Отчет", "Отчет № от" & Format(Date, "dd mmmm yyyy"))
    Mid(sFilename, Len(sFilename), 1) = "x"
    awb.SaveAs sFilename, xlOpenXMLWorkbook
    awb.Close False
    Application.DisplayAlerts = True
    Application.CopyObjectsWithCells = True
    Application.ScreenUpdating = True
End Sub


№ отчета из ячейки К4

понимаю что нужно вставить после № Range("B4") но как???
Код
sFilename = Replace(ThisWorkbook.FullName, "Отчет", "Отчет №", Range("B4"), "от" & Format(Date, "dd mmmm yyyy"
Изменено: Валерий Н - 15.12.2023 07:38:24
Страницы: 1 2 3 След.
Наверх