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

Вход

Регистрация

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

 

= Мир MS Excel/Переделать Формулу в код - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Переделать Формулу в код (Макросы/Sub)
Переделать Формулу в код
Boris_krd Дата: Вторник, 22.03.2016, 14:18 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Добрый День!

Не силен в vba, но задача по моему мнению может решиться только программно.
Ситуация следующая, есть формула
Код
=ИНДЕКС(Товары!A:A;ПОИСКПОЗ(B4;Товары!A:A;0)+1;1)

При нажатии на кнопку, код должен сработать и записать только получившееся значение в определенную ячейку. Это нужно для того, что бы можно было просто изменить значение ручками или перейти к следующемe в списке.
Как-то так. Как перегнать в vba не знаю. Может у кого-нибудь есть решение данной проблемы или ссылки на похожие. Облазил все, подходящего ничего не нашел.
Заранее спасибо!
Прикладываю файл!
[moder]Для оформления формулы нужно сначала ее выделить а потом нажать на fx.
На первый раз поправил за Вас[/moder]
К сообщению приложен файл: 3125698.xlsx(34Kb)


Сообщение отредактировал SLAVICK - Вторник, 22.03.2016, 14:33
 
Ответить
СообщениеДобрый День!

Не силен в vba, но задача по моему мнению может решиться только программно.
Ситуация следующая, есть формула
Код
=ИНДЕКС(Товары!A:A;ПОИСКПОЗ(B4;Товары!A:A;0)+1;1)

При нажатии на кнопку, код должен сработать и записать только получившееся значение в определенную ячейку. Это нужно для того, что бы можно было просто изменить значение ручками или перейти к следующемe в списке.
Как-то так. Как перегнать в vba не знаю. Может у кого-нибудь есть решение данной проблемы или ссылки на похожие. Облазил все, подходящего ничего не нашел.
Заранее спасибо!
Прикладываю файл!
[moder]Для оформления формулы нужно сначала ее выделить а потом нажать на fx.
На первый раз поправил за Вас[/moder]

Автор - Boris_krd
Дата добавления - 22.03.2016 в 14:18
SLAVICK Дата: Вторник, 22.03.2016, 14:38 | Сообщение № 2
Группа: Модераторы
Ранг: Старожил
Сообщений: 1836
Репутация: 613 ±
Замечаний: 0% ±

2007,2010,2013,2016
Из Вашего примера - не понял какую ячейку нужно менять, поэтому вот:
[vba]
Код
Sub d()
Cells(1, "a").Value = Cells(1, "a").Value
End Sub
[/vba]
Где вместо Cells(1, "a") впишите нужную ячейку.


Иногда все проще чем кажется с первого взгляда.

Сообщение отредактировал SLAVICK - Вторник, 22.03.2016, 14:39
 
Ответить
СообщениеИз Вашего примера - не понял какую ячейку нужно менять, поэтому вот:
[vba]
Код
Sub d()
Cells(1, "a").Value = Cells(1, "a").Value
End Sub
[/vba]
Где вместо Cells(1, "a") впишите нужную ячейку.

Автор - SLAVICK
Дата добавления - 22.03.2016 в 14:38
Boris_krd Дата: Вторник, 22.03.2016, 14:45 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Ячейка "E1" на Лист2, попытался вставить не работает

Спасибо, что исправили


Сообщение отредактировал Boris_krd - Вторник, 22.03.2016, 14:46
 
Ответить
СообщениеЯчейка "E1" на Лист2, попытался вставить не работает

Спасибо, что исправили

Автор - Boris_krd
Дата добавления - 22.03.2016 в 14:45
SLAVICK Дата: Вторник, 22.03.2016, 14:51 | Сообщение № 4
Группа: Модераторы
Ранг: Старожил
Сообщений: 1836
Репутация: 613 ±
Замечаний: 0% ±

2007,2010,2013,2016
Ячейка "E1" на Лист2

Так у Вас там и так значение:
Вставил формулу - циклическая ссылка.
вот для Е1:
[vba]
Код
Sub d()
Cells(1, "e").Value = Cells(1, "e").Value
End Sub
[/vba]
К сообщению приложен файл: 3125698-2-.xlsm(41Kb)


Иногда все проще чем кажется с первого взгляда.
 
Ответить
Сообщение
Ячейка "E1" на Лист2

