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

 

= Мир MS Excel/Как автоматически присвоить ячейке отрицательное значение? - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
Как автоматически присвоить ячейке отрицательное значение?
Progma Дата: Вторник, 26.02.2013, 15:08 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Добрый день. Нужна подсказка. Есть необходимость присваивать однной ячейке, имеющей числовой формат, отрицательное значение, если в другой ячейке есть надпись "расход". Т.е. не хочется каждый раз нажимать знак "-" перед вводом цифры. Хочу, чтобы цифра автоматически появлялась со знаком минус, если в предстоящей ячейке стоит "расход".


Progma
 
Ответить
СообщениеДобрый день. Нужна подсказка. Есть необходимость присваивать однной ячейке, имеющей числовой формат, отрицательное значение, если в другой ячейке есть надпись "расход". Т.е. не хочется каждый раз нажимать знак "-" перед вводом цифры. Хочу, чтобы цифра автоматически появлялась со знаком минус, если в предстоящей ячейке стоит "расход".

Автор - Progma
Дата добавления - 26.02.2013 в 15:08
RAN Дата: Вторник, 26.02.2013, 15:11 | Сообщение № 2
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Пишите макрос.


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеПишите макрос.

Автор - RAN
Дата добавления - 26.02.2013 в 15:11
Michael_S Дата: Вторник, 26.02.2013, 15:14 | Сообщение № 3
Группа: Друзья
Ранг: Старожил
Сообщений: 2012
Репутация: 373 ±
Замечаний: 0% ±

Excel2016
Автоматически - только макросом.
Но скорее всего - неверно поставлена задача.
 
Ответить
СообщениеАвтоматически - только макросом.
Но скорее всего - неверно поставлена задача.

Автор - Michael_S
Дата добавления - 26.02.2013 в 15:14
Serge_007 Дата: Вторник, 26.02.2013, 15:16 | Сообщение № 4
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Цитата (Progma писал(а)):
присваивать однной ячейке отрицательное значение

Цитата (Progma писал(а)):
цифра автоматически появлялась со знаком минус

Так присваивать (значение реально становится отрицательным)
или показывать со знаком минус (значение остаётся положительным)?


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
Цитата (Progma писал(а)):
присваивать однной ячейке отрицательное значение

Цитата (Progma писал(а)):
цифра автоматически появлялась со знаком минус

Так присваивать (значение реально становится отрицательным)
или показывать со знаком минус (значение остаётся положительным)?

Автор - Serge_007
Дата добавления - 26.02.2013 в 15:16
AlexM Дата: Вторник, 26.02.2013, 15:22 | Сообщение № 5
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация: 1130 ±
Замечаний: 0% ±

Excel 2003
Чтобы в заданной ячейке, например в А1, числа вводились только отрицательные необязательно проверять соседнюю ячейку.
Макрос в модуль листа

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then
Application.EnableEvents = False
Target.Value = -1 * Target.Value
Application.EnableEvents = True
End If
End Sub




Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
СообщениеЧтобы в заданной ячейке, например в А1, числа вводились только отрицательные необязательно проверять соседнюю ячейку.
Макрос в модуль листа
[vba]
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = "$A$1" Then Application.EnableEvents = False Target.Value = -1 * Target.Value Application.EnableEvents = Тrue End If End Sub
[/vba]

Автор - AlexM
Дата добавления - 26.02.2013 в 15:22
Progma Дата: Вторник, 26.02.2013, 15:48 | Сообщение № 6
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Serge_007,
Цитата (Serge_007 писал(а)):
Так присваивать (значение реально становится отрицательным)
или показывать со знаком минус (значение остаётся положительным)?

Значение должно и быть отрицательным и выглядеть как отрицательное


Progma
 
Ответить
СообщениеSerge_007,
Цитата (Serge_007 писал(а)):
Так присваивать (значение реально становится отрицательным)
или показывать со знаком минус (значение остаётся положительным)?

Значение должно и быть отрицательным и выглядеть как отрицательное

Автор - Progma
Дата добавления - 26.02.2013 в 15:48
Progma Дата: Вторник, 26.02.2013, 15:54 | Сообщение № 7
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

AlexM,
Мне нужно, чтобы именно при значенни A1="расход", в A2 попадало число с отрицательным значением, даже если я его ввела без знака "-". А при A1="приход", A2=положительному числу.


Progma
 
Ответить
СообщениеAlexM,
Мне нужно, чтобы именно при значенни A1="расход", в A2 попадало число с отрицательным значением, даже если я его ввела без знака "-". А при A1="приход", A2=положительному числу.

Автор - Progma
Дата добавления - 26.02.2013 в 15:54
AlexM Дата: Вторник, 26.02.2013, 16:00 | Сообщение № 8
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация: 1130 ±
Замечаний: 0% ±

Excel 2003
В макросе заменить вторую строку на

If Target.Address = "$A$2" And Range("A1") = "расход" Then




Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.


Сообщение отредактировал AlexM - Вторник, 26.02.2013, 16:01
 
Ответить
СообщениеВ макросе заменить вторую строку на
[vba]
If Target.Address = "$A$2" And Range("A1") = "расход" Then
[/vba]

