Я хочу выполнить простой расчет в другой ячейке, основанной на ключевом слове в строке из другой ячейки. Например, столбец H может иметь описание в соответствии с «Покупка 50 000 акций». Я хочу, чтобы несколько столбцов B на -1, если появилось слово Purchase. Возможно ли построить условие с ключевым словом в строке?Excel VBA вычисляет одну ячейку на основе строки из другой
1
A
ответ
0
Вы можете сделать это в формуле или VBA.
В формуле, скажем, B1 имел содержание X до, изменить формулы = (X) * IF (ISNUMBER (SEARCH ("Покупка", H1)), -1, 1)
В VBA попробуйте это
Sub NegateB_IfPurchaseH()
Dim celB As Range
Dim celH As Range
Dim celPtr As Range
' you can change 1:10 to any other range
Set celB = Range("B1:B10")
Set celH = celB.Cells(1, 7)
For Each celPtr In celB
If InStr(1, celPtr.Cells(1, 7).Value, "purchase", vbTextCompare) > 0 Then
celPtr.Formula = "=-" & Mid(celPtr.Formula, 2)
End If
Next
End Sub
+0
В итоге я использовал формулу. Я не очень хорошо знаком с vba, и я не совсем понимаю, что происходит в инструкции For. Вам нужно пройти это медленнее и разобрать. Спасибо за помощь! – TomC
Смежные вопросы
- 1. Получить одну ячейку из пройденного столбца/строки/диапазона VBA Excel
- 2. VBA/Excel: Получить ячейку из другой лист
- 3. Excel Выделите одну строку на основе другой
- 4. Excel VBA: вставьте ячейку в таблицу из другой таблицы
- 5. VBA Excel копирует строки на основе столбца
- 6. Excel VBA Скопируйте ячейку на другой лист, сохраняя гиперссылку
- 7. VBA вычисляет строку как формулу в Excel
- 8. Объединить строки в одну ячейку
- 9. Excel VBA назначает гиперссылку на ячейку
- 10. Excel - разблокировать ячейку на основе ответа другой ячейки
- 11. Ссылка на ячейку на основе ссылки на ячейку другой ячейки
- 12. Вывод элементов массива VBA в одну ячейку в Excel
- 13. Вставить текст в ячейку Excel на основе содержимого другой ячейки
- 14. Установить ячейку в решателе VBA, изменив более чем одну ячейку?
- 15. Очистить ячейку excel с помощью кода vba
- 16. Добавление строки данных Excel в одну ячейку, которая целиком основана на значении другой ячейки
- 17. Excel VBA Получатель Добавить на соответствующую ячейку
- 18. Ссылка на активную ячейку в Excel VBA
- 19. Как обновить одну ячейку, используя событие onChange из другой ячейки?
- 20. Excel, разделил одну ячейку на другие определенные ячейки на основе значения из первой ячейки
- 21. Выберите одну ячейку из диапазона или selectoin
- 22. Excel VBA не нашел ячейку
- 23. Excel - формула или макрос для заполнения ячейки на основе другой ячейки, которая ссылается на еще одну ячейку
- 24. Excel добавление нескольких чисел в одну ячейку
- 25. Excel вставить значение в одну ячейку вниз
- 26. Excel добавляет значения в одну ячейку на основе результатов mutliple от одного значения поиска
- 27. Для каждой петли пропускает одну ячейку VBA
- 28. Назначить ячейку на основе результата другой формулы
- 29. Excel, VBA и движущиеся строки
- 30. Скопируйте одну ячейку из листа на другой рабочий лист с помощью VBA
В VBA? Вы можете использовать 'Like' или' Instr' для тестирования «покупки». –
Возможная формула может быть '= IF (IFERROR (FIND (« Покупка », H1), 0)> 0, -1,1) * B1'. (Ой, просто заметил тег 'excel-vba', поэтому, я думаю, вы не после формулы.) – YowE3K