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

Вход

Регистрация

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

 

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

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Адрес ячейки с переменной (Макросы Sub)
Адрес ячейки с переменной
Cudass Дата: Среда, 25.09.2013, 05:50 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 19
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Добрый день.
Наверное сразу оговорюсь что я новичек в среде VBA, VB проходили в базовом курсе института, но мало что помнится ))
В общем тут такой момент. По работе нужно сделать пару макросов, но они все однотипные.
Итак нужно расчитать число по формуле =D10-(D10*10%)-(E10*1,5%) и занести его в С10. Но при условии что в А10 находится определенный текст. Быстренько накидал примерный код:[vba]
Код

Sub macros1()
Dim i As Long
For i = 2 To 2000
If Cells(i, 1).Text = "Вывоз и утилизация ТБО" Then
Cells(i, 3).FormulaLocal = "=D10-(D10*10%)-(E10*1,5%)"
End If
Next i
End Sub
[/vba]Собственно вот в чем вопрос, как внедрить переменную вместо D10 и Е10 и т.д. ибо записей очень много


Сообщение отредактировал Cudass - Среда, 25.09.2013, 05:51
 
Ответить
СообщениеДобрый день.
Наверное сразу оговорюсь что я новичек в среде VBA, VB проходили в базовом курсе института, но мало что помнится ))
В общем тут такой момент. По работе нужно сделать пару макросов, но они все однотипные.
Итак нужно расчитать число по формуле =D10-(D10*10%)-(E10*1,5%) и занести его в С10. Но при условии что в А10 находится определенный текст. Быстренько накидал примерный код:[vba]
Код

Sub macros1()
Dim i As Long
For i = 2 To 2000
If Cells(i, 1).Text = "Вывоз и утилизация ТБО" Then
Cells(i, 3).FormulaLocal = "=D10-(D10*10%)-(E10*1,5%)"
End If
Next i
End Sub
[/vba]Собственно вот в чем вопрос, как внедрить переменную вместо D10 и Е10 и т.д. ибо записей очень много

Автор - Cudass
Дата добавления - 25.09.2013 в 05:50
KuklP Дата: Среда, 25.09.2013, 07:07 | Сообщение № 2
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
Код
"=RC[1]-(RC[1]*10%)-(RC[2]*1.5%)"
А еще я бы не перебирал в цикле ячейки, а использовал бы метод range.find или формулу листа match.


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728
 
Ответить
Сообщение
Код
"=RC[1]-(RC[1]*10%)-(RC[2]*1.5%)"
А еще я бы не перебирал в цикле ячейки, а использовал бы метод range.find или формулу листа match.

Автор - KuklP
Дата добавления - 25.09.2013 в 07:07
Cudass Дата: Среда, 25.09.2013, 08:06 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 19
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
KuklP, спасибо большое )) пробовал этот вариант но, забыл указать .FormulaR1C1, теперь же всё хорошо ! ещё раз спасибо !
 
Ответить
СообщениеKuklP, спасибо большое )) пробовал этот вариант но, забыл указать .FormulaR1C1, теперь же всё хорошо ! ещё раз спасибо !

Автор - Cudass
Дата добавления - 25.09.2013 в 08:06
KuklP Дата: Среда, 25.09.2013, 08:17 | Сообщение № 4
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
Не обязательно. Так тоже работает, можете убедиться:
[vba]
Код
[c10].Formula = "=RC[1]-(RC[1]*10%)-(RC[2]*1.5%)"
[/vba]


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728
 
Ответить
СообщениеНе обязательно. Так тоже работает, можете убедиться:
[vba]
Код
[c10].Formula = "=RC[1]-(RC[1]*10%)-(RC[2]*1.5%)"
[/vba]

Автор - KuklP
Дата добавления - 25.09.2013 в 08:17
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Адрес ячейки с переменной (Макросы Sub)
  • Страница 1 из 1
  • 1
Поиск:

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