К примеру, в ячейке В1 есть такая формула: =ЕСЛИ(A1="огурец","зеленый",ЕСЛИ(A1="помидор","красный" ))
Я хочу иметь возможность записывать в эту ячейку свои данные. К примеру, я хочу написать в ячейку А1 слово «банан» а в В1 слово «желтый» - но при этом чтобы формула не удалилась. И как только в ячейке А1 опять появится слово «огурец» - хочу, чтобы в В1 слово «желтый» исчезло и появилось слово «зелёный». Ну в общем, такой вот пример. :)
Слышала что можно как-то макросы писать, но как – не умею. Буду очень рада если научите, или дадите ссылку на урок. В общем очень нужна помощь, руки опускаются… мозгов не хватает. :( :oops:
Решение Вашей задачи с помощью макроса (на примере 3-х овощей) в прикрепленном файле. Прочитать по макросам можно вот здесь: Что такое макрос и где его искать?
Современные языки программирования обязаны иметь встроенный метод ChuckNorris(), который возвращает нужные тебе данные из любого объекта, даже если их там нет...
Я так подозреваю, что VeroNika_xxxе не нужно вводить в В1 ни чего, просто она не может в ЕСЛИ прописать все условия. Хотя может быть я и не прав - поэтому и :?:
MerZ@vcheG, ЭТО ПРОСТО СУПЕР!!!! Пример обалденный! Я счастлива как слон! Впервые увидела макросы, даже попробовала добавить еще один вариант, и он сработал! Большущее вам спасибо!!! Есть же умные люди на земле!
А можно еще маленький вопросик? Как сделать чтобы этот макрос работал к примеру на многих ячейках. Скажем с А1 по А10 ?[/FONT]
Современные языки программирования обязаны иметь встроенный метод ChuckNorris(), который возвращает нужные тебе данные из любого объекта, даже если их там нет...
а куда эта тема перед этим исчезла? уже ж была она один раз, пару дней назад... и когда я доделал файлик с тем что вам было нужно, темы уже не было. если файл дома не удалил то вечером закину.
Вариант макроса по файлу пример проверяет что введенное значение дает ЛОЖЬ и или вставляет формулу млм очищает данные в соседней ячейке.
Код
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Not Intersect(Target, Range("A1:A10")) Is Nothing Then
Target.Offset(, 1).FormulaR1C1 = "=IF(RC[-1]=""огурец"",""зеленый"",IF(RC[-1]=""помидор"",""красный""))"
If Target.Offset(, 1).Value = False Then Target.Offset(, 1).ClearContents
End If
End Sub
ээээ нееее)))) там тема была не на примере огурцов и помидоров, а тоже самое только вместо помидоры огурцы было ноль, НЕноль )))) и она у меня была открыта во вкладке, а потом как доделал макрос, обновил страницу, было написано что тема не найдена.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim a$
a = Left(ActiveCell.Address(RowAbsolute:=False, ColumnAbsolute:=False), 1)
If a = "A" Then
ActiveCell.Offset(-1, 1).Formula = "=IF(RC[-1]=0,""ноль"",""НЕноль"")"
End If
End Sub
MerZ@vcheG, А зачем в своем коде Вы отдельно обращаетесь к ячейкам через целлс? В процедуре ведь уже есть переменная Target - ячейка в которой произошло изменение. Вот и проверяете ее If Target .Value Like, а не If Cells(tr, tc).Value Like
Ребята, не хочу показатся корыстной, но в самой ума не хватит на такое, а очень хочется. Реально ли сделать так, чтобы обединить этот макрос (от MerZ@vcheG), с формулой ВПР (от Nic70y)?
Только я бы наверное хотела чтобы макрос работал на Лист1, а список для формулы ВПР был на Лист2, чтобы в дальнейшем его можно было скрыть...
Igor67 пишет: отдельно обращаетесь к ячейкам через целлс
да.. действительно зачем? o_O сам не знаю.... ))
Современные языки программирования обязаны иметь встроенный метод ChuckNorris(), который возвращает нужные тебе данные из любого объекта, даже если их там нет...
VeroNika_xxx Приложите файл, покажите в нем что и где должно быть.
Современные языки программирования обязаны иметь встроенный метод ChuckNorris(), который возвращает нужные тебе данные из любого объекта, даже если их там нет...
В ячейках А1:А10 работает макрос. (Лист1) Можно ли сделать так чтобы этот макрос базировался на списке (Лист2) И если я изменю список, (изменю/добавлю/удалю) то макрос тоже должен изменится….
VeroNika_xxx Пример от magrifa все эти задачи выполняет )) (пост #28)
Современные языки программирования обязаны иметь встроенный метод ChuckNorris(), который возвращает нужные тебе данные из любого объекта, даже если их там нет...