uForum.uz

uForum.uz (https://uforum.uz/index.php)
-   Разное/IT (https://uforum.uz/forumdisplay.php?f=398)
-   -   Microsoft Excel - прикладные задачки (https://uforum.uz/showthread.php?t=7748)

ratheon 17.04.2014 18:49

Цитата:

Сообщение от Asmirnov5 (Сообщение 989870)
как такое сделать?
.....

через VBA

JH 17.04.2014 18:50

Вложений: 1
Цитата:

Сообщение от Asmirnov5 (Сообщение 989870)
как такое сделать?

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

2014
2015
2016
... итд

2) справа от каждой ячейки вычисляется и отображается сумма всех цифр (без учета разрядов), например 2014=2+0+1+4

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

Shomurodov Shohruh 17.04.2014 18:54

Цитата:

Сообщение от Asmirnov5 (Сообщение 989870)
1) при вводе произвольного 4 значного числа в ячейку, под ним генерируется в столбик всех значений равных введенному числу с шагом +1

Первое что пришло в голову, это под ячейкой пишите формулу типа "A2=A1+1" и его тянете до нужной строки, т.к. до нужного предела. А вот справа чтобы отобразилось тоже надо написать формулу, которая вычисляла бы разряды и складывала бы. Не знаю, существует ли функция которая вычисляла бы разряды, в лоб можно делением на 1000, 100, 10 и и отбирая целые части посчитать.

Nadir Zaitov 17.04.2014 18:54

Вложений: 1
Или так. Только объясните зачем вам эта фигня?

Nadir Zaitov 17.04.2014 18:59

Цитата:

Сообщение от JH (Сообщение 989873)
Ловите. Второй параметр в функции TEXT можно опустить, я его поставил для того чтобы заполнять нулями первые три позиции в случае ввода нечетырехзначного числа.

По этой же причине я работал с остатком от деления на 10000. Если введут непонятное число, то вырежется именно 4 разряда (единицы, десятки, сотни и тысячи).

Asmirnov5 17.04.2014 19:06

Цитата:

Сообщение от JH (Сообщение 989873)
Цитата:

Сообщение от Asmirnov5 (Сообщение 989870)
как такое сделать?

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

2014
2015
2016
... итд

2) справа от каждой ячейки вычисляется и отображается сумма всех цифр (без учета разрядов), например 2014=2+0+1+4

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

спасибо. а если чуть сложнее?

имеются три ячейки. в первую вносится число дня (от 1 до 30 (31) (ну и до 29 для февраля високосных годов)), во вторую номер месяца (1-12), в третью - год.

1) должна генерироваться сумма всех чисел без учета разряда, например: 17.04.2014 = 1+7+0+4+2+0+1+4

2) в столбцах под ячейками автоматом выстраиваются календарная последовательность дней (от 1 до 30 и 31(там где нужно) или до 29 с учетом високосности года), месяцев (шаг+1 от 1 до 12 с повтором) и годов (шаг +1).

17 04 2014
...
01 12 2014
...
01 01 2015

итд

то бишь с годами понятно теперь, но с циклом по типу 1-30 (или 31 или 29) нет

JH 17.04.2014 19:24

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

JH 17.04.2014 19:29

Вложений: 1
Вот, короче. Принцип, думаю, ясен, дальше крутите как хотите.

(Мучавшая вас проблема дней в месяце решается автоматически прибавлением единицы к предыдущей дате)

Немой 17.04.2014 19:53

Зачётная тема. Обычно я подобные задачи решаю через VBS. Но, тем не менее, в использовании формул есть свои плюсы.
NZ, мне очень понравилось твоё решение примера с задачами по вычитанию. Изящно.

Asmirnov5 17.04.2014 20:32

Цитата:

Сообщение от JH (Сообщение 989886)
Вот, короче. Принцип, думаю, ясен, дальше крутите как хотите.

(Мучавшая вас проблема дней в месяце решается автоматически прибавлением единицы к предыдущей дате)

спасибо. каждый раз по достижении 12-го месяца будет прибавляться +1 к году?

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

Кому интересно зачем - просто прочел книгу по нумерологии, стало интересно разложить значения.


Текущее время: 18:36. Часовой пояс GMT +5.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd. Перевод: zCarot
OOO «Единый интегратор UZINFOCOM»