Так у Вас там и так значение:
Вставил формулу - циклическая ссылка.
вот для Е1:
[vba]
Код
Sub d()
Cells(1, "e").Value = Cells(1, "e").Value
End Sub
[/vba]

Автор - SLAVICK
Дата добавления - 22.03.2016 в 14:51
Boris_krd Дата: Вторник, 22.03.2016, 14:55 | Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Да, понял так не получится.
А может подскажите как можно сделать переход к след. значению в диапазоне Товары!А:А
Что бы это значение вписывалось в E1 на листе 2

Я поэтому и спрашиваю, можно ли эту формулу перенести в код, что бы не было циклических ячеек


Сообщение отредактировал Boris_krd - Вторник, 22.03.2016, 15:00
 
Ответить
СообщениеДа, понял так не получится.
А может подскажите как можно сделать переход к след. значению в диапазоне Товары!А:А
Что бы это значение вписывалось в E1 на листе 2

Я поэтому и спрашиваю, можно ли эту формулу перенести в код, что бы не было циклических ячеек

Автор - Boris_krd
Дата добавления - 22.03.2016 в 14:55
SLAVICK Дата: Вторник, 22.03.2016, 15:12 | Сообщение № 6
Группа: Модераторы
Ранг: Старожил
Сообщений: 1836
Репутация: 613 ±
Замечаний: 0% ±

2007,2010,2013,2016
А может подскажите как можно сделать переход к след. значению в диапазоне Товары!А:А

Так сразу и нужно было спросить:
[vba]
Код
Sub d()
    With Sheets(1)
    Cells(1, "e").Value = .Columns("A:A").Find(What:=Cells(1, "e").Value, After:=.Cells(1, 1)).Offset(1, 0).Value
    End With
End Sub
[/vba]
К сообщению приложен файл: 4036164.xlsm(43Kb)


Иногда все проще чем кажется с первого взгляда.
 
Ответить
Сообщение
А может подскажите как можно сделать переход к след. значению в диапазоне Товары!А:А

Так сразу и нужно было спросить:
[vba]
Код
Sub d()
    With Sheets(1)
    Cells(1, "e").Value = .Columns("A:A").Find(What:=Cells(1, "e").Value, After:=.Cells(1, 1)).Offset(1, 0).Value
    End With
End Sub
[/vba]

Автор - SLAVICK
Дата добавления - 22.03.2016 в 15:12
KuklP Дата: Вторник, 22.03.2016, 15:14 | Сообщение № 7
Группа: Проверенные
Ранг: Старожил
Сообщений: 1996
Репутация: 436 ±
Замечаний: 0% ±

М-да, неправильно понял..


Ну, с НДС и мы чего-то стoим! kuklp@mail.ru
WM Z206653985942, R334086032478, U238399322728


Сообщение отредактировал KuklP - Вторник, 22.03.2016, 15:19
 
Ответить
СообщениеМ-да, неправильно понял..

Автор - KuklP
Дата добавления - 22.03.2016 в 15:14
AlexMen Дата: Вторник, 22.03.2016, 15:16 | Сообщение № 8
Группа: Заблокированные
Ранг: Участник
Сообщений: 66
Репутация: 4 ±
Замечаний: 100% ±

Excel 2010
последняя ячейка

[vba]
Код
лист = Ваш лист
Лист.Cells(Лист.Rows.Count, 5).End(xlUp).Row
[/vba]


lebensvoll отпишите на почту, а то меня _Boroda_ забанил, я Вам функцию сброшу
 
Ответить
Сообщениепоследняя ячейка

[vba]
Код
лист = Ваш лист
Лист.Cells(Лист.Rows.Count, 5).End(xlUp).Row
[/vba]

Автор - AlexMen
Дата добавления - 22.03.2016 в 15:16
Boris_krd Дата: Вторник, 22.03.2016, 15:54 | Сообщение № 9
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
SLAVICK Спасибо большое!!!!!
То что прям и нужно было, я прям очень рад, спасибо!!!!!!!!!!
 
Ответить
СообщениеSLAVICK Спасибо большое!!!!!
То что прям и нужно было, я прям очень рад, спасибо!!!!!!!!!!

Автор - Boris_krd
Дата добавления - 22.03.2016 в 15:54
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Переделать Формулу в код (Макросы/Sub)
Страница 1 из 11
Поиск:

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