Автор - AlexM
Дата добавления - 26.02.2013 в 16:00
Vaaano Дата: Четверг, 17.04.2014, 12:50 | Сообщение № 9
Группа: Гости
Умножить на "-1" почему не подходит?
 
Ответить
СообщениеУмножить на "-1" почему не подходит?

Автор - Vaaano
Дата добавления - 17.04.2014 в 12:50
AlexM Дата: Четверг, 17.04.2014, 13:03 | Сообщение № 10
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация: 1130 ±
Замечаний: 0% ±

Excel 2003
Умножить на "-1" почему не подходит
Подходит. Это и делает макрос в строке

Target.Value = -1 * Target.Value




Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
Сообщение
Умножить на "-1" почему не подходит
Подходит. Это и делает макрос в строке[vba]
Target.Value = -1 * Target.Value
[/vba]

Автор - AlexM
Дата добавления - 17.04.2014 в 13:03
Edward_M Дата: Четверг, 17.04.2014, 16:14 | Сообщение № 11
Группа: Пользователи
Ранг: Новичок
Сообщений: 16
Репутация: 4 ±
Замечаний: 0% ±

Excel 2010
Можно формулой, но появится дополнительный столбик
К сообщению приложен файл: 3064509.xlsx (9.4 Kb)
 
Ответить
СообщениеМожно формулой, но появится дополнительный столбик

Автор - Edward_M
Дата добавления - 17.04.2014 в 16:14
Riertis7137 Дата: Четверг, 05.01.2023, 20:14 | Сообщение № 12
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

AlexM, Привет! Нужна ваша помощь, макрос рабочий но можете подсказать как его адаптировать под обоасть. Допустим у меня массив с F6 по H8 и только в этом диапазоне нужно цифры конвертировать в отрицательные. Пробовал сам разобраться но не получается не зная синтаксиса как определить массив. Буду благодарен за подсказку!
 
Ответить
СообщениеAlexM, Привет! Нужна ваша помощь, макрос рабочий но можете подсказать как его адаптировать под обоасть. Допустим у меня массив с F6 по H8 и только в этом диапазоне нужно цифры конвертировать в отрицательные. Пробовал сам разобраться но не получается не зная синтаксиса как определить массив. Буду благодарен за подсказку!

Автор - Riertis7137
Дата добавления - 05.01.2023 в 20:14
Pelena Дата: Четверг, 05.01.2023, 21:34 | Сообщение № 13
Группа: Админы
Ранг: Местный житель
Сообщений: 19517
Репутация: 4632 ±
Замечаний: ±

Excel 365 & Mac Excel
Цитата Riertis7137, 05.01.2023 в 20:14, в сообщении № 12 ( писал(а)):
как его адаптировать под обоасть

примерно так

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("F6:H8")) Is Nothing Then
Application.EnableEvents = False
Target.Value = -1 * Target.Value
Application.EnableEvents = True
End If
End Sub



"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816


Сообщение отредактировал Pelena - Пятница, 06.01.2023, 22:33
 
Ответить
Сообщение
Цитата Riertis7137, 05.01.2023 в 20:14, в сообщении № 12 ( писал(а)):
как его адаптировать под обоасть

примерно так
[vba]
Private Sub Worksheet_Change(ByVal Target As Range)If Not Intersect(Target; Range("F6:H8")) Is Nothing ThenApplication.EnableEvents = FalseTarget.Value = -1 * Target.ValueApplication.EnableEvents = ТrueEnd IfEnd Sub
[/vba]

Автор - Pelena
Дата добавления - 05.01.2023 в 21:34
Riertis7137 Дата: Пятница, 06.01.2023, 22:14 | Сообщение № 14
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

Pelena, Привет! Попробовал, но ошибка синтаксиса.
К сообщению приложен файл: 6277079.png (4.7 Kb)
 
Ответить
СообщениеPelena, Привет! Попробовал, но ошибка синтаксиса.

Автор - Riertis7137
Дата добавления - 06.01.2023 в 22:14
Pelena Дата: Пятница, 06.01.2023, 22:32 | Сообщение № 15
Группа: Админы
Ранг: Местный житель
Сообщений: 19517
Репутация: 4632 ±
Замечаний: ±

Excel 365 & Mac Excel
Скобочку забыла

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("F6:H8")) Is Nothing Then
Application.EnableEvents = False
Target.Value = -1 * Target.Value
Application.EnableEvents = True
End If
End Sub



"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеСкобочку забыла
[vba]
Private Sub Worksheet_Change(ByVal Target As Range)If Not Intersect(Target; Range("F6:H8")) Is Nothing ThenApplication.EnableEvents = FalseTarget.Value = -1 * Target.ValueApplication.EnableEvents = ТrueEnd IfEnd Sub
[/vba]

Автор - Pelena
Дата добавления - 06.01.2023 в 22:32
mulbnat Дата: Суббота, 07.01.2023, 19:12 | Сообщение № 16
Группа: Пользователи
Ранг: Прохожий
Сообщений: 6
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
(сообщение удалено)


Сообщение отредактировал mulbnat - Суббота, 07.01.2023, 22:29
 
Ответить
Сообщение(сообщение удалено)

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

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