Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/изменение значения ячеек при изменении одной ячейки - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
изменение значения ячеек при изменении одной ячейки
marokanin Дата: Среда, 17.02.2016, 10:50 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Добрый день!
Ситуация следующая: есть несколько ячеек сумма значений которых должна равняться 100. Нужно чтобы при изменении значения одной ячейки были изменены значения и в других ячейках. Желательно чтобы значения в других ячейках были пересчитаны равно пропорционально (или если это возможно как запасной вариант с отдельным назначением пропорций изменения).
К сожалению на форуме подобной темы не нашёл, но если она есть просьба тапком не бить)
С уважением,
marokanin
 
Ответить
СообщениеДобрый день!
Ситуация следующая: есть несколько ячеек сумма значений которых должна равняться 100. Нужно чтобы при изменении значения одной ячейки были изменены значения и в других ячейках. Желательно чтобы значения в других ячейках были пересчитаны равно пропорционально (или если это возможно как запасной вариант с отдельным назначением пропорций изменения).
К сожалению на форуме подобной темы не нашёл, но если она есть просьба тапком не бить)
С уважением,
marokanin

Автор - marokanin
Дата добавления - 17.02.2016 в 10:50
SLAVICK Дата: Среда, 17.02.2016, 12:01 | Сообщение № 2
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация: 766 ±
Замечаний: 0% ±

2019
marokanin, на сайте можно пользоватся поиском
Например сразу нашло эту тему и эту - по моему идентичны с Вашим вопросом.


Иногда все проще чем кажется с первого взгляда.
 
Ответить
Сообщениеmarokanin, на сайте можно пользоватся поиском
Например сразу нашло эту тему и эту - по моему идентичны с Вашим вопросом.

Автор - SLAVICK
Дата добавления - 17.02.2016 в 12:01
marokanin Дата: Среда, 17.02.2016, 15:56 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Если честно, то в предложенных ссылках не то, что я ищу. есть 7 ячеек, сумма всегда должна быть равна 100. Хотелось бы узнать возможно ли сделать так чтобы при изменении любой из ячеек - в большую или меньшую сторону, значения остальных ячеек были бы пропорционально пересчитаны.
Не хочу Вас обидеть, но в предложенных Вами ссылках решаются другие задачи.
[moder]Показывайте в файле как есть и как должно быть.[/moder]


Сообщение отредактировал Manyasha - Среда, 17.02.2016, 17:01
 
Ответить
СообщениеЕсли честно, то в предложенных ссылках не то, что я ищу. есть 7 ячеек, сумма всегда должна быть равна 100. Хотелось бы узнать возможно ли сделать так чтобы при изменении любой из ячеек - в большую или меньшую сторону, значения остальных ячеек были бы пропорционально пересчитаны.
Не хочу Вас обидеть, но в предложенных Вами ссылках решаются другие задачи.
[moder]Показывайте в файле как есть и как должно быть.[/moder]

Автор - marokanin
Дата добавления - 17.02.2016 в 15:56
marokanin Дата: Четверг, 18.02.2016, 10:12 | Сообщение № 4
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Прилагаю файл с пояснением
К сообщению приложен файл: 3841714.xlsx (8.7 Kb)
 
Ответить
СообщениеПрилагаю файл с пояснением

Автор - marokanin
Дата добавления - 18.02.2016 в 10:12
Wasilich Дата: Четверг, 18.02.2016, 10:22 | Сообщение № 5
Группа: Друзья
Ранг: Старожил
Сообщений: 1232
Репутация: 326 ±
Замечаний: 0% ±

2003
чтобы при изменении значения одной ячейки были изменены значения и в других ячейках
Заменить значения, формулами не возможно. Нужен макрос.
 
Ответить
Сообщение
чтобы при изменении значения одной ячейки были изменены значения и в других ячейках
Заменить значения, формулами не возможно. Нужен макрос.

Автор - Wasilich
Дата добавления - 18.02.2016 в 10:22
marokanin Дата: Четверг, 18.02.2016, 11:24 | Сообщение № 6
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
понятно=( Очень жаль.
 
Ответить
Сообщениепонятно=( Очень жаль.

Автор - marokanin
Дата добавления - 18.02.2016 в 11:24
Manyasha Дата: Четверг, 18.02.2016, 11:50 | Сообщение № 7
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация: 901 ±
Замечаний: 0% ±

Excel 2010, 2016
marokanin, если решение макросом подходит, то можно так
[vba]
Код
Dim curVal
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, Range("f3:f9")) Is Nothing Then
        diff = Target.Value - curVal
        Application.EnableEvents = False
        For Each cell In Range("f3:f9")
            If cell.Address <> Target.Address Then cell.Value = cell.Value - diff / 6
        Next cell
        Application.EnableEvents = True
    End If
End Sub
[/vba][vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, Range("f3:f9")) Is Nothing Then
        curVal = Target.Value
    End If
End Sub
[/vba]
К сообщению приложен файл: 3841714-1.xlsm (14.8 Kb)


ЯД: 410013299366744 WM: R193491431804
 
Ответить
Сообщениеmarokanin, если решение макросом подходит, то можно так
[vba]
Код
Dim curVal
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, Range("f3:f9")) Is Nothing Then
        diff = Target.Value - curVal
        Application.EnableEvents = False
        For Each cell In Range("f3:f9")
            If cell.Address <> Target.Address Then cell.Value = cell.Value - diff / 6
        Next cell
        Application.EnableEvents = True
    End If
End Sub
[/vba][vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, Range("f3:f9")) Is Nothing Then
        curVal = Target.Value
    End If
End Sub
[/vba]

Автор - Manyasha
Дата добавления - 18.02.2016 в 11:50
marokanin Дата: Четверг, 18.02.2016, 12:00 | Сообщение № 8
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Manyasha, Большое спасибо за макрос который идеально подходит!

Если позволите, задам вопрос по макросу. Если количество полей будет изменяться, соответственно в данном макросе будет необходимо изменять параметры Range и diff / @number@?

+ А как сделать так, чтобы числа не уходили в отрицательные значения?


Сообщение отредактировал marokanin - Четверг, 18.02.2016, 12:04
 
Ответить
СообщениеManyasha, Большое спасибо за макрос который идеально подходит!

Если позволите, задам вопрос по макросу. Если количество полей будет изменяться, соответственно в данном макросе будет необходимо изменять параметры Range и diff / @number@?

+ А как сделать так, чтобы числа не уходили в отрицательные значения?

Автор - marokanin
Дата добавления - 18.02.2016 в 12:00
Manyasha Дата: Четверг, 18.02.2016, 12:05 | Сообщение № 9
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация: 901 ±
Замечаний: 0% ±

Excel 2010, 2016
количество полей будет изменяться
часто будет меняться? Если да, то тогда можно создать именованный диапазон, чтобы код все время не править.

изменять параметры Range и diff / @number@?
да, все верно.


ЯД: 410013299366744 WM: R193491431804
 
Ответить
Сообщение
количество полей будет изменяться
часто будет меняться? Если да, то тогда можно создать именованный диапазон, чтобы код все время не править.

изменять параметры Range и diff / @number@?
да, все верно.

Автор - Manyasha
Дата добавления - 18.02.2016 в 12:05
